我正在使用 React Native 0.61 (CLI)构建Android应用 并在此处使用常见的MQTT.js软件包:https://www.npmjs.com/package/mqtt (v.3.0.0)
这是我的 build.gradle
buildToolsVersion = "28.0.3"
minSdkVersion = 25
compileSdkVersion = 28
targetSdkVersion = 28
supportLibVersion = "28.0.0"
我使用 WebSocket 协议连接到自己的mqtt代理。
在调试模式下,所有功能均可在任何手机上完美运行。但是很奇怪,当我通过命令释放APK ( gradlew assembleRelease (已签名)),它无法连接到Android 9+(两个模拟器)上的代理(Android 8运行良好)
编译为本机代码时似乎出现了问题。
答案 0 :(得分:2)
可能是因为从Andoird 9开始不允许使用HTTP默认设置。您可以在AndroidMainfest.xml中添加以下内容。
<application
android:usesCleartextTraffic="true"
您还可以使用配置XML。为此,您可以看到此blog