Nativescript WebView on Android API 30 yields ERR_ACCESS_DENIED(Android API 30上的Nativescript WebView生成ERR_ACCESS_DENIED)
问题描述
我有一个NativeScript 6.8 JavaScript应用程序,它使用WebView显示在该应用程序中编写的引用本地图像文件的html字符串。Google Play商店强制我支持API 30,当我这样做时,WebView失败并显示
net::ERR_ACCESS_DENIED(-1)
我发现this post建议我修改Android WebView的一些访问设置,使我的代码现在看起来如下所示
AndroidManifest.xml:
<application
...
android:usesCleartextTraffic="true">
xml:
<GridLayout>
<WebView id="annbyday" loadFinished="onLoadFinished" src="{{ htmlsrcForDay }}" />
</GridLayout>
js:
exports.onLoadFinished = function (args) {
if (args.object.android) {
if (!args.error) {
let webView = args.object.android;
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setAllowContentAccess(true);
console.log("announce-page.onLoadFinished: settings set");
} else {
console.warn("announce-page.onLoadFinished: " + args.error);
}
}
}
当我运行此命令时,在控制台中收到以下消息:
JS: announce-page.onLoadFinished: settings set
JS: announce-page.onLoadFinished: net::ERR_ACCESS_DENIED(-1)
JS: announce-page.onLoadFinished: net::ERR_ACCESS_DENIED(-1)
JS: announce-page.onLoadFinished: settings set
第一次导航到该页面时,会显示Android错误屏幕。但是,如果我重新导航到该页面,我得到的只是";settings set";消息,并且html显示正确。 好像设置起作用了,但是设置得不够快。将代码移动到LoadStarted事件没有任何效果。
我觉得我快到了;欢迎任何帮助。
WebView
我将代码移到页面的已加载事件处理程序中,现在一切都按预期工作,并且我根本不使用推荐答案的loadStarted或LoadFinded事件。最后的代码是
exports.onLoaded = function (args) {
const page = args.object;
const webView = page.getViewById("<WebView id>");
if (webView.android) {
let setter = webView.android.getSettings();
setter.setAllowFileAccess(true);
setter.setAllowContentAccess(true);
}
这篇关于Android API 30上的Nativescript WebView生成ERR_ACCESS_DENIED的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Android API 30上的Nativescript WebView生成ERR_ACCESS_DENIED


- android 4中的android RadioButton问题 2022-01-01
- 在测试浓缩咖啡时,Android设备不会在屏幕上启动活动 2022-01-01
- 如何检查发送到 Android 应用程序的 Firebase 消息的传递状态? 2022-01-01
- 使用自定义动画时在 iOS9 上忽略 edgesForExtendedLayout 2022-01-01
- MalformedJsonException:在第1行第1列路径中使用JsonReader.setLenient(True)接受格式错误的JSON 2022-01-01
- Android - 拆分 Drawable 2022-01-01
- 用 Swift 实现 UITextFieldDelegate 2022-01-01
- Android - 我如何找出用户有多少未读电子邮件? 2022-01-01
- Android viewpager检测滑动超出范围 2022-01-01
- 想使用ViewPager,无法识别android.support.*? 2022-01-01