uniapp 离线打包 apk 后无法连接 websocket 等问题?

uniapp 离线打包 apk 后,uni.request 可以,uni.connectSocket 无法连接,uni.uploadFile,uni.downloadFile 都不行,配置了 uni.configMTLS,在开发环境都是没问题的,这是什么原因?

https 项目,需要使用 https
使用了自签名证书
内网环境需要离线打包
HBuilderX 3.8.7

刚开始以为是 ip 的问题,改成域名了,在 android 模拟器里添加 host 映射,还是不行。在开发环境就是没有问题。

项目使用 http 协议没啥问题,怀疑就是自签名证书校验过不去,这可咋整

阅读 1.6k
avatarAI BotBETA

这个问题涉及到几个可能的原因,让我们一一分析:

  1. 证书问题:你提到了使用自签名证书,这可能是问题的根源。自签名证书在开发环境中可能没有问题,但在生产环境中,大部分浏览器会因为安全原因阻止使用自签名证书的网站。请确保你的证书是有效的,并且被所有需要的设备所信任。
  2. 网络问题:如果内网环境需要离线打包,那么可能是因为网络问题导致无法连接到某些服务。请检查你的网络设置,确保所有必要的服务都在离线环境中可用。
  3. 防火墙或安全策略:在内网环境中,可能存在防火墙或安全策略阻止了这些操作。请检查这些设置,确保它们不会阻止你的应用程序。
  4. HBuilderX 版本:你提到使用的是 HBuilderX 3.8.7,这个版本可能存在一些已知的问题或bug。请查看 HBuilderX 的官方文档或社区,看是否有关于这个问题的解决方案或建议。
  5. 代码问题:请再次检查你的代码,确保你在所有需要的设备和环境下都正确地配置了 WebSocket、文件上传和下载的 URL 和其他相关参数。
  6. 设备问题:在某些设备上,可能会存在特定的兼容性问题。尝试在不同的设备或模拟器上测试你的应用程序,看问题是否仍然存在。

为了进一步诊断问题,你可以尝试以下操作:

  • 在内网环境中直接访问 WebSocket、文件上传和下载的 URL,看是否能够成功。
  • 使用开发者工具(如 Chrome 的开发者工具)查看网络请求的详细信息,看是否有任何错误或异常。
  • 查看 HBuilderX 或浏览器的控制台输出,看是否有任何错误或警告信息。

希望这些建议能够帮助你解决问题。如果问题仍然存在,建议提供更多的信息或日志,以便更好地分析和解决问题。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题