在调试应用程序时,一切正常,但是在执行以下命令后:
flutter clean
flutter build apk
flutter install
已安装的应用程序无法正常运行(未从API加载数据)。有什么想法吗?
pubspec.yaml:
name: test_app
description: A new Flutter project.
https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
http: ^0.12.0+2
cupertino_icons: ^0.1.2
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
答案 0 :(得分:2)
由于这是一个可能会引起其他开发人员关注的问题,因此该问题值得一个答案,因此我决定将其发布为答案而不是评论。
创建新的flutter项目时,该框架不会为iOS的AndroidManifest.xml
添加任何权限,也不会为Info.plist
添加任何配置。这必须由开发人员手动完成。
此外,还有一些Flutter软件包可用于处理运行时权限,但是这些权限需要用户输入(授予或拒绝)。运行时权限是敏感权限,但Internet访问权限不在此类别中,因此无需请求用户对此提供反馈。
更令人困惑的是,flutter框架可以在调试模式下或在模拟器上执行API请求,而无需向AndroidManifest.xml
添加Internet权限(可能会在将来收到错误/警告),说明缺少权限从那时起,请不要忘记将其添加到您的AndroidManifest.xml
文件中。
答案 1 :(得分:0)
以下步骤对我有用
运行flutter channel
Dev
Flutter channels:
master
* dev
beta
stable
将您的频道更改为stable
运行flutter channel stable
它将要求振颤升级。
运行flutter upgrade
您的最终输出将是
Flutter channels:
master
dev
beta
* stable