我尝试请求权限以在Flutter应用中使用位置数据。我正在使用geolocator插件和Permission_handler。都添加到我的pubspec.yaml。
我还加了
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
Run Code Online (Sandbox Code Playgroud)
对我的android/app/src/main/AndroidManifest.xml。
启动应用程序时,我要做的第一件事是
PermissionHandler().requestPermissions([PermissionGroup.location]).then((val) {
...
});
Run Code Online (Sandbox Code Playgroud)
如果随后在仿真器或物理电话上运行此命令,它将返回PermissionStatus.unknown并随后向GeoLocator()控制台发送垃圾邮件
No permissions found in manifest for: $permission
Run Code Online (Sandbox Code Playgroud)
如果我进入应用程序设置,则表示未请求特殊权限。
然后,当我打开与Android项目完全相同的项目(我都使用Android Studio时,有一个简洁的下拉选项可以在Android Studio中打开Android项目)并在我的手机上运行它可以按预期工作-它要求权限,如果我进入了应用程序设置,我也可以在此处看到所请求的权限。
任何人都知道为什么它不会随颤动而“传播”吗?
ged*_*agt 10
似乎主要的问题是,仅重新启动应用程序时未更新AndroidManifest.xml。但是,如果先执行a flutter clean然后重新构建,则会更新AndroidManifest.xml。
我不确定这是否是预期的行为,但它是否有效。只是要记住的东西。
| 归档时间: |
|
| 查看次数: |
941 次 |
| 最近记录: |