このトピックに関しても同様の質問がありますが、特定の要件に関するご意見やご提案が必要です。正確な中間地点をバックグラウンドで取得し、Androidの開始地点と終了地点の距離を計算してください
ここに私の必要があります - 私たちはユーザーの旅行を追跡する1つのアプリケーションを開発しています。 アプリケーションは、バックグラウンドでそのユーザーの場所の収集を開始します。ユーザーがAppを開始すると、App.Background Serviceはユーザーの特定の期間内の移動に基づいて場所を取得します。 ユーザーがアプリからの旅行を「停止」すると、記録されたすべての場所の助けを借りてユーザーが移動した距離が計算されます(Google距離計算APIを使用)。 アプリは理想的には正常に動作します。 しかし、主な挑戦は - です。いくつかのシナリオでは、ユーザーの正確で正確な場所を取得できません。シナリオに影響する - インターネットなし、2g/3gのデータプラン、GPSが正確なデータを返さない特定のエリアなど
誤ったトリップ距離とルートが発生します。 。
いずれにしても、最良の代替案/提案がありますか? P.P. - GPS、ネットワーク、FusedLocationProviderを試しました。我々は、精度とdistances.Got近い点に基づいてロジックを実装している
-
EDIT 2。そして、実際の道路から気を散らしているいくつかのロケーションポイントを修正する、Googleの有用なAPIを見つけました。他人の参考のためにここに投稿...
コードスニペットを入力してください。同じの例? –
https://developer.android.com/guide/topics/sensors/sensors_motion.html#sensors-motion-stepcounter ステップ数をカウントするコードがあります。ステップを聞くこともできます。 https://stackoverflow.com/questions/6368286/detecting-gps-on-off-switch-in-android-phones ここでは、GPSがオフになっているかどうかを検出できます。 GPSがオフになったら、加速度計を使用して歩数をカウントするだけです。 GPSが再びオンになったとき、acceletometerでカウントステップを停止する –