关于AccessibilityService的用法(转)
2016-03-24 15:34
190 查看
一、结构
java.lang.Object
android.content.Context
android.content.ContextWrapper
android.app.Service
android.accessibilityservice.AccessibilityService
public abstract class AccessibilityService extends Service
二、类概述
当AccessibilityEvent事件被启动后AccessibilityService 会接收回调函数运行于后台,这些事件指的是在用户接口间的状态转换,比如,焦点变化,按钮被点击等。一些辅助服务继承于此类并且实现它的抽象方法,像这样的一个服务和其他服务一样在AndroidManifest.xml中被声明但它必须被指定操纵
android.accessibilityservice.AccessibilityService的意图,下面的是一段例子:
<service android:name=".MyAccessibilityService">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
</service>
辅助服务的声明周期只能被系统管理,启动或者停止这个服务必须由明确的用户通过启用或停用设备的设定,在系统通过呼叫onServiceConnected()方法与服务绑定后,这个方法才能被想要执行装载的客户端所重载使用,一个辅助服务通过呼叫setServiceInfo(AccessibilityServiceInfo)方法来设定AccessibilityServiceInfo而配置。你可以在任何时候改变这个服务的配置但最好是在重载方法onServiceConnected().中来使用。
一个辅助服务可以在特定的包中注册事件以提供特殊的反馈类型并且当最后一个关联的事件被解除的时候发出明确的超时提醒。
三、通告策略
对于每个回馈类型只有一个辅助服务被通知,服务登记处按顺序被通知,因此,如果有两个服务为同一个包中的同一回馈类型注册那么第一个会被通知,然而有可能的是,可以为一个给定的回馈类型去把一个服务注册为默认的,这样的话如果没有其他的服务来取代这个事件这个服务就会被呼出使用,换句话说,默认的服务不会与其他的服务竞争并且不管注册的顺序而被通知。
四、公共方法:
abstract void onAccessibilityEvent(AccessibilityEvent event)
回调AccessibilityEvents.
参数
event 一个事件
public final IBinder onBind (Intent intent)
实现返回一个内部的辅助接口的实现,子类不能被重写。
参数
intent 与服务相绑定的意图,注意其他任何包含在Intent的外部意图将不能在此使用。
返回值
返回一个客户端可以在服务上访问的IBinder。
public abstract void onInterrupt ()
打断辅助回馈内容时呼叫。
五、保护方法:
5.1 protected void onServiceConnected ()
这个方法是AccessibilityService声明周期的一部分,在系统成功与服务绑定后才被呼叫,如果用来设定AccessibilityServiceInfo.这个方法更为方便。
六、Word版本下载:
http://download.csdn.net/source/2667675
原始出处:
java_cofi:http://java-cofi.javaeye.com/
博客园:http://www.cnblogs.com
农民伯伯: http://www.cnblogs.com/over140/
java.lang.Object
android.content.Context
android.content.ContextWrapper
android.app.Service
android.accessibilityservice.AccessibilityService
public abstract class AccessibilityService extends Service
二、类概述
当AccessibilityEvent事件被启动后AccessibilityService 会接收回调函数运行于后台,这些事件指的是在用户接口间的状态转换,比如,焦点变化,按钮被点击等。一些辅助服务继承于此类并且实现它的抽象方法,像这样的一个服务和其他服务一样在AndroidManifest.xml中被声明但它必须被指定操纵
android.accessibilityservice.AccessibilityService的意图,下面的是一段例子:
<service android:name=".MyAccessibilityService">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
</service>
辅助服务的声明周期只能被系统管理,启动或者停止这个服务必须由明确的用户通过启用或停用设备的设定,在系统通过呼叫onServiceConnected()方法与服务绑定后,这个方法才能被想要执行装载的客户端所重载使用,一个辅助服务通过呼叫setServiceInfo(AccessibilityServiceInfo)方法来设定AccessibilityServiceInfo而配置。你可以在任何时候改变这个服务的配置但最好是在重载方法onServiceConnected().中来使用。
一个辅助服务可以在特定的包中注册事件以提供特殊的反馈类型并且当最后一个关联的事件被解除的时候发出明确的超时提醒。
三、通告策略
对于每个回馈类型只有一个辅助服务被通知,服务登记处按顺序被通知,因此,如果有两个服务为同一个包中的同一回馈类型注册那么第一个会被通知,然而有可能的是,可以为一个给定的回馈类型去把一个服务注册为默认的,这样的话如果没有其他的服务来取代这个事件这个服务就会被呼出使用,换句话说,默认的服务不会与其他的服务竞争并且不管注册的顺序而被通知。
四、公共方法:
abstract void onAccessibilityEvent(AccessibilityEvent event)
回调AccessibilityEvents.
参数
event 一个事件
public final IBinder onBind (Intent intent)
实现返回一个内部的辅助接口的实现,子类不能被重写。
参数
intent 与服务相绑定的意图,注意其他任何包含在Intent的外部意图将不能在此使用。
返回值
返回一个客户端可以在服务上访问的IBinder。
public abstract void onInterrupt ()
打断辅助回馈内容时呼叫。
五、保护方法:
5.1 protected void onServiceConnected ()
这个方法是AccessibilityService声明周期的一部分,在系统成功与服务绑定后才被呼叫,如果用来设定AccessibilityServiceInfo.这个方法更为方便。
六、Word版本下载:
http://download.csdn.net/source/2667675
原始出处:
java_cofi:http://java-cofi.javaeye.com/
博客园:http://www.cnblogs.com
农民伯伯: http://www.cnblogs.com/over140/
相关文章推荐
- Android Activity为什么要细化出onCreate、onStart、onResume、onPause、onStop、onDesdroy这么多方法让应用去重载?(转)
- 关于java.lang.UnsatisfiedLinkError的处理
- 安卓开发-Activity中finish() onDestroy() 和System.exit()的区别
- 浏览器客户端的数据存储
- unity2d之2d帧动画创建
- GeoServer安装和部署shp文件
- 监听键盘是否在界面上
- 享元模式(Flyweight)
- 一些简单常见的html标签
- jqgrid项目使用记录/注释版/未整理/
- WinXP下如何安装及御载MySQL服务
- .NET微信公众号开发之创建自定义菜单
- 理解Mysql语句:insert 表名 select null 及 select last_insert_id()
- 热电效应
- 【matlab】:matlab的linspace函数解析
- sql 聚合函数
- unbantu安装wmvare
- 求解斐波那契数列的动态规划方法
- 记录马云(一)
- 优先级反转及其解决方法