2013-06-20 23 views
1

我想創建一個重新映射觸摸輸入的AccessibilityService,因此我需要攔截觸摸事件。沒有收到任何類型的AccessibilityEvent TYPE_TOUCH_INTERACTION_START

我注意到在API 17(Android 4.2)中增加了類型爲TYPE_TOUCH_INTERACTION_STARTTYPE_TOUCH_INTERACTION_END的AccessibilityEvent。

但是,當我在Android 4.2模擬器上測試我的代碼(定位API 17)時,我無法接收這樣的事件,但是所有其他事件(如TYPE_VIEW_CLICKED)都已正確接收。

我錯過了什麼嗎?

我的AndroidManifest.xml:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="net.onthewings.touchservice" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="17" 
     android:targetSdkVersion="17" /> 
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> 
    <uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 

     <service android:name=".TouchService" 
      android:label="TouchService" 
      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/accessibility_service_config" /> 
     </service> 

    </application> 

</manifest> 

我accessibility_service_config.xml:

<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android" 
    android:accessibilityEventTypes="typeAllMask" 
    android:accessibilityFlags="flagIncludeNotImportantViews" 
    android:accessibilityFeedbackType="feedbackVisual" 
    android:notificationTimeout="0" 
    android:canRetrieveWindowContent="true" 
/> 

回答

1

轉出,TYPE_TOUCH_INTERACTION_START當 「觸摸瀏覽模式」 TYPE_TOUCH_INTERACTION_END只會收到開啓(通過任何服務)。

+0

我該如何設置觸摸探索模式? – user3207655

相關問題