【问题标题】:Android Cordova, why can't I access a source image file using this code anymore?Android Cordova,为什么我不能再使用此代码访问源图像文件?
【发布时间】:2023-01-09 18:54:44
【问题描述】:

以下 JavaScript 代码来自我在 Android 13 上的 Cordova Android 应用程序(在 Web 视图中运行)

var redIcon = L.icon({                                
                iconUrl: 'file:///android_asset/www/lib/images/marker-red-small.png',                           
                iconSize:     [40, 40]
            });

失败并在控制台中触发此消息:

Not allowed to load local resource: file:///android_asset/www/lib/images/marker-red-small.png

我不明白的是,相同的代码用于以前版本的 Android(如果我没记错的话,至少是版本 8 和 9)

【问题讨论】:

    标签: javascript android cordova


    【解决方案1】:

    “该方案,https,本质上是不可配置的。

    请注意,这是一项重大更改,将导致与 file:// 方案相关的数据丢失,例如 cookie、本地存储、本地缓存和基于 Web 的数据库。您将需要处理数据的迁移。如果您此时无法迁移数据,您可以通过设置 AndroidInsecureFileModeEnabled 首选项标志来恢复此设置。

    <preference name="AndroidInsecureFileModeEnabled" value="true" />
    

    设置此标志将保留 file:// 方案中的内容,Google 报告该方案不安全。”

    查看 Cordova-android 10 的更新文档:https://cordova.apache.org/announcements/2021/07/20/cordova-android-10.0.0.html

    我认为是上面的偏好,不是100%确定。但如果没有,更新文档应该可以进一步帮助您。

    【讨论】:

      猜你喜欢
      • 2020-10-07
      • 2019-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-10
      • 2016-11-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多