問題タブ [fusedlocationproviderapi]

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 に答える
591 参照

android - Android FusedLocationAPI GPS の精度が正しくないようです

ユーザーの位置を取得する単純な Android アプリケーションを作成しています。

FusedLocationAPI を使用して位置を提供しています。

ユーザーがボタンを押すと、アプリは最初に最後の既知の場所を確認します。これが 1 分未満で精度が 50m 未満の場合、その場所が使用されます。そうでない場合、アプリは位置が 50m 未満の精度で受信されるまで位置の更新を要求します。その後、バッテリーを節約するために、アプリは更新の要求を停止します。

これは 99% の確率で非常にうまく機能します。ただし、テストでは、同じ位置に対して 2 つの読み取り値が取得されたにもかかわらず、報告された座標間の距離が 110m であるという状況が発生しました。その理由を理解しようとしています。

測定値 #1: 36m の精度で 10:46 に撮影。

読書 #2: 26m の精度で 13:27 に撮影。

ユーザーは同じ場所(約 2m 以内)にいます。それらの位置が精度の端にあるため、ポイント間の距離は最大で 52m しかないと思います。なんで110mなのかわからない

明らかな何かが欠けていますか?

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

java - Fused Location Provider not getting location unless GPS is on

So I have implemented the new Fused Location Provider API to get a location of the user but for some reason, I cannot get any location unless the GPS is on. Not always, will users have their GPS on and I would like to not have to ask them to turn their GPS on every time the load the app. How can I tell the API to give me a location with whatever provider it has available?

Here is my code:

0 投票する
13 に答える
260084 参照

android - AndroidでバックグラウンドでユーザーのGPS位置を取得する最良の方法

私のAndroidアプリでは、数分間隔ごとにユーザーの現在の場所を取得し、Webサービスを使用してセンターサーバーに更新したいと考えています. 現在、ユーザーの現在の場所を取得するために Fused Location Provide を使用しています。リンクを参照してください

今私は、ユーザーの位置を頻繁に取得して Web サービスを呼び出すための最良の方法を知りたいと思っています。

以下は、ユーザーの現在の場所を提供する私のコードです: -

今、どこからこのコードを呼び出さなければなりません。これをバックグラウンド サービスまたは他の場所で使用できますか。

あなたのアイデアを提供してください。

ティア。

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

android - Fused Location Provider アプリのクラッシュと Logcat の理解

融合された位置プロバイダーを使用して現在の位置座標を取得する小さなモジュールを作成しました。

私のMainActivity.javaファイルは次のようになります

モバイルでアプリを実行しようとすると、次のエラーが表示されます: 残念ながら、Module01 が停止しました。Logcatは次 のようになります

            

この問題を解決するにはどうすればよいですか?

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

android - fastInterval を低く設定しすぎると、FusedLocationProvider で要求された位置情報の更新が失われますか?

これに関するドキュメントはあまり見つかりませんでした。実際には、テストするのは簡単でも簡単でもないようです。LocationRequestで使用するために を構築していFusedLocationProviderます。便宜上、ドキュメントへのリンクを次に示します。

http://developer.android.com/reference/com/google/android/gms/location/LocationRequest.html

priority設定されていPRIORITY_HIGH_ACCURACYます。fastestInterval他のアプリから要求された位置情報の更新をアプリが受信できるようになっていることを理解しています。私たちの使用では、バッテリー寿命を犠牲にして正確な場所が必要です。

別のアプリが優先度が低いが間隔が速い位置情報を要求した場合、優先度の低い位置情報の更新fastestIntervalが頻繁に行われているため、位置情報の更新を失うリスクはありますか?

0 投票する
6 に答える
38851 参照

android - Android はメソッド requestLocationUpdates FusedLocationProviderAPI を解決できません

Android受信位置更新のチュートリアルに従おうとしています。サンプル コードはGithub にあります。

この行を除いてすべてが機能しています: LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this);

エラーをスローしていcannot resolve method requestLocationUpdatesます。ドキュメントには何も表示されませんが、私は Android を初めて使用するので、何か不足している可能性があります :)。

これが完全なコードです。私が間違っているアイデアはありますか?ありがとう!

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

android - 非ブロッキング Android FusedProvider API をブロッキングに変換する

非ブロッキング FusedLocationProvider API をブロッキング API として使用しようとしています。これが私がやっていることです(大まかに):

  1. AsyncTask を開始する
  2. バックグラウンド スレッドで、PlayServices/FusedProvider API に接続します。これに使用できるタイムアウト付きのブロック方法があります。
  3. 上記の API を使用して、場所の更新をリクエストします。API は、デバイスを使用して位置を計算し、呼び出し元のスレッドで実行されるコールバックをトリガーします。
  4. を使用してコールバックを待ちますcountDownLatch.await(timeOut,timeUnit)
  5. Fused API がコールバックをトリガーし、場所を取得して を実行するとcountDownLatch.countdown()、ラッチが解放されます。
  6. 場所を返します。

いつでも場所を計算して操作する必要がある可能性があるため、ブロックする方法が必要です。上記のアプローチは機能していますが、ブロックしている同じスレッドから CountDownLatch がトリガーされているため、より良い方法を探しています。これを行うことで冒涜/完全なダンベリーを犯しているかどうかはわかりません。

これが私のコードです:

この場合、無限ループのラッチとブロックするフラグ以外に戦略はありますか? ありがとう。

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

android - Fused Location Provider を使用して有効化/無効化された位置情報サービスの情報を取得する

Google マップを使用してユーザーの位置を追跡するアプリに取り組んでいます。「You are here!」の視認性を変えたい ユーザーが位置情報サービスを手で閉じるか、サービスにアクセスできない状態になると、マーカーが表示されます。このメソッドは、位置情報サービスが有効かどうかの情報を返すことができます:

ただし、位置情報サービスのステータスを一度だけ検出したくはありません。ユーザーが位置情報サービスを開いたり閉じたりするたびに、それを検出してマーカーの可視性を変更する必要があります。要するに、このずさんな疑似コードは、私が聞きたいことを説明しています。

android.location.LocationListener なしでこのタスクを達成する方法が見つかりませんでした。Fused Location Provider を使用するだけで達成したいと考えています。何か考えはありますか?見たい場合に使用したコア構造は次のとおりです。

http://www.androidhive.info/2015/02/android-location-api-using-google-play-services/ (「完全なコード」のタイトルを確認してください)