App works in Android and IOS Simulator but not after release(应用程序在Android和iOS模拟器中可用,但在发布后不起作用)
本文介绍了应用程序在Android和iOS模拟器中可用,但在发布后不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问题
我创建了一个App,它是一个MQTT代理客户端。当我使用iOS/Android模拟器进行开发时,我与Broker的连接工作正常。然而,当我发布一个apk版本时,我的应用程序无法连接。它有套接字问题(AMQJS0007E套接字错误:未定义)。
我已经尝试过此解决方案github solution
屏幕截图
应用程序在模拟器中运行
[]
正在运行的应用程序发布版本
[]
this.client.connect({
timeout: 10,
onSuccess: () => {
this.isConnected = true;
onSuccessHandler();
},
useSSL: false,
onFailure: this.onFailure,
reconnect: true,
keepAliveInterval: 20,
cleanSession: true,
});
推荐答案
您需要修改才能添加新文件res/xml/network_security_config.xmlAndroid:无法向服务器发送数据。明文通信至 网络安全策略不允许。
从Android 9(API级别28)开始,禁用明文支持 默认情况下。*
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">test.mosquitto.org</domain>
</domain-config>
</network-security-config>
然后修改您的AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
<application
...
android:networkSecurityConfig="@xml/network_security_config"
...>
...
</application>
</manifest>
这篇关于应用程序在Android和iOS模拟器中可用,但在发布后不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:应用程序在Android和iOS模拟器中可用,但在发布后不起作用
基础教程推荐
猜你喜欢
- 带角度的选项卡:仅使用 $http 在单击时加载选项卡 2022-01-01
- 从快速中间件中排除路由 2022-01-01
- 逻辑运算符 ||在 javascript 中,0 代表 Boolean false? 2022-01-01
- 在 Javascript 中使用 Fetch API 上传文件并显示进度 2022-01-01
- 即使每次插入第一个输入的值不同,第二个输入仍显示相同的输入值 2022-01-01
- 使用 jQuery 在悬停时交换 DIV 类 2022-01-01
- HTML5 画布调整为父级 2022-01-01
- 当木偶师打开Chrome时,不能使用Chrome扩展 2022-01-01
- CORS:当凭据标志为真时,无法在 Access-Control-Allow-Origin 中使用通配符 2022-01-01
- 最佳动态 JavaScript/JQuery 网格 2022-01-01
