2012-04-23 121 views
0

Android中是否有可能獲取狀態欄的狀態,特別是添加了新通知?Android - >狀態欄狀態已更改

如果在狀態欄中發生任何事情,它需要啓動一個活動。我不是指「狀態欄窗口」。

也許我可以用一個IntentFilter的一樣:

IntentFilter statusBarIntentFilter = new IntentFilter(android.bla.bla.ACTION_STATUSBAR_STATE_CHANGED); 

謝謝至今在先進!

BR

回答

0

是否有possibily內的Android得到了狀態欄的狀態,尤其是新的通知加入呢?

不,對不起。您不能窺探Android SDK中的其他應用程序通知。

+0

嗨,感謝您的快速響應!它不是我的意圖,窺探另一個應用程序的通知內容。我只想知道,如果一個新的符號或任何被添加到狀態欄。之後我想開始各種活動。我可以使用AccessibilityService(AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED),但這需要相對較深的/危險的權限授權! – 2012-04-23 18:05:36

+1

@ReginaBalusz:恕我直言,你不應該因爲顯示通知而「開始各種活動」。通知背後的主要觀點是** NOT **在後臺發生註釋事件時中斷用戶。是的,您可以使用輔助功能API來檢測通知,但這些API背後的要點是提供輔助功能,而不會影響現有的應用程序流。突然冒出一項活動將被視爲「干擾現有的應用程序流程」。 – CommonsWare 2012-04-23 18:18:08

+0

對於「請勿打擾其他應用程序的流程」,您完全正確!問題是我正在編寫一個應用程序,它將監聽發生的任何日曆事件。不幸的是,沒有IntentFilter,它可以用來收聽日曆觸發的「Reminder-Events」。這個IntentFilter可以在BroadcastReceiver中使用。我確定的唯一方法是,日曆應用程序在提醒的情況下向狀態欄添加通知。所以我想要找出一種方式,被告知,一個新的通知被添加到STatus欄中。我想找一個替代品。 – 2012-04-23 18:46:27

0

Android中是否有可能獲得狀態欄的狀態,特別是添加了新的通知?

您可以通過使用AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED偵聽狀態欄通知。

這是關於這個問題的StackOverflow answer,和here is a working example我把這個答案放在一起。實際上,我把這個例子放在一起,因爲一個應用程序基本上是用廣告向我妻子的通知欄發送垃圾郵件,並且沒有明確的方式告訴誰是違規應用程序。

+0

示例應用域名已被刪除 – codercat 2014-03-05 08:16:36

+0

@iDev我更新了鏈接。 – TomJ 2014-03-11 01:00:56