我只是將現有應用程式從 ionic4/Angular8/cordova8 升級到 ionic6/angular14/cordova10。
在構建程序中我沒有收到任何錯誤。
升級后,我在使用 android 8 的平板電腦上檢查 apk,一切正常(我可以訪問網路)。但是 ii 在 Android 9 設備上測驗 APK,我無法訪問 API(無法訪問網路)。
最舊的版本使用cordova-plugin-whitelist,但我需要將其洗掉以構建新應用程式,我讀到白名單不適用于cordova > 10.x
我驗證生成的 AndroidManifest.xml 并包含<uses-permission android:name="android.permission.INTERNET" />
API 使用 CORS 和 HTTPS 協議,所以看起來不是 API 問題。
package.json:https ://pastebin.com/szdcgP0W
config.xml:https ://pastebin.com/rGnVc89U
生成的 AndroidManifest.xml :https ://pastebin.com/fSc5UaqM
我也嘗試再次添加 cordova-plugin-whitelist 但沒有效果。
我不明白為什么我沒有網路訪問權限,有什么想法嗎?
編輯 1:
有兩個額外的問題:
- 應用程式呼叫的 API 在 9025 埠上回應 HTTPS 協議。這是安卓的問題嗎?是否有授權非標準埠的附加權限?
- 我將 API 的證書更改為 let'encrypt 證書。let'sencrypt 證書可能存在問題嗎?
uj5u.com熱心網友回復:
我通過將此基本配置添加到我的network-security-config:
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/515767.html
上一篇:Ioniccordova應用程式無法正確安裝到Android設備
下一篇:升級到cordova-android11:插件cordova-plugin-local-notification將不再作業
