我正在尝试检查访问后台位置的权限。
我已经访问过这个无法解析 Manifest.permission.ACCESS_FINE_LOCATION 并且我已经检查了所有提供的解决方案。他们都没有解决我的问题。
这是我在清单文件中的代码:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
Run Code Online (Sandbox Code Playgroud)
这是我尝试检查权限的方式:
boolean backgroundLocationPermissionApproved =
ActivityCompat.checkSelfPermission(this,
permission.ACCESS_BACKGROUND_LOCATION)
== PackageManager.PERMISSION_GRANTED;
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
error: cannot find symbol static checkBackGroundLocationPermissions
Run Code Online (Sandbox Code Playgroud)
任何想法将不胜感激。
小智 10
我找到了我自己问题的答案。所以我把它贴在这里以防其他人有同样的问题。
基本上,我试图请求后台位置跟踪的许可。事实证明,仅当您已升级应用以与 Android 10 (Android Q) 配合使用时,才需要请求许可。要检查您的应用程序是否需要权限,只需转到 build.gradle 文件并检查您的 targetSdkVersion。如果它低于 29,就像在我的情况下是 27,那么您不需要检查后台位置跟踪的权限。但是,通过将 targetSdkVersion 设置为 29 并升级您的所有依赖项来升级您的应用以使用 Android 10 是一个很好的做法。
对于这个答案,我无法获得 ACCESS_BACKGROUND_LOCATION 仅仅是因为如果您尚未将应用程序升级到 sdk 29,android.Manifest 不支持该权限。有关更多信息,请考虑访问以下页面:https://developer。 android.com/about/versions/10/privacy/changes
注意:如@LordParsley 的评论所示:
compileSdkVersion(不仅仅是targetSdkVersion)。| 归档时间: |
|
| 查看次数: |
2416 次 |
| 最近记录: |