2015-11-14 98 views
0

我正在處理通知到達時需要知道的應用程序。我正在使用無障礙服務來完成這項任務。AccessibilityService隨機工作?

當我對我的自定義輔助服務(訪問Accessibility-> MyApp - > ON)給予權限時,onServiceConnected被調用,並且一段時間內一切正常。我的應用程序收到事件..我的應用程序停止收到有關新通知的通知。但是經過一段時間(如小時左右)後,我的應用程序停止收到關於新通知的通知。我必須禁用AccesibilityService並重新啓用才能工作。

當然,因爲用戶不會這麼做,每次這是不能接受的..

下面是我的代碼。

@Override 
protected void onServiceConnected() { 
    super.onServiceConnected(); 


    AccessibilityServiceInfo info = new AccessibilityServiceInfo(); 
    info.eventTypes = AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED; 
    info.packageNames = null; 
    info.feedbackType = AccessibilityServiceInfo.DEFAULT; 
    setServiceInfo(info); 

} 

和Manifest。

<!-- Accesibility Service Declaration below --> 

    <service android:name="services.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/service_request" /> 

    </service> 

出於測試目的,我使用的是運行在KitKat Android OS上的HTC One M7。那麼爲什麼我的應用在一段時間後停止接收通知?任何幫助將非常感激!

回答