1、属性
- android:exported:当前组件能否被其他应用程序组件调用或跟它交互。其值尾true时则表示可以被调用或交互,为false时只有同一个应用程序的组件或带有相同用户ID的应用程序才能启动或绑定该服务。
- Activity,Service,Content Provider,Broadcast Receiver四大组件均具有android:exported属性。
2、activity
- true:当前Activity可以被另一个Application的组件启动
- false:当前Activity不可以被另一个Application的组件启动
- **无intent filter **:默认false
- 至少一个intent filter :默认true
- 也可以使用permission来限制外部实体唤醒当前Activity
3、service
- true:其它应用的组件是否可以唤醒service或者和这个service进行交互
- false:只有同一个应用的组件或者有着同样user ID的应用可以启动这个service或者绑定这个service
- 无intent filter :默认false
- 至少一个intent filter :默认true
- 也可以使用permission来限制外部实体唤醒当前service
3、Content Provider
- true:任何应用可以使用Provider通过URI 来获得它,也可以通过相应的权限来使用Provider
- false:当前提供者不能被其它应用使用。只有拥有同样的user ID 的应用可以获得当前应用的Provider
- Android sdk版本大于16:默认false
- **Android sdk版本小于等于16 **:默认true
- 可以通过Android:exported=“fasle” 和 permission来限制当前应用Provider是否会被其它应用获取。
4、Broadcast Receiver
- true:当前broadcast Receiver 可以从当前应用外部获取Receiver message
- false:当前broadcast Receiver 只能收到同一个应用或者拥有同一 user ID 应用发出广播
- **无intent filter **:默认false
- 至少一个intent filter :默认true
- 也可以使用permission来限制外部应用给他发送消息
UID:Android中startActivity中的permission检测与UID机制
参考链接:http://blog.csdn.net/watermusicyes/article/details/46460347
网友评论