Flutter应用在APK发布模式下无法正常运行求助
解决Flutter Release APK网络请求失败问题
检查AndroidManifest.xml权限
在android/app/src/main/AndroidManifest.xml中,必须手动添加网络权限(调试模式下Flutter会自动注入,但release模式不会):<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />适配Android 9+明文网络限制
若你的接口是HTTP而非HTTPS,Android 9及以上默认会拦截明文请求,需配置网络安全策略:- 在
android/app/src/main/res/xml目录创建network_security_config.xml,内容如下:
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true" /> </network-security-config>- 在AndroidManifest.xml的
<application>标签中添加引用:
<application ... android:networkSecurityConfig="@xml/network_security_config">- 在
确认打包命令正确性
必须使用release模式打包命令,避免用debug打包的APK:flutter build apk --release手动验证应用权限
安装APK后,前往系统设置检查应用的网络权限是否开启,部分机型会默认禁用未知来源应用的网络权限,需手动打开。排查混淆规则(若开启混淆)
若项目启用了代码混淆,需在android/app/proguard-rules.pro中添加Flutter网络相关类的保护规则:-keep class io.flutter.app.** { *; } -keep class io.flutter.plugin.** { *; } -keep class io.flutter.util.** { *; } -keep class io.flutter.view.** { *; } -keep class io.flutter.** { *; } -keep class io.flutter.plugins.** { *; }
内容的提问来源于stack exchange,提问作者kapkap
相关产品推荐
相关产品推荐

