sevice__属性介绍: android:exported
http://blog.csdn.net/lhf0000/article/details/6576327
http://blog.csdn.net/berry666/article/details/28867699
https://my.oschina.net/u/589963/blog/316912
http://blog.csdn.net/watermusicyes/article/details/46460347
http://blog.csdn.net/lvxiangan/article/details/46859349
http://www.2cto.com/kf/201305/211624.html
http://www.cnblogs.com/lwbqqyumidi/p/3793440.html
http://www.cnblogs.com/lwbqqyumidi/p/4181185.html
http://zhidao.baidu.com/link?url=K4XvTHMcJsdJihYRrkz9xuzAjoXA9PUqqM2znR97MfOZ0xmVvgkWpHLjiu-Ewq6dIG7tSEVPoYXXeGftOrSP3Zgq_WGkN93XnESFFOu7rrG
这个属性用于指示该服务是否能够被其他应用程序组件调用或跟它交互。如果设置为true,则能够被调用或交互,否则不能。
设置为false时,只有同一个应用程序的组件或带有相同用户ID的应用程序才能启动或绑定该服务。
它的默认值依赖与该服务所包含的过滤器。没有过滤器则意味着该服务只能通过指定明确的类名来调用,这样就是说该服务只能在应用程序的内部使用(因为其他外部使用者不会知道该服务的类名),因此这种情况下,这个属性的默认值是false。另一方面,如果至少包含了一个过滤器,则意味着该服务可以给外部的其他应用提供服务,因此默认值是true。
这个属性不是限制把服务暴露给其他应用程序的唯一方法。还可以使用权限来限制能够跟该服务交互的外部实体。
详细一点:
1. <service android:name=".RemoteService"/> 这样的Service其他进程是不能访问的
2. <service android:name=".RemoteService"
android:exported="true"
android:permission="com.stone.RemoteAccess">
<intent-filter>
<action android:name="com.example.ipc_b.RemoteService"/>
</intent-filter>
</service>
其他进程要访问上面的service, 必须使用permission<uses-permission android:name="com.stone.RemoteAccess"/>
3. 其他进程可以访问下面的service, 有intent-filter(包含action), exported属性就默认为true
<service android:name=".RemoteService">
<intent-filter>
<action android:name="com.example.ipc_b.RemoteService"/>
</intent-filter>
</service>
android:exported
这个属性用于指示该服务是否能够被其他应用程序组件调用或跟它交互。如果设置为true,则能够被调用或交互,否则不能。设置为false时,只有同一个应用程序的组件或带有相同用户ID的应用程序才能启动或绑定该服务。
它的默认值依赖与该服务所包含的过滤器。没有过滤器则意味着该服务只能通过指定明确的类名来调用,这样就是说该服务只能在应用程序的内部使用(因为其他外部使用者不会知道该服务的类名),因此这种情况下,这个属性的默认值是false。另一方面,如果至少包含了一个过滤器,则意味着该服务可以给外部的其他应用提供服务,因此默认值是true。
这个属性不是限制把服务暴露给其他应用程序的唯一方法。还可以使用权限来限制能够跟该服务交互的外部实体。
在项目中,如果想使用systemUI.apk中的screenshot.TakeScreenshotService 进行截屏,那么需要把systemUI中的AndroidManifest.xml 的<service android:name=".screenshot.TakeScreenshotService">中添加android:exported="true"。那么其他应用app就可以去访问TakeScreenshotService 功能(函数)了。
否则其他app访问systemUI的TakeScreenshotService 话,会报:
Permission Denial: Accessing service ComponentInfo
java.lang.SecurityException: Not allowed to bind to service Intent
这个错误
sevice__属性介绍: android:exported的更多相关文章
- android:exported 属性详解
属性详解 标签: android 2015-06-11 17:47 27940人阅读 评论(7) 收藏 举报 分类: Android(95) 项目点滴(25) 昨天在用360扫描应用漏洞时,扫描结果, ...
- Android权限安全(5)组件的android:exported属性
Android四大组件都有 android:exported 属性 android:exported="true" 时 表示该组件是公开的,其它组件可以访问这个组件 android ...
- AndroidManifest 中android:exported
假设Service等的AndroidManifest中声明为android:exported="false" 则该服务不可以跨进程使用. Permission De ...
- Permission Denial: opening provider 隐藏的android:exported属性的含义
Permission Denial: opening provider 隐藏的android:exported属性的含义 2013-03-07 13:17 227人阅读 评论(0) 收藏 举报 场景: ...
- Android相关属性的介绍:android:exported = true
在Activity中该属性用来标示:当前Activity是否可以被另一个Application的组件启动:true允许被启动:false不允许被启动. android:exported 是Androi ...
- android:exported
这个属性用于指示该服务是否能够被其他应用程序组件调用或跟它交互.如果设置为true,则能够被调用或交互,否则不能.设置为false时,只有同一个应用程序的组件或带有相同用户ID的应用程序才能启动或绑定 ...
- android:exported属性
这个属性用于指示该服务是否能够被其他应用程序组件调用或跟它交互.如果设置为true,则能够被调用或交互,否则不能.设置为false时,只有同一个应用程序的组件或带有相同用户ID的应用程序才能启动或绑定 ...
- [Android Memory] android 警告:Exported activity does not require permission
在一个应用程序中添加了多个antivity后,在manifest.xml文件中会除了主Activity外,其它的Activity属性中都会有个警告: Exported activity does no ...
- Android 出现警告Exported service does not require permission
在配置Android清单文件的时候,配置service,或者activity,或者receive的时候,出现Exported service does not require permission警告 ...
随机推荐
- 学习笔记-- android动画简述
android支持三种类型的动画: ·属性动画 一种补间动画,通过在目标对象的任何属性的两个值之间应用赠了变化,可以生成一种动画效果.这种动画可以用来生成各种效果,例如:改变视图的颜色.透明条.淡入 ...
- [转]const 与 readonly知多少
引自:http://www.cnblogs.com/royenhome/archive/2010/05/22/1741592.html 尽管你写了很多年的C#的代码,但是可能当别人问到你const与r ...
- 对象关联(associated objects)
category与associative作为objective-c的扩展机制的两个特性,category即类型,可以通过它来扩展方法:associative,可以通过它来扩展属性:在iOS开发中,可能 ...
- sublime text 2 ubuntu安装及插件管理
参考 dudumao 1.下载Sublime Text2官网下载地址:http://www.sublimetext.com 2.安装Sublime Text2解压即可使用 $ sudo tar -jx ...
- theano中的scan用法
scan函数是theano中的循环函数,相当于for loop.在读别人的代码时第一次看到,有点迷糊,不知道输入.输出怎么定义,网上也很少有example,大多数都是相互转载同一篇.所以,还是要看官方 ...
- function中的ajax怎么返回一个数
- 1.4 云计算的SPI服务模型
云计算是通过共享资源池的方式来提高资源利用率的.在云计算中,根据其资源池中资源的类别,可以把云计算的服务模型分为三种,即所谓的SPI 模型 应用程序 Software as a Service ( ...
- C++ STL泛型编程——在ACM中的运用
学习过C++的朋友们应该对STL和泛型编程这两个名词不会陌生.两者之间的关系不言而喻,泛型编程的思想促使了STL的诞生,而STL则很好地体现了泛型编程这种思想.这次想简单说一下STL在ACM中的一些应 ...
- gruntjs
先输入命令: npm install -g grunt-clinpm install grunt --save-devgrunt –version 新建json文件:package.json { &q ...
- odoo server命令行以及配置文件
odoo server 启动时 def main(args): check_root_user() odoo.tools.config.parse_config(args) check_postgre ...