uniapp 打安卓包后非调试模式无法联网如何解决?
在使用uniapp打包安卓应用后,发现非调试模式下无法联网,调试模式下一切正常。已在manifest.json中配置了网络权限,但问题依旧。请问可能是什么原因导致的?该如何解决?
2 回复
检查安卓权限配置,在 manifest.json 中添加网络权限:
"permissions": {
"android": {
"uses-permission": [
"android.permission.INTERNET"
]
}
}
重新打包即可。
在 UniApp 打包安卓应用后,非调试模式无法联网通常是由于以下原因及解决方案:
1. 检查网络权限配置
- 在
manifest.json中确保已添加安卓网络权限:{ "app-plus": { "distribute": { "android": { "permissions": [ "<uses-permission android:name=\"android.permission.INTERNET\"/>", "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>" ] } } } } - 重新打包生效。
2. 验证 HTTPS 请求
- 安卓 9+ 默认禁止 HTTP 请求,确保所有接口使用 HTTPS。
- 如需兼容 HTTP:
- 在
manifest.json中配置网络安全性:"android": { "permissions": ["<uses-permission android:name=\"android.permission.INTERNET\"/>"], "customConfig": { "networkSecurityConfig": "@xml/network_security_config" } } - 在
nativeplugins/resources目录创建xml/network_security_config.xml:<?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true" /> </network-security-config>
- 在
3. 检查服务器配置
- 确认服务器支持 TLS 1.2+(安卓要求)。
- 避免使用自签名证书。
4. 排查代码逻辑
- 非调试模式下,检查代码中是否存在环境判断逻辑(如
process.env.NODE_ENV)导致请求被拦截。
5. 测试真机网络环境
- 关闭调试模式,在真机测试时确认手机网络正常,且应用已获网络权限(系统设置中检查)。
操作步骤:
- 修改配置后,重新打包 APK。
- 卸载旧版,安装新包测试。
若问题依旧,检查控制台日志(通过 adb logcat 捕获错误信息)进一步定位。

