android:exported、enabled属性
android:exported:
- android:exported 是Android中的四大组件 Activity,Service,Provider,Receiver 四大组件中都会有的一个属性。
- 代表是否能被其他应用隐式调用。
如:
在Activity中,该属性用来标示,当前Activity是否可以被另一个Application的组件启动:true允许被启动;false不允许被启动。
在Service中,该属性用来标示,其它应用的组件是否可以唤醒service或者和这个service进行交互:true可以,false不可以。
在Provider中,标示当前内容提供者是否会被其它应用使用,true: 当前提供者可以被其它应用使用。任何应用可以使用Provider通过URI 来获得它,也可以通过相应的权限来使用Provider;false:当前提供者不能被其它应用使用。
在Receiver中,标识当前broadcast Receiver 是否可以从当前应用外部获取Receiver message 。true,可以;false 不可以。如果为false ,当前broadcast Receiver 只能收到同一个应用或者拥有同一 user ID 应用发出广播。
- 除了Provider,其默认值是由有无intent-filter决定的,如果有intent-filter,默认值为true,否则为false。为false的情况下,那么这个Activity将只会被当前Application或者拥有同样user ID的Application的组件调用,对于其他应用,即使有intent-filter匹配,也无法打开,即无法被其他应用隐式调用。
- 对于Provider,当Android sdk 的最小版本为16或者更低时他的默认值是true。如果是17和以上的版本默认值是false。
- 为什么exported 的默认值根据是否有intent filter 来定?原因:没有任何的filter意味着只有在详细的描述了他的class name后才能被唤醒 .这意味着只能在应用内部使用,因为其它application并不知道这个class的存在。所以在这种情况下,它的默认值是false。从另一方面讲,如果至少有一个filter的话,意味着可以被其它应用从外部唤起,这个时候它的默认值是true。
- 其实,不只有这个属性可以指定是否暴露给其它应用,也可以使用permission来限制
- 应用:
android:enabled:
- 是否可以被系统实例化,默认为 true因为父标签 也有 enable 属性,所以必须两个都为默认值 true 的情况下服务才会被激活,否则不会激活。
android:exported、enabled属性相关推荐
- 【错误记录】未安装该应用 ( 在 Android 12 之后 组件设置 android:exported=“false“ 属性 )
文章目录 一.报错信息 二.解决方案 一.报错信息 报错信息 : 点击应用图标后 , 应用并未启动 , 并弹出 " 未安装该应用 " 提示信息 ; 二.解决方案 排查了一下相关地方 ...
- 关于Android应用本地拒绝服务漏洞和android:exported属性
最近了项目中遇到一个Android应用本地拒绝服务漏洞的问题,第一眼看到这个玩意,我去,什么东东? 请教了下万能的度娘亲,才知道是应用本身组件对外性的一个问题.先简单说下这个漏洞. 下面漏洞介绍摘自阿 ...
- android:exported简单理解
最近在看微信分享.收藏和发送到朋友圈的官方文档,发现其中有一个android:exported的属性,当在向微信发送了请求后需要接受请求的返回值时,须在androidManifest设置该属性为tru ...
- Android 12适配安全组件导出设置`android:exported` 指定显式值”
如何解决编译错误:"面向 Android 12 及更高版本的应用需要为 android:exported 指定显式值"问题 如果您的应用针对 Android12,则文档说: 如果您 ...
- android:exported 属性详解
昨天在用360扫描应用漏洞时,扫描结果,出来一个android:exported属性,其实之前根本不知道这个属性,更不知道这个属性用来干嘛的,详情见下图: 因此,查了官方API,学习了一下这个属性! ...
- android:exported属性
android:exported 是Android中的四大组件 Activity,Service,Provider,Receiver 四大组件中都会有的一个属性. 主要作用是:是否支持其它应用调用当前 ...
- Android相关属性的介绍:android:exported = true
在Activity中该属性用来标示:当前Activity是否可以被另一个Application的组件启动:true允许被启动:false不允许被启动. android:exported 是Androi ...
- Android开发-Activity中“android:exported“属性的作用,以及“Permission Denial: starting Intent“错误解决
如何在一个应用程序中,启动另外一个应用程序?最近正有这样的需求,也踩了一个小坑.本节介绍使用Activity中"android:exported"属性来实现这种访问. Activi ...
- (Android学习)android:exported 属性
android:exported 是Android中的四大组件 Activity,Service,Provider,Receiver都会有的一个属性. 总体来说它的主要作用是:是否支持其它应用调用当前 ...
最新文章
- K8s如何改变美团的云基础设施?
- java中表示二进制、八进制、十进制、十六进制,double、float、整型
- [转]SVN更新的时候前面字母的意思(U、G、A、R、C)
- php购物车修改单价,php – woocommerce在结帐和购物车页面更改价格
- 让使用MSN就像访问网页一样容易!
- WZ132源代码行侠仗义
- 如何读入一个多行的txt文件,给每行的数据加双引号并保存为一行输出
- java 类变量 赋值_Java 中类变量,实例变量,局部变量的赋值
- 我写项目的思路和“自然架构”
- P Laguna/ A database for evaluation of algorithms for measurement of QT and other waveform interval
- Eclipse中在refernced Libraries里面加jar包与在WEB-INF/lib下加jar包的区别
- IOS应用程序崩溃日志分析
- logstash~filter.mutate插件使用教程(附带示例)
- kotlin java 知乎_GitHub - luciferldy/ZhihuDailyKotlin: 这是是一个使用 Kotlin 开发的知乎日报客户端...
- 计算机设计大赛中南赛区2019通告,我院6支队伍在2019中国大学生计算机设计大赛 中南地区赛喜获佳绩...
- 简述网上银行的服务器端系统,网上银行系统jsp .doc
- 根据判断PC浏览器类型和手机屏幕像素自动调用不同CSS
- Google 出的 Guava 是个什么鬼?
- Android系统:如何开启或隐藏Navigation Bar导航 栏
- 枝枝叶梗高傲的顶着莲蓬像是