0

Android Cordova Debug Build 在 Nexus 5X, 7.1.1 上运行良好,但是无法在 Release(Signed) Build 上发出任何 ajax 请求。

尝试使用插件从本机代码进行通信,连接成功

该问题仅在 Nexus 5X、7.1.1 中出现,在其他设备上不会出现。

权限

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

config.xml 中的白名单插件:

<feature name="Whitelist">
        <param name="android-package" value="org.apache.cordova.whitelist.WhitelistPlugin" />
        <param name="onload" value="true" />
    </feature>

甚至在 ChromeWebViewImpl.java 中使用日志进行了测试

当请求 shouldAllow 时返回 true

太阳能电池板:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *; connect-src https://mysubdomain.mydomain.com">

请注意,CSP 适用于除 Nexus 5X 7.1.1 之外的所有 Android、iOS 设备,我什至尝试删除 connect-src,但结果相同。

有没有人遇到过类似的问题?

4

1 回答 1

1

问题在于 WebView 版本 53 和赛门铁克证书的使用。

它是 Chrome 版本 53 中的一个错误

https://knowledge.symantec.com/support/ssl-certificates-support/index?page=content&id=ALERT2160

从 playstore 更新您的 Chrome 版本,您将不会遇到此问题,它与白名单插件无关。

于 2017-04-17T05:17:18.560 回答