【发布时间】:2017-06-09 05:06:20
【问题描述】:
是否可以在 java 中以编程方式设置 IntentFilter/Intent 的保护级别,类似于我们在 AndroidManifest.xml 中定义它的方式:
<receiver
android:name="my.test.receiver"
android:protectionLevel="signature" />
我们的应用程序有一个核心库,可以在运行时促进动态广播和接收器,我们希望在这里确保它们的安全。
我在网上没有找到有关此方法的信息,不确定是否可行。如果我们可以设置一个intentFilters permission level = PermissionInfo.PROTECTION_SIGNATURE 它会起作用,但从文档看来 PermissionInfo 仅用于阅读。我能找到的唯一替代方法是声明一个特殊权限,将其与我们的广播一起发送并将其添加到我们所有的清单中:https://stackoverflow.com/a/15316487/1810256
我们可能会使用这种方法,但我们更喜欢第一种方法,因为签名方法似乎更安全。
感谢任何帮助/建议!
【问题讨论】:
标签: android permissions runtime receiver android-api-levels