说实话,除了能在非framework层利用代码在系统设置模块添加一个节点外,我实在搞不懂这个辅助功能到底有什么用,不过既然存在应该就有有使用的价值。
(继承AccessibilityService)extends AccessibilityService:
必须重写方法:
onAccessibilityEvent(AccessibilityEvent event){函数接收系统发来的的AccessibilityEvent} and onInterrupt(系统准备中断AccessibilityService返回的响应时调用):
public class MyAccessibilityService extends AccessibilityService { final static private String TAG = "MyAccessibilityService" ; public void onAccessibilityEvent(AccessibilityEvent event){ final int enventType = event.getEventType(); } public void onInterrupt(){ Toast.makeText(this,"中断抢红包服务",Toast.LENGTH_SHORT).show(); }
然后在AndroidManifest声明:meta-data主要用于添加xml布局文件:
<service android:enabled="true" android:exported="true" android:label="@string/app_name" android:name=".MyAccessibilityService" android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"> <intent-filter> <action android:name="android.accessibilityservice.AccessibilityService"/> </intent-filter> <meta-data android:name="android.accessibilityservice" android:resource="@xml/qianghongbao_service_config"/> </service>
创建xml目录并创建布局文件:
<?xml version="1.0" encoding="utf-8"?> <accessibility-service xmlns:android="http://schemas.android.com/apk/res/android" android:description="@string/accessibility_description" android:accessibilityEventTypes="typeNotificationStateChanged|typeWindowStateChanged" android:packageNames="com.yzy" android:accessibilityFeedbackType="feedbackGeneric" android:notificationTimeout="100" android:accessibilityFlags="" android:canRetrieveWindowContent="true"/>最后在activity中写一个button,实现跳转:
public void onClick(View view){ Intent intent = new Intent(android.provider.Settings.ACTION_ACCESSIBILITY_SETTINGS); startActivity(intent); }END