2017-09-23 9 views
-5

アプリがフォアグラウンドでなくても、定期的(5秒ごと)に私の位置情報(緯度、経度)をWebサーバーに送信する必要があります。バックグラウンドサービスですが、APIレベル26以降では、アプリケーションが実行されていないときにいくつかの制限があることを文書で読み取っています。Webサーバーに位置情報を送信するなどの定期的なジョブを実行する最適かつ最適な方法は何ですか?

ご協力いただければ幸いです。

+0

なぜ落札ですか?私はちょうどそれを行う正しい方法を知りたい。 – Khani

+0

スタックオーバーフローのルールを読んでツアーをする必要があります。質問や質問を正しく聞く方法を教えてくれます。ちょうどあなたはフラグが立てられません。 – Syfer

答えて

0

あなたのアプリがスリープ(またはドーズ)モードに入ることを避けるために、フォアグラウンドサービスを開始し、却下不可通知を表示する必要があります。

タイミングに関しては、Handler + Runnableを使用することができます。

Handler + Runnableは必ずしもServiceクラスにある必要はありません。サービスだけでなく、起床されるアプリケーション全体になります。

更新日: 私が知っている唯一の方法は、デバイスを目覚めさせておくことですが、もちろんバッテリの消費に影響します。おそらくAlarmManagerはより長い時間(> 15分)、バッテリーの消耗が少なくて済みます。

+0

あなたの答えをありがとう。しかし、リソース使用量(バッテリー消費量など)はどうですか?これは最適な方法ですか? – Khani

+0

私の回答を更新しました –

関連する問題