天天看點

android中特殊應用跟系統特殊功能協助配合通訊問題

                   在實際項目應用中,最近有一個需求就是進入一個特殊的應用後,系統的某個功能不能起作用。當然,這個通信有很多辦法可以做到。筆者可以想到的至少有如下幾種

1、利用property熟悉來實作,這樣的話需要增加一個特殊的屬性;

2、利用資料庫,在資料庫中加一條記錄,進入應用的時候設定一下,在系統部分可以利用content observer或者在特殊事件來的時候先判斷讀取一下這個值也可以;

3、利用intent,發一個特殊的intent出來,在系統這邊裝一個filter;

4、利用getRunningTasks,也就是activities service的運作資訊來判斷;

        筆者比較上面這四種,實作都是可以實作的,但是利用現有系統的一些資訊來解決這個問題不是更好嘛!是以筆者選擇方案4.也就是做一個接口,在該接口裡面判斷這個特殊的應用是不是在最前台了。這一點還是非常有用,簡單代碼如下:

     通過筆者的測試實踐,該方法完全可行。