requestLocationUpdatesを使用しています
GoogleApiClient client;
LocationRequest request;
PendingIntent callbackIntent;
からFusedLocationProviderApi
。画面がオンの場合、正常に頻繁に動作しています。
ただし、デバイスがスリープ モードに入るときは、PendingIntent は呼び出されません。スリープ モードで更新を取得し続けるにはどうすればよいですか?
requestLocationUpdatesを使用しています
GoogleApiClient client;
LocationRequest request;
PendingIntent callbackIntent;
からFusedLocationProviderApi
。画面がオンの場合、正常に頻繁に動作しています。
ただし、デバイスがスリープ モードに入るときは、PendingIntent は呼び出されません。スリープ モードで更新を取得し続けるにはどうすればよいですか?
深い睡眠モードで場所を取得できましたか? 私も同じ問題に直面しています。デバイスがウェイクアップした後、現在のタイムスタンプ (ウェイクアップ後の時間) を含む場所 (ディープ スリープ モード中に更新された) を受信したことを確認しました。私自身の理由で、Application クラスを Listener として作成しました。そして、onLocationChanged() がヒットしない理由が、コンポーネントがディープ スリープ モードで実行されていないかどうかはよくわかりません..私の場合はアプリケーションです。
私には 1 つの解決策があります。定期的に起動する ALarmManager を使用し、CPU を起動して getLastKnownLocation() を呼び出してウェイクロックを解放する partial_wakelock を取得できます。変位に基づいた場所が必要なため、これは私の場合には適切な解決策ではないようです。
編集 有効
な解決策は、ディープ スリープ モードの http です。質問は無関係ですが、文脈は同じです。この方法で場所を受信することもできます。