微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何阻止其他Android应用访问我的活动

我有一个Android应用程序,我在清单中定义了几个不同的活动.其中一些活动具有我使用的意图过滤器(例如ACTION_PICK).由于intent-filters,这些活动会在其他应用程序请求活动来处理ACTION_PICK时显示.有没有办法防止这种情况,以便其他应用程序无法访问我的活动?我已经尝试在我的活动中设置android:exported =“false”,但这没有做任何事情.

解决方法:

你需要:
*定义权限(仅适用于具有签名的应用程序)
*定义您的应用程序使用您定义的权限
*要求获得您想要保护的活动的许可. (小心不要将其用于主要的发布活动).

<!-- define a permission -->
<permission
    android:protectionLevel="signature"
    android:name="com.mypackage.MYPERMISSION"/>

<uses-permission android:name="com.mypackage.MYPERMISSION" />

<!-- define an activity which can only be started through internal code -->
<activity android:name="..."
          android:permission="com.mypackage.MYPERMISSION" >
    ...
</activity>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐