检查Android 6.0中的自定义权限(sdk 23)

问题描述 投票:1回答:1

关于“自定义”权限如何在Android 6.0中使用新的运行时权限,我有几个问题。例如,像这样声明的自定义权限。

<permission android:description="com.mycompany.myapp.DEADLY_ACTIVITY"
        android:label="string resource"
        android:name="string"
        android:protectionLevel="dangerous" />

我在网上找不到任何指定如何在Android M中运行时处理此类自定义权限的信息。

我应该在运行时处理和检查方法中的“com.mycompany.myapp.DEADLY_ACTIVITY”权限,就像检查危险的android perimissions(相机,日历等)和checkSelfPermission()一样吗?并根据Google的新标准提供理由?

非常感谢!

android android-6.0-marshmallow android-permissions
1个回答
0
投票

是。您可以使用您在清单中声明的​​权限名称使用ContextCompat.checkSelfPermission方法检查权限。所以如果你在清单中声明了这个:

<permission android:description="com.mycompany.myapp.DEADLY_ACTIVITY"
    android:label="string resource"
    android:name="com.mycompany.myapp.permissionName"
    android:protectionLevel="dangerous" />

那么您可以使用以下方法检查应用程序中的任何位置:

if(ContextCompat.checkSelfPermission(context, "com.mycompany.myapp.permissionName") == PackageManager.PERMISSION_GRANTED
© www.soinside.com 2019 - 2024. All rights reserved.