升级到Cordova Android 8.0后,尝试连接到net::ERR_CLEARTEXT_NOT_PERMITTED目标时看到http://错误。

为什么会这样,我该如何解决呢?

最佳答案

Cordova Android平台中的默认API级别已升级。在Android 9设备上,明文通信现在为disabled by default

要再次允许明文通信,请将android:usesCleartextTraffic标记上的application设置为true:

<platform name="android">
  <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
      <application android:usesCleartextTraffic="true" />
  </edit-config>
</platform>

如注释中所述,如果您之前未定义android XML命名空间,则在构建过程中将收到error: unbound prefix。这表明您需要将其添加到相同widgetconfig.xml标记中,如下所示:

<widget id="you-app-id" version="1.2.3"
xmlns="http://www.w3.org/ns/widgets"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:cdv="http://cordova.apache.org/ns/1.0">

10-08 06:02
查看更多