問題タブ [android-fusedlocation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
6332 参照

android - バックグラウンドでの位置情報更新のための PendingIntent を持つ FusedLocationApi。更新を受信できません

Google のサンプル ソース コードは、フロントエンドで継続的な位置情報の更新を実装するのは簡単でしたが、FusedLocationApi と PendingIntent を使用してバックグラウンドでの位置情報の更新がどのように機能するかを明確に理解することはまだできません。

LocationService クラス:

MainActivity コードが乱雑に見えるので、ドライブ リンクでコードを共有します: https://drive.google.com/open?id=0B7QMYFlbkUpOVjkxMUtfenRLXzA

ただし、https://gist.githubusercontent.com/allenchi/c9659369c306752c0047/raw/16d6cd8e311013379e55b496d2b6d13347f418d6/gistfile1.txtの例に従いました。

例の次の部分は、MainActivity での配置を理解できないものです。ブロードキャスト レシーバーを使用して現在地の更新を受信するにはどうすればよいですか? また、バックグラウンドで実行されている FusedLocation と、オンザフライ GPS トラッカーを実装するためにどのように利用できるかを明確に理解する必要があります。

0 投票する
3 に答える
2849 参照

android - onResume メソッドで位置情報の更新をリクエストするために LocationServices を再開する方法

私のアプリは を使用Google Maps Apiしてユーザーの現在の場所を表示し、次の 2 つの問題を除いて正常に動作しているようです。

1 アプリを再起動しない限り、ユーザーの位置情報はリアルタイムで更新されません。

LocationServices.FusedLocationApi2 メソッドで再開する方法がわからないonResumeため、ユーザーがアプリを終了すると GPS が再起動しません。

このサイトのチュートリアルや同様の質問にある提案のほとんどに従ってみました (たとえば、A サービスで位置情報の更新を要求する必要がありますか? )。

これが私のコードです:

}

0 投票する
1 に答える
754 参照

android - Fused Location Provider は、変位時に位置情報を更新しません

Fused Location API を使用して位置情報の更新を取得しました。setTimeInterval に基づいてLocationRequestを設定しているときに更新を取得しています。しかし、10m 移動の最新情報だけが必要です。だから私は setSmallestDisplacement(10) を配置しました。しかし、 setSmallestDisplacement(10 )を配置すると、更新が得られませんでした。以下は私の LocationUpdate クラスです

}

どなたか解る方がいらっしゃいましたら解決策を教えてください。前もって感謝します

0 投票する
0 に答える
1034 参照

android - FusedLocationApi バックグラウンド 位置情報サービスがアップデートのランダムな受信を停止する

保留中の意図で FusedLocationApi を使用して、期間の場所の更新を取得しようとしているので、処理のためにデータをサーバーに送信できます。すべてが機能します。ただし、ブロードキャストの受信が停止する場合があります。サービスを続行するには、サービスを再起動する必要があります。

START_STICKY を返すサービス onStartCommand が既にあるため、アプリが強制終了された場合でも、サービスを再度開始する必要があります。さらに、Boot Completed Intent Receiver も追加したので、電話が故障してユーザーが電話を再起動した場合、サービスが再起動されます。

したがって、すべてが正常に機能しているように見えますが、ある時点ですべてが停止します。動作を停止すると、最後に受け取った場所が NULL であることに何度か気付きました (プロジェクト全体ですべての場所の更新とエラー メッセージをログに記録します)。

位置情報サービスが機能しなくなる理由はありますか?

PSメッセージを入れてその関数にフックし、呼び出されていないため、接続障害はありません。また、私もそれを記録しているので、それはインターネットの障害ではありません。インターネットが復元されると、通常/期待どおりに続行されます。

ありがとう。

主な活動は次のとおりです。

バックグラウンド サービスは次のとおりです。

ブロードキャストレシーバーは次のとおりです。

間隔を 5 分に、高速間隔を 2 分に設定しました。注: Web サービス操作の一部の関数呼び出しとコードを削除しました

すべてが機能し、期待どおりに更新を取得しますが、ある時点で、放送受信機は何も取得しません。ログを確認すると、OptInStatus は変化せず、最後に受信したロケーション ブロードキャストは NULL でした。

Web サービスを呼び出してステータス メッセージを処理するコードの他の部分は、サービスや位置情報の要求には触れていません。

0 投票する
0 に答える
550 参照

android - 望ましい精度の Android GPS 位置情報

Google Play api を使用してデバイスの位置を取得し、IntentService を介して定期的に (10 分ごとまたは場所の変更時に) サーバーに送信しています。

LocationRequest.PRIORITY_HIGH_ACCURACYビルド中に使用してLocationRequestおり、デバイスの GPS もオンになっています。

API は、高精度 (<=100) で位置を返す場合もありますが、ほとんど (>1000) の場合もあります。

位置精度はどのように達成できますか?

私の情報源:

0 投票する
0 に答える
375 参照

android - 移動していないときの位置マーカーのジャンプを修正

私は Androids FusedLocationApi を使用して、定期的に位置情報の更新を受け取り、現在地を GoogleMaps に表示しています。
精度が時々不正確になる可能性があることを知っているため、通りを下る途中で大きな回避を行います。

じっと立っていると、精度の高い値と間違ったロケーションの位置が静止することがあります (ええ、それは私が認識している正常な状態です)。
ただし、GoogleMapsは位置マーカーを変更しませんが、その地点の精度半径を更新します。

では、更新ごとに移動するのではなく、実際にマーカーを次の場所に移動する必要がある時期をどのように知ることができますか (建物内で多くのジャンプが発生するのはなぜですか)。すべての場所に使用する速度値があるわけではありません。

その問題と戦い、それを修正した人はいますか?

0 投票する
3 に答える
105 参照

android - Android: Find Current Location の改善

Androidで現在のユーザーの場所を見つけたい。

私はこれらのコードを使用します:

一部のネットワーク(データモバイル)で動作します。ただし、すべての場所で機能するわけではありません。(GPSにも対応しています)

ネットワークをより適切に処理するために、他にできることはありますか?

0 投票する
2 に答える
1447 参照

android - Google Play サービスのロケーション API が間違ったロケーションを提供することがある

私のアプリは、Google Play サービス API を使用してユーザーの位置を取得し、デバイスが半径 50 mt の特定の領域の内側にあるか外側にあるかを確認します。アプリは PRIORITY_HIGH_ACCURACY と 1 分の間隔を使用します。そこで、GoogleApiClient を作成します。

onConnected コールバックで:

私のアプリは、精度 (精度が 200 mt を超える場合は破棄します) と時間 (古すぎる場合は破棄します) に基づいて場所をフィルター処理します。

アプリは、実際の場所から約 500 メートル離れた間違った場所の更新を返すことがある一部の特定の地域を除いて正常に動作し、それらの間違った場所は常に同じ場所の近くにあり、セル タワーから少し離れています。

これらの領域では、間違った場所と正しい場所の組み合わせが得られ、アプリは、デバイスが関心のある領域の内側にある場合と外側にある場合があると考えています。

位置情報が更新されたら、他の 3 人が続けて位置を確認するのを待ちます。また、以前とまったく同じ場合は場所をフィルタリングします。これは、これらのエラーが発生したときに、4 つの間違った場所が連続して受信され、それぞれが他の場所とわずかに異なることを意味します。

この動作を防ぐ方法はありますか? これはセルタワーが原因ですか?