cordova-plugin-ionic-webview - 自定义方案在Android上不起作用



我正在开发(并且即将发布(适用于iOS和Android的Cordova应用程序。

我正在尝试使用cordova-plugin-ionic-webview来使用最新的WebView引擎。

我可以在iOS上使用此插件,但在Android上,该应用程序在启动时崩溃。

我的配置.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: [错误:bad_message.cc(23(] 终止呈现器,导致 IPC 消息错误,原因 123

注意:

此配置在iOS上工作正常。在Android上,由于此主机名/来源问题,我无法使用此插件。

该自定义方案似乎不受支持(只需尝试在源代码中找到类似的东西(。这也超出了我的理解,因为甚至需要注册自定义协议处理程序,同时永远不会离开那个WebView?通常的目的是:打开另一个应用程序。

<preference name="Scheme" value="https" />
<allow-navigation href="https://my-backend-url-to-avoid-CORS.com/*"/>

不幸的是,CordovaAndroid平台版本和插件版本之间存在很多不匹配,这导致浪费时间。话虽如此,对于类似的问题,我只是修复了它们,降级了 Cordova 或 Android 或插件的版本(或使用插件在其代码示例中使用的相同版本的 android(。

在配置中.xml尝试添加:

<allow-navigation href="*"/>

后:

<preference name="Scheme" value="https" />
<preference name="hostname" value="mobile.*.yourdomain.com" />

最新更新