uniapp 打包后无法访问接口 androidmanifest.xml 如何解决
我用uniapp打包成Android应用后无法访问接口,检查发现是androidmanifest.xml文件配置有问题。请问具体需要修改哪些配置才能解决接口访问问题?打包后的应用在其他功能都正常,就是接口请求失败,应该怎么排查和修复?
2 回复
检查 AndroidManifest.xml 中的网络权限配置,确保已添加:
<uses-permission android:name="android.permission.INTERNET" />
若使用 HTTPS,检查证书是否有效。若为 HTTP,需配置网络安全策略。
在 UniApp 打包后 Android 应用无法访问接口,通常是由于 网络权限未配置 或 HTTP 明文传输限制 导致的。请按以下步骤检查和修改 AndroidManifest.xml 文件:
1. 添加网络权限
在 <manifest> 标签内添加以下权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
2. 允许 HTTP 明文传输(针对 HTTP 接口)
如果接口使用 HTTP(非 HTTPS),Android 9+ 默认禁止明文传输。在 <application> 标签中添加:
android:usesCleartextTraffic="true"
3. 配置网络安全性(可选,推荐 HTTPS)
如需支持 HTTPS 或自定义证书,可创建 network_security_config.xml 文件(放在 src/main/res/xml/ 目录),并在 <application> 中引用:
android:networkSecurityConfig="@xml/network_security_config"
完整示例:
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 网络权限 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:usesCleartextTraffic="true"
...>
<!-- 其他配置 -->
</application>
</manifest>
注意事项:
- UniApp 配置路径:在 HBuilderX 中,可通过「manifest.json」的「App 模块配置」→「Android 设置」勾选相关权限。
- 生产环境建议:正式版尽量使用 HTTPS,避免开启明文传输。
完成配置后,重新打包并测试网络请求即可。

