Android活动无法解析符号ACCESS_BACKGROUND_LOCATION

时间:2019-09-30 23:59:38

标签: android android-manifest

我正在尝试检查对后台位置的访问权限。

我已经访问过此Cannot resolve Manifest.permission.ACCESS_FINE_LOCATION 并且我已经检查了所有提供的解决方案。他们都没有解决我的问题。

这是我在清单文件中的代码:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />

这是我尝试检查权限的方法:

boolean backgroundLocationPermissionApproved =
       ActivityCompat.checkSelfPermission(this,
           permission.ACCESS_BACKGROUND_LOCATION)
           == PackageManager.PERMISSION_GRANTED;

我收到此错误:

error: cannot find symbol static checkBackGroundLocationPermissions

任何想法都会受到赞赏。

1 个答案:

答案 0 :(得分:3)

我找到了自己问题的答案。因此,如果有人遇到相同的问题,我会在此处发布。

基本上,我正在尝试请求后台位置跟踪的权限。事实证明,仅当您已升级应用程序使其可与Android 10(Android Q)一起使用时,才需要许可。 要检查您的应用是否需要许可,只需转到build.gradle文件并检查您的targetSdkVersion。如果它的值低于29(例如我的值为27),那么您无需检查后台位置跟踪的权限。 但是,通过将targetSdkVersion设置为29并升级所有依赖项,是升级应用程序使其与Android 10兼容的好习惯。

对于这个答案,我不能仅仅因为android.Manifest不支持该权限(如果您还没有将应用程序升级到sdk 29)而获得ACCESS_BACKGROUND_LOCATION。 有关更多信息,请考虑访问以下页面:https://developer.android.com/about/versions/10/privacy/changes