背景是app中使用的檔案下載下傳是采用系統DownloadManager,但沒有發現此類中如何配置不校驗ssl或者配置在定義證書校驗,故發現通過網絡安全性配置來解決。即配置AndroidManifest.xml中的NetworkSecureConfig來解決。
把自定義的CA憑證放到raw目錄下;網絡安全配置檔案放到xml目錄下;
如圖:

image.png
CA憑證是配置在伺服器上的ca證書
network_security_config.xml内容如下:
在AndroidMinifest.xml檔案中配置
android:name="xxx"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:networkSecurityConfig="@xml/network_security_config">
對于伺服器自定義https證書的話,此方法解決還是不錯的。
如果使用Okhttp庫進行下載下傳,則可以在Okhttp通過配置socketFactory的途徑來解決受信問題。
[參考連結]
網絡安全配置