2016-01-22 50 views
0

我開發了一個android手錶應用程序。它有一個播放按鈕,點擊時可啓動傳感器管理器來分析傳感器數據。使用這些數據,我可以識別用戶執行的手勢。所以,當我按下播放按鈕時,傳感器數據分析就會開始,用戶可以看到一個停止按鈕,以隨時停止傳感器。因此,一旦傳感器啓動,如果我滑動並返回到主屏幕並再次打開應用程序,我可以看到播放按鈕而不是停止按鈕。我想在用戶返回時看到停止按鈕。理想情況下,我想運行前臺服務來檢測傳感器讀數。如何在Android手錶中爲UI提供前臺服務?

所以我想在用戶點擊播放按鈕時啓動前臺服務,當用戶打開通知時,他必須看到停止按鈕來停止傳感器數據以及服務。我怎樣才能做到這一點?請指教。

回答

0

UI:

您所需的UI數據保存到當前狀態的使用Bundle(停止按鈕出現)onSaveInstanceState該實例您onPause(),以便它可以由onResume()使用onRestoreInstanceState進行檢索和瀏覽。

服務:

服務應該綁定到活動,以便兩者直接通信。該服務可以使用

stopService(new Intent(this, MyService.class)); 

活動停止您也可以撥打stopSelf()從服務中。

+0

非常感謝。你有任何示例代碼可以參考嗎? – TheRedOne

+0

saveBundleInstanceState在這裏:http://stackoverflow.com/questions/151777/saving-activity-state-on-android – childofthehorn

+0

併爲您的服務:http://stackoverflow.com/questions/1886874/how-to-stop-service本身 – childofthehorn