systemOrSignature保护级别

时间:2013-01-15 22:26:26

标签: android permissions

关于“systemOrSignature”保护级别似乎存在一些相互矛盾的信息。

如果我的OEM已经预先安装了系统应用程序,但我已经签名,我的应用程序将具有此保护级别,对吗?这与需要OEM签名的“签名”保护级别不同。

如果是的话,我的申请是否会获得此许可? android.permission.INSTALL_PACKAGES

默认情况下,这似乎设置为systemOrSignature级别保护,但stackoverflow上的大多数答案表明将需要OEM签名,例如:

Install apps silently, with granted INSTALL_PACKAGES permission

Troubles installing programmatically an app with INSTALL_PACKAGES permission from /system/app

1 个答案:

答案 0 :(得分:2)

  

如果我的OEM已经预先安装了系统应用程序,但我已经签名,我的应用程序将具有此保护级别,是否正确?

这就是应该发生的事情。

  

如果是的话,我的申请是否会获得此许可? android.permission.INSTALL_PACKAGES

基于the current source code,是:

<permission android:name="android.permission.INSTALL_PACKAGES"
    android:label="@string/permlab_installPackages"
    android:description="@string/permdesc_installPackages"
    android:protectionLevel="signature|system" />

请记住,围绕任何特定权限的规则可能会随着时间而改变。

  

默认情况下,这似乎设置为systemOrSignature级别保护,但stackoverflow上的大多数答案表明将需要OEM签名

您的第二个链接表示安装在固件上就足够了,它与当前的源代码一致。

此外,有时候对SO的回答和评论会使用一些简写。由于您可以通过查看源代码来了解您的需求,因此您始终可以自行验证给定的权限是否为signature - 仅限是否。