2012-07-26 43 views
0

我的應用程序使用輔助功能API來捕獲其他應用程序生成的通知並對其執行操作。我想添加一個功能,可以取消原始通知(由其他應用程序生成)。通過輔助功能API清除其他應用程序的通知

通常使用通知管理器的方法將不起作用,因爲您必須是創建通知才能清除它的人。可訪問性API讓我可以閱讀其他應用程序的通知,但它是否允許您清除它?

謝謝!

回答

2

不,你不能清除其他應用程序的通知(幸好)。

0
public void onAccessibilityEvent(AccessibilityEvent event) { 
     // TODO Auto-generated method stub 
     if (event.getEventType() == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED) { 
      //Do something, eg getting packagename 
      final String packagename = String.valueOf(event.getPackageName()); 
      final String text = String.valueOf(event.getText()); 

      if(TARGET_PACKAGE.equals(packagename)){ 
       Notification n = (Notification) event.getParcelableData(); 

       try{ 
         n.deleteIntent.send(this,0,new Intent()); 
       }catch(Exception e){e.printStackTrace();} 
     } 
} 

如果已經定義了通知的deleteIntent,可以取消它。

相關問題