我正在開發一個非常簡單的GUI開發一個服務,在後臺運行的電話應用程序的過程。Android服務+ BroadcastReceiver,PhoneStateListener
該服務將負責在本地數據庫上記錄數據。據報道,這些數據與Android API允許我獲得的用戶操作有關。
這與用戶接受/拒絕來電時的不同之處在於,用戶是否處於靜音狀態, 用戶的位置等。
另一件事可能是當用戶把他們的手機上充電,開機畫面關閉,訪問的應用程序,聽音樂的時候,用相機等
我不感興趣的數據他們正在使用而不是他們正在做的動作。
我發現了一些相關的類是BroadcastReceiver和另一個PhoneStateListener,但我無法在我的服務中使用它們。
我有一個類(RecordEvents),它擴展了BraodcastReceiver並通過檢查不同的動作(intent.getAction())來實現onReceive方法。如果它是我感興趣的其中一個,我使用Log記錄它。一世()。我實例化了RecordEvents,並在onCreate方法中調用了registerReceiver(recordEvents,filter),recordEvents是RecordEvents的一個實例,Filter是一個IntentFilter,與所有的IntentFilter一起使用我感興趣的意圖操作。
現在,如果我在模擬器/手機上執行了任何我感興趣的操作,則日誌貓上不會顯示任何打印消息。
我在做一些完全錯誤的事情嗎?
BroadcastReceiver是一個正在研究的用於在後臺數據庫中記錄用戶操作的類嗎?
我還使用另一個類(PhoneEvents)延伸PhoneStateListener覆蓋onCellLocationChanged,onDataActivity,onCallStateChanged這個類實例化,並使用TelephonyManager.listen(phoneEvents,PhoneStateListener.LISTEN_CELL_LOCATION | PhoneStateListener.LISTEN_DATA_ACTIVITY | PhoneStateListener。 LISTEN_CALL_STATE);
那樣。
當我在設備上安裝應用程序時,仍然沒有記錄日誌。
我很感謝您的回答。
感謝, 安德烈亞斯