得到奇怪的问题。如果我在模拟器中运行应用程序,工作正常。如果我通过连接Android设备安装app工作正常。但如果我通过flutter build apk
制作apk并安装在设备中。
网络形象不会来?为什么?什么事都出错了?无需提供代码。对于显示网络图像,我使用简单的Image.network
与谷歌图像的网址。
我尝试过flutter clean
然后flutter build apk --release
,但同样的问题来了
不通过发布APK:
Uer-MacBook-Air:AppName user$ flutter build apk --release
Initializing gradle... 2.0s
Resolving dependencies... 3.1s
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done 63.4s
Built build/app/outputs/apk/release/app-release.apk (8.1MB).
通过调试工作APK
Uer-MacBook-Air:AppName user$ flutter build apk --debug
Initializing gradle... 3.5s
Resolving dependencies... 5.5s
Running Gradle task 'assembleDebug'...
Running Gradle task 'assembleDebug'... Done 36.2s
Built build/app/outputs/apk/debug/app-debug.apk.
有人遇到过这种问题吗?我已经安装了许多flutter build apk
的apk,这工作正常,现在不能在发布模式下工作?但当我尝试调试模式flutter build apk --debug
它的工作正常意味着图像显示?
我必须为发布模式apk添加一些权限吗?
是的,将这些权限添加到AndroidManifest.xml,它将起作用
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
更新:只有INTERNET权限就足够了
<uses-permission android:name="android.permission.INTERNET" />
在调试模式下,默认情况下启用服务扩展和多个权限(在flutter中)
当您处于发布模式时,您必须手动在androidmanifest.xml中添加Internet权限。(就像您在本机开发中添加它一样)
导航到android-> app-> src-> main-> AndroidManifest.xml并在应用程序范围之外添加此行。
<uses-permission android:name="android.permission.INTERNET" />