2015-09-07 63 views
3

我在我的應用程序小部件中有一個計時器。此計時器將每秒更新Widget用戶界面。所有的過程完美地工作。但是,當用戶從最近的應用程序任務列表中刪除我的應用程序,計時器立即停止Android:停止工作當用戶從最近的任務列表中刪除應用程序的小部件

任何人都知道如何解決這個問題?

+0

您是否使用服務來運行計時器? –

+0

不,我不使用服務,我將在方法「onUpdate」中啓動計時器。計時器是一個靜態字段。 –

+0

因爲我過去做過類似的項目,所以這樣做不起作用。 我曾嘗試過您的解決方案,計時器在一段時間後停止,無論如何。我會在答案中提出一些建議。 –

回答

1

把你的邏輯控制WidgetService。在onStartCommand()方法中,啓動一個時間調度器事物,或者註冊爲ACTION_TIME_TICK,它將每分鐘發送一個事件。

還記得從您的Service返回START_STICKY,以便操作系統可以在操作系統本身關閉進程或從最近的任務列表中滑開時重新啓動服務。

一個需要注意的是重新啓動服務後從最近刷卡不會發生在KitKat Android二重奏到一個錯誤。雖然它有一個骯髒的解決方法。

+0

不存在修復此錯誤沒有服務? –

+0

我不認爲這是一個錯誤。請參閱此處的答案:http://stackoverflow.com/a/6299862/2511775 'BroadcastReceiver'對象得到清理很快。而'AppWidgetProvider'是'BroadcastReceiver'的子節點。 –

+0

@Sarlak我厭倦了你的想法,但不工作,我返回START_STICKY但操作系統未重新啓動服務 –

相關問題