我正在嘗試遷移我的移動應用程式(使用 Cordova 和 AngularJS 開發,適用于 Android 和 iOS 平臺),但從 API 29 到 API 30 有一些問題。在我的應用程式中,我從 REST 服務下載了一個帶有分離圖片的 JSON 目錄(JPG格式),我存盤在資料目錄(cordova.file.dataDirectory)。使用 API 設定為 29 的應用程式構建運行良好,下載圖片并將它們顯示在 HTML 頁面中(使用 AngularJS 更新)。但是,如果我嘗試在 API 設定為 30 的情況下構建它,該應用程式會繼續作業(它會正確下載資料目錄中的 json 和 jpg 檔案),但不會顯示存盤在該目錄中的圖片。我還嘗試使用所有更新的組件(Cordova 10.0.0、Android 平臺 10.0.0、插件等)創建一個新的簡單移動應用程式,但我獲得了相同的行為并且無法解決此問題。
使用 API 29 構建資訊應用程式
Cordova v8.1.2
安卓平臺 v8.0.0
使用 API 30 構建資訊應用程式
Cordova v10.0.0
安卓平臺 v10.0.0
插件串列
cordova-plugin-android-permissions 1.0.2“權限”
cordova-plugin-camera 4.1.0“Camera”
cordova-plugin-compat 1.2.0“Compat”
cordova-plugin-datepicker 0.9.3“DatePicker”
cordova-plugin-設備 2.0.3“設備”
cordova-plugin-dialogs 2.0.2“通知”
cordova-plugin-file 6.0.2“檔案”
cordova-plugin-file-hash 0.4.1“FileHash”
cordova-plugin-filepath 1.5.8 “cordova-plugin-filepath”
cordova-plugin-geolocation 4.0.2 “Geolocation”
cordova-plugin-globalization 1.11.0 “Globalization”
cordova-plugin-inappbrowser 3.2.0 “InAppBrowser”
cordova-plugin-network-information 2.0.2 ”網路資訊"
cordova-plugin-sign-in-with-apple 0.1.2"cordova-plugin-sign-in-with-apple"
cordova-plugin-splashscreen 5.0.3“Splashscreen”
cordova-plugin-statusbar 2.4.3“StatusBar”
cordova-plugin-whitelist 1.3.4“Whitelist”
cordova-plugin-wkwebview-engine 1.2.1“Cordova WKWebView Engine”
cordova- plugin-wkwebview-file-xhr 2.1.4 “Cordova WKWebView 檔案 XHR 插件”
cordova-sqlite-storage 5.0.0 “Cordova s??qlite 存盤插件-cordova-sqlite-storage 插件版本”
ionic-plugin-keyboard 2.2.1 “鍵盤”
phonegap-plugin-mobile-accessibility 1.0.5-dev“移動輔助功能”
uj5u.com熱心網友回復:
嘗試添加到您的配置
<preference name="AndroidInsecureFileModeEnabled" value="true" />
uj5u.com熱心網友回復:
Eric 建議的設定可能適合您,但不建議這樣做。新的cordova-android 版本使用名為WebViewAssetLoader 的API 以正確的http(s) 方案而不是file: 加載您的應用程式。我懷疑您在下載資料時遇到 CORS 問題。
閱讀有關 Cordova 中 WebViewAssetLoader 的更多資訊:https ://cordova.apache.org/announcements/2021/07/20/cordova-android-10.0.0.html
更好的方法是找出合適的 CORS 并且不使用不安全的設定。您應該找到大量有關 CORS 的資源。如果您需要幫助,請回復。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/315402.html
標籤:安卓 科尔多瓦 数据目录 android-api-30
