2016-09-28 8 views
0

これは、走っているときや泳いでいるときにユーザーの速度/速度/速度を計算するのに必要なパターンに関するアドバイスを求める一般的な質問です。HKHealthKit Watch OS - 速度または 'ペース'を計算する

具体的には、コンパニオン電話機から切断された時計OSからこれを計算したいと考えています。ウォッチ3 /ウォッチOS 10.0のGPS機能により

は、最善のアプローチは、に次のようになります。

  1. スタート場所マネージャ
  2. の地点間の計算距離と時間...
  3. 平均速度を計算しますか?

もっと良い選択肢がありますか?

https://www.bignerdranch.com/blog/watchkit-2-hardware-bits-the-accelerometer/ここでは、デバイススピードにCoreMotionを使用することをお勧めします。しかし、これは私の見解ではむしろ「デバイススピード」を表していて、ユーザーのスピードを超えているとは限りません。

アドバイスや経験があれば幸いです。

ありがとうございました。

答えて

2

あなたがリンクした記事は、Watch 2ではなくWatchOS 2用です。モーショントラッキングはかなり良いですが、デバイスの正確な速度を得るにはまだGPSを使用する必要があります。

(あなたがHKAnchoredObjectQueryとリアルタイムデータの近くに取得することができますEDIT。これは、ほとんどの状況で十分です)、あなたは他の場所に関連する計算を行う必要はありませんし、リアルタイムデータを必要としない場合、あなたHKWorkoutSessionだけのロケーションマネージャを起動する必要はありません。これは、デフォルトでGPSまたはモーションデータ(これはいつでもより正確であり、その時点で利用可能です)を使用し、すべてを管理します。運動が終わったら、距離サンプルを照会して距離サンプルを計算することができます。

ライブモーションデータが必要な場合は、説明した手順は正しいですが、ユーザーが屋外で最初に確認する必要があります。ユーザーが屋内にいる場合や弱いGPS信号を使用してモーションデータを使用している場合(HealthKitを使用している場合はHKMetadataKeyIndoorWorkoutを適切に設定してください)。

関連する問題