应用程序可以在 Android 和 IOS 模拟器中运行,但在发布后不能运行

2024-01-06

Problem

我创建了一个应用程序,它是 MQTT 代理客户端。当我使用 iOS/Android 模拟器进行开发时,我与代理的连接工作正常。但是,当我发布 apk 版本时,我的应用程序无法连接。它有套接字问题(AMQJS0007E 套接字错误:未定义)。

我已经尝试过这个解决方案github解决方案 https://github.com/eclipse/paho.mqtt.javascript/issues/99%5D

截屏

应用程序在模拟器中运行

[wide demo pic]

应用发布版本运行

[wide demo pic]

this.client.connect({
    timeout: 10,
      onSuccess: () => {
        this.isConnected = true;
    
        onSuccessHandler();
      },
    
      useSSL: false,
    
      onFailure: this.onFailure,
    
      reconnect: true,
    
      keepAliveInterval: 20,
    
      cleanSession: true,

});


Android:无法向服务器发送数据。明文通信至 网络安全策略不允许。

从 Android 9(API 级别 28)开始,禁用明文支持 默认情况下。* https://developer.android.com/training/articles/security-config#CleartextTrafficPermitted

需要修改添加新文件res/xml/network_security_config.xml

<?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>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

应用程序可以在 Android 和 IOS 模拟器中运行,但在发布后不能运行 的相关文章

随机推荐

  • React Javascript 显示/解码 unicode 字符

    我有一个需要转换的 unicode 字符串 我需要将带有 u00f3 的字符串渲染为 这是一个示例 所有其他类型的字符都应该发生这种情况 我有以下基本代码 https jsfiddle net dddf7o70 https jsfiddle
  • 对于 asp.net mvc 中的身份验证非常非常困惑

    我得出的结论是我需要放弃 ASP NETMembership 列出原因 现在我发现我唯一需要的就是创建一个cookie 由Form Authentication 用于身份验证的自定义方法 完成 最后根据是否登录或按角色进行验证 我被困在最后
  • 根据客户端请求使用 Node 运行 Bash 脚本

    当浏览器中的用户单击按钮时 我需要运行服务器端脚本 我研究了一段时间 没搞明白 我们有什么 在 Fedora Red Hat 上运行的 Node js 服务器 在本地主机上 NO PHP 大多数页面都是 html javascript jQ
  • 通过线程下载图像错误

    祝所有 StackOverFlow 会员和读者新年快乐 我今天来找你询问有关 Delphi 中线程的问题 我浏览了大部分已经发布的关于该主题的内容 但找不到线索 我有一个非常简单的测试应用程序 其中包含一个表单 frmIMGDown 和一个
  • 如何将 OPENID auth 集成到 REST api 和前端框架架构中

    我目前正在制作一个需要用户登录的网站Steam http steamcommunity com 在他们可以使用我网站的其余功能之前 Steam 目前仅支持 OPENID 进行身份验证 我的做法是按照以下步骤进行 用户按下 使用 Steam
  • python:分割字符串,用管道符号“|”分隔

    看一下下面的字符串 E 1256280 2014 01 05 17 54 00 1 2014 01 05 18 59 53 True 我想把它分开 管道符号 因此我使用以下 python 代码 其中 line 是包含上面描述的字符串的字符串
  • 在 WP7 中打开具有特定 url 的网络浏览器

    我将如何通过单击按钮时的特定网址打开网络浏览器 将以下代码放入按钮 Click 事件处理程序中 var task new Microsoft Phone Tasks WebBrowserTask URL uri task Show
  • 以编程方式添加带有按钮的视图

    我想以编程方式添加一个视图和一个按钮 如下所示 问题是单击按钮时按钮没有反应 我的意思是它既不会突出显示也不会调用选择器 原因是我想为录音 声音文件 实现一个列表行 列表行应该可以选择进行向下钻取 并有一个播放按钮 所以我得到了一个Reco
  • 将给定行移动到 DataFrame 的末尾

    我想从 DataFrame 中获取给定的行并将其添加到相同的 DataFrame 中 我下面的代码就是这样做的 但我不确定我是否以正确的方式这样做 或者是否有更简单 更好 更快的方法 testdf df copy get row targe
  • Jetpack Compose 中具有等高行的网格布局

    喷气背包组成 我想创建一个像 UI 一样具有相同高度行的网格布局 但我找不到用于获取当前可用屏幕尺寸的函数 该应用程序应该看起来像这样 https i stack imgur com TTMQb png 结果应该是这样的 看看上面提到的链接
  • 在 Kotlin 中维护重复值的两个列表的交集

    我想找到两个列表之间公共元素的数量而不消除重复项 例如 input 1 3 3 4 3 3 output 2 因为共同元素是 3 3 input 1 2 3 4 3 3 output 1 因为共同元素是 3 如果我要使用 Kotlin 集合
  • 为什么 psycopg2 和 pyodbc 连接数据库的方式不同?我该如何翻译连接?

    所以我一直在努力寻找一个好的模块来查询我公司的 POSTGRES 数据库中的信息 周围有很多模块 但我似乎只能让 pyodbc 工作 为什么 pyodbc 的连接形式与 psycopg2 不同 后者似乎是更高级的模块 我如何将连接查询从一种
  • 数组索引超出范围的二维数组

    我有一个二维数组 但没有 行数为 1 并且没有 列数 gt 1 double T new double 1 24 System out println T 1 length 但是当我打印列的长度时 它说索引超出范围 但是当我打印以下内容时
  • Android停止录音失败

    我将启动一项服务来开始录音 当我试图停止时 它显示以下消息 06 27 17 21 30 138 E MediaRecorder 6122 stop called in an invalid state 0 我不确定其他功能 例如上传数据到
  • Symfony 表单事件将错误添加到特定字段

    我的场景如下 如果用户从 maxRedemptionForDiscount 中选择 true 并在 maxRedemptionForDiscountValue 中输入 0 则应该有一条错误消息呈现到特定字段 在 TextType 字段的位置
  • 打印机忽略 javax.print.attribute.PrintRequestAttributeSet 选项

    我必须使用 javax print api 打印文件 纯文本 我能够查找打印机并提交打印作业 但我只能打印该文件的一份副本 下面是我一直在使用的代码 打印机无法识别我使用 PrintRequestAttributeSet 指定的任何选项 属
  • 安装的构建工具修订版 28.0.3 已损坏。如何修复此错误

    当我创建一个新项目时 然后构建项目或尝试在模拟器中运行应用程序 使用 sdk api level 28 Android 9 0 Pie 构建输出窗口总是显示此错误 Installed Build Tools revision 28 0 3
  • 创建新线程的测试方法以及我们从事件中获得的结果(NUnit 2.6)

    我的课程有一个公共方法Start 一个私有方法和一个事件Finishing Start call new Thread private method 私有方法使用事件返回值 当这个方法完成工作后 再调用这个事件 现在我想为这个类编写测试 如
  • BASH 脚本暂停/继续脚本内的进程

    在我正在编写的 bash 脚本中 我试图在后台启动一个进程 睡眠 然后挂起它 最后 该过程完成 由于某种原因 当我发送带有停止信号的kill命令时 它只是继续运行 就好像它没有收到任何消息一样 我可以从命令行执行此操作 但 bash 脚本未
  • 应用程序可以在 Android 和 IOS 模拟器中运行,但在发布后不能运行

    Problem 我创建了一个应用程序 它是 MQTT 代理客户端 当我使用 iOS Android 模拟器进行开发时 我与代理的连接工作正常 但是 当我发布 apk 版本时 我的应用程序无法连接 它有套接字问题 AMQJS0007E 套接字