大家在学习安全编码规范中,会发现针对不想过度暴露的四大组件,都建议使用自定义权限的方式基于保护。尤其是可以作为通信方案的广播。一个规范的暴露广播配置方法如下:
<permission android:name="test.test"
android:protectionLevel="signature"/>
<uses-permission android:name="test.test"/>
<receiver android:name=".TestReceiver"
android:exported="true"
android:permission="test.test">
<intent-filter>
<action android:name="android.intent.action.TIME_TICK"/>
<action android:name="test.aaa"/>
<action android:name="test.bbb"/>
</intent-filter>
</receiver>
动态注册时也是建议使用带权限配置的registerReceiver方法。
TestReceiver testReceiver = new TestReceiver();
IntentFilter i