目录

Android开发之应用安全性配置之protectionLevel

android:protectionLevel 权限等级

在设计到app安全方面,如果你使用了BroadcastReceiver ,为了安全不希望本app的BroadcastReceiver被外部拦截,就可以通过protectionLevel来配置了。

protectionLevel 有如下四个级别:

  • normal :低风险权限,只要申请了就可以使用(在AndroidManifest.xml中添加

    标签),安装时不需要用户确认;

  • dangerous:高风险权限,安装时需要用户的确认才可使用;

  • signature:只有当申请权限的应用程序的数字签名与声明此权限的应用程序的数字签名相同时(如果是申请系统权限,则需要与系统签名相同),才能将权限授给它;

  • signatureOrSystem:签名相同,或者申请权限的应用为系统应用(在system image中),与signature类似,只是增加了rom中自带的app的声明 ,尽量不要使用该选项,因为signature已经适合绝大部分的情况。

一般如果我们的app的BroadcastReceiver是进行app内部间的通讯,我们可使用protectionLevel=‘signature’验证其是否真是内部app,