6

我正在开发一个包含许多组件的应用程序,每个组件都是一个单独的 Android 应用程序。“核心”应用程序将使用内容提供者来提供对数据库的访问,并且阅读权限文档“签名”保护是我想要的方式。

我已经为我的权限定义了一个组,主要是为了让我的权限可以很好地显示在应用信息的“权限”部分中我自己的图标上。他们出现android:protectionLevel="normal"就好了。但是当我使用它们时android:protectionLevel="signature"它们消失了。

<permission-group
    android:name="com.example.permissions.GROUP"
    android:label="@string/lblGroup"
    android:description="@string/descGroup"
    android:icon="@drawable/ic_menu_permissions_group" />

<permission
    android:name="com.example.permission.CONFIG_READ"
    android:permissionGroup="com.example.permissions.GROUP"
    android:protectionLevel="signature"
    android:label="@string/lblConfigRead"
    android:description="@string/descConfigRead" />
<permission
    android:name="com.example.permission.CONFIG_WRITE"
    android:permissionGroup="com.example.permissions.GROUP"
    android:protectionLevel="signature"
    android:label="@string/lblConfigWrite"
    android:description="@string/descConfigWrite" />

鉴于我目前正在开发并因此使用开发人员密钥,我是否需要跳过其他一些障碍才能使“签名”保护级别为开发人员工作?

一如既往地感谢您的帮助

史蒂夫

4

1 回答 1

5

但是当我使用 android:protectionLevel="signature" 他们消失了。

那是因为用户不需要批准它们。签名级权限会根据应用程序的签名自动授予和拒绝。

为了让“签名”保护级别为开发人员工作,我还需要跳过其他一些障碍吗?

它已经适用于您自己的应用程序。如果“开发者”是第三方,则不能使用签名级别的权限,因为他们将使用自己的签名密钥进行签名。

于 2013-02-15T13:48:55.617 回答