如果我有一个由 OEM 包含在图像中的预安装系统应用程序,但由我签名,我的应用程序将具有此保护级别,对吗?
这就是应该发生的事情。
如果是这样,我的申请会被授予此权限吗?android.permission.INSTALL_PACKAGES
根据当前的源代码,是的:
<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
-only。