2016-05-23 14 views
1

Ich benutze Zugänglichkeitsdienst zum Lesen des obersten Pakets. Aber jetzt muss ich die App stoppen und stoppen, dass alle Dienste durch Barrierefreiheit ausgeführt werden. Ich habe auf demselben gefundenen sauberen Meister gesucht, der dasselbe tut. Bitte schlagen Sie vor, wie kann ich das gleiche tun?App mit dem Erreichbarkeitsdienst Android deaktivieren?

+0

Die APIs unterstützen dies nicht. – ChrisCM

+0

Aber sauberer Master macht dasselbe –

+0

Die Teile, die dies tun, sind nicht mit den Accessibility-APIs verwandt. – ChrisCM

Antwort

3

Mit Zugänglichkeit Service können Sie application.Ref Code unten stoppen zwingen

public class MyAccessibilityService extends AccessibilityService { 

    @Override 
    public void onAccessibilityEvent(AccessibilityEvent event) { 
     //TYPE_WINDOW_STATE_CHANGED == 32 
     if (AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED == event 
       .getEventType()) { 
      AccessibilityNodeInfo nodeInfo = event.getSource(); 

      if (nodeInfo == null) { 
       return; 
      } 

      List<AccessibilityNodeInfo> list = nodeInfo 
        .findAccessibilityNodeInfosByViewId("com.android.settings:id/left_button"); 
     //We can find button using button name or button id 
      for (AccessibilityNodeInfo node : list) { 
       node.performAction(AccessibilityNodeInfo.ACTION_CLICK); 
      } 

      list = nodeInfo 
        .findAccessibilityNodeInfosByViewId("android:id/button1"); 
      for (AccessibilityNodeInfo node : list) { 
       node.performAction(AccessibilityNodeInfo.ACTION_CLICK); 
      } 
     } 

    } 

    @Override 
    public void onInterrupt() { 
     // TODO Auto-generated method stub 

    } 
    } 

öffnen Klick Anwendung Einstellung Bildschirm, die u wollen aus installierte Software Stopp erzwingen.

https://developer.android.com/guide/topics/ui/accessibility/services.html#event-details