這里先引入兩篇文章:
? ?? ??[?1、Android網絡編程——https 不驗證證書方式(信任所有證書)](http://blog.csdn.net/xyz_lmn/article/details/8027334)
? ? ? ?[?2、Android: Trusting SSL certificates](http://blog.csdn.net/xyz_lmn/article/details/6312827)
? ? ? ?android中實現Https基本就這兩種方式,一種是不驗證證書,一種是有驗證證書(預防釣魚)。
? ? ? ?第二種方式實現復雜一些,需要將cer證書轉換成BKS類型。這種方式也只能簡單的防止釣魚,不能有效的防止釣魚。防止釣魚最終還是靠用戶分辨,在正規渠道下載應用。應用證書也能起到驗證客戶端的功能,個人認為使用證書驗證客戶端不合適,如果使用證書驗證客戶端,證書必須存放在應用程序中或使用時下載,android應用都是一個apk文件,很容易獲取到里面的文件,如果是下載方式,更容易通過下載地址獲取。如果想驗證客戶端的話,個人認為使用so文件封裝數據更好時。
? ? ? ?我們的手機很多時候使用公用wifi上網,這時我們的數據是暴漏了,這是的數據傳輸是非常危險的,用戶的隱私數據很容易被第三方獲取到,android客戶端中使用https能有效的防止數據暴漏,防止第三方截獲應用的通信數據。