時間間隔でいくつかのタスクを実行したいAndroidサービスがあります.スケジューラを使用することを選択しました.サービスの作成メソッドでスケジューラを実装しました.ただし、スケジューラメソッド内のコードは実行されません.ここに私の実装があります.,どこが間違っていますか?
public void onCreate() {
super.onCreate();
Toast.makeText(this, "Share Service created...", Toast.LENGTH_LONG)
.show();
// getSharePrices();
ScheduledExecutorService scheduler = Executors
.newSingleThreadScheduledExecutor();
scheduler.scheduleAtFixedRate(new Runnable() {
public void run() {
getSharePrices();
checkWatchList();
Log.i(tag, "Service created...");
checkWatchList();
}
}, 5, 10, TimeUnit.SECONDS);
}
アプリケーション内からサービスを開始すると、問題なく実行されますが、ブロードキャスト レシーバーによる電話の起動後に開始すると、トースト メッセージが表示されるだけで、それ以上は何も表示されません。