我正在为iOS和Android开发(和即将发布)Cordova应用。
我正在尝试使用cordova-plugin-ionic-webview来使用最新的WebView引擎。
我可以在iOS上使用此插件,但在Android上,该应用在启动时崩溃。
我的CONFIG.XML:
<allow-navigation href="cordovaios://*" />
<allow-navigation href="cordovaandroid://*" />
<plugin name="cordova-plugin-ionic-webview" spec="^4.0.0">
<variable name="ANDROID_SUPPORT_ANNOTATIONS_VERSION" value="27.+" />
</plugin>
<preference name="Hostname" value="my-backend-url-to-avoid-CORS.com" />
<preference name="iosScheme" value="cordovaios" />
<preference name="Scheme" value="cordovaandroid" />
<preference name="ScrollEnabled" value="true" />
<preference name="MixedContentMode" value="0" />
<preference name="AllowBackForwardNavigationGestures" value="true" />
<preference name="Allow3DTouchLinkPreview" value="false" />
<preference name="WKSuspendInBackground" value="false" />
<preference name="KeyboardAppearanceDark" value="false" />
日志:
5726-5770 / mycertificate.enterprise D / SERVER:处理本地请求:cordovaandroid://my-backend-url-to-avoid-CORS.com/static/js/10.601e7973.chunk.js
5726-5773 / mycertificate.enterprise E / chromium:[错误:render_process_host_impl.cc(4070)]终止错误的Mojo消息的呈现过程:收到错误的用户消息:来源无效
5726-5773 / mycertificate.enterprise E / chromium:[ERROR:bad_message.cc(23)]终止IPC消息错误的渲染器,原因123
注意:
此配置在iOS上正常运行。在Android上,由于此主机名/来源问题,我无法使用此插件。
答案 0 :(得分:2)
该自定义方案似乎不受支持(只需尝试在source code中找到类似的内容)。这也超出了我的理解范围,甚至在不离开WebView
的同时,甚至需要注册一个自定义协议处理程序的人是什么?通常的目的是:打开另一个应用程序。
<preference name="Scheme" value="https" />
<allow-navigation href="https://my-backend-url-to-avoid-CORS.com/*"/>
答案 1 :(得分:0)
不幸的是,Cordova Android平台版本和插件版本之间存在许多不匹配的地方,这导致一些时间的浪费。这么说,对于类似这样的问题,我只是将其降级为Cordova或Android或插件的版本(或使用该插件在其代码示例中使用的同一版本的android)进行修复。