Flutter打包release版本apk包无法请求网络的解决方法

之前开发Flutter都是在debug环境下进行,今天flutter build apk打包了一个release.apk包,在真机上安装后点击登录按钮无效- -,感觉是否是代码bug?然后在代码中各种断点,各种print,又连接真机开debug各种测试,一切都正常啊!!!那这会是什么问题呢?

突然间灵光一闪,安卓开发中经常要配置权限文件,是否是flutter应用没有网络权限呢?然后百度~

果然发现了问题!

在路径android/src/profile/AndroidManifest.xml,

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="com.example.xxxxx">标签下 添加以下配置:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

然后打包,等了有一会,真机安装,登录。还是没反应。。。

What! Why?

难道不是网络的问题,可是目前来看只能是网络问题啊,点击登录至少也要弹出个错误框啊(错误我做了异常弹框提示),没有任何提示,这不正常~

然后继续找,结果发现~~~

在路径android/src/main/AndroidManifest.xml,这里也有一个AndroidManifest.xml文件!跟之前的只不过是文件夹位置不同而已

所以继续在这个文件中加入相同配置,然后打包等待、安装、点击登录~激动人心的时刻终于来了,弹框提示“帐号密码错误”;说明网络请求正常,搞定!