android在发布版本中添加动态接收器未导出许可

vltsax25  于 2022-12-25  发布在  Android
关注(0)|答案(1)|浏览(357)

用api-level 33构建我的应用程序后,android在合并清单中添加了新权限

<permission android:name="com.my.package.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION" android:protectionLevel="signature"/>
    <uses-permission android:name="com.my.package.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION"/>

我有一个广播接收器,这个许可和这个有什么关系吗?我应该改变任何代码吗?有人知道这个被添加的原因吗?

<receiver android:enabled="true" android:exported="true" android:name="com.my.package.EventReceiver">
            <intent-filter>
                <action android:name="com.my.package.event"/>
            </intent-filter>
        </receiver>
raogr8fs

raogr8fs1#

From https://developer.android.google.cn/about/versions/13/features#runtime-receivers:

更安全地导出上下文注册的接收器

为了帮助提高运行时接收器的安全性,Android 13为您的应用引入了指定是否应导出已注册的广播接收器并使其对设备上的其他应用可见的功能。在之前版本的Android上,设备上的任何应用都可以向动态注册的接收器发送未受保护的广播,除非该接收器受签名权限保护。
此导出配置可用于至少执行以下一项操作的应用:

相关问题