Android 检查是否始终授予前台服务权限返回false
遵循迁移说明并在清单中添加了以下行:Android 检查是否始终授予前台服务权限返回false,android,android-permissions,foreground-service,Android,Android Permissions,Foreground Service,遵循迁移说明并在清单中添加了以下行: <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/> 还没有我没有抛出任何SecurityException。这让我怀疑我应该如何检查运行时的权限 我缺少什么?前台服务不是危险的权限。因此,它与运行时权限系统和方法(如checkSelfPermission())无关。这是失败的,因为您可能在API=28时应返回true。 assert(
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
还没有我没有抛出任何SecurityException
。这让我怀疑我应该如何检查运行时的权限
我缺少什么?
前台服务
不是危险的权限。因此,它与运行时权限系统和方法(如checkSelfPermission()
)无关。这是失败的,因为您可能在API<28的设备上运行它。此方法字段仅适用于API 28及以上版本。如果您按照应该的方式编写Manifest.permission.FOREGROUND\u服务,而不是普通字符串,Android Studio将向您发出警告。是的,没错,不需要在运行时检查它。但是,如果在清单中添加了权限,则该方法在API>=28时应返回true。
assert(ActivityCompat.checkSelfPermission(activity, "android.permission.FOREGROUND_SERVICE") == PackageManager.PERMISSION_GRANTED)