DX・デジタルトランスフォーメーション

AppStoreにて無料公開中! ”システム手帳”で検索! - AppStoreへ iPad版 - iPhone版

ブロックチェーン・暗号技術 | android | iOS | Web | アプリの著作権 | 日本のなりたち | 禅・大乗仏教 | 新しい社会

モーションコプロセッサによる歩数取得の問題点

iPhoneは5sからモーションコプロセッサを搭載している。

要するに万歩計がiPhoneに内蔵されたのだ。

それ以前はアクセラロメータを使って歩数を取得していたので、リアルタイムに常に観測する必要があったためiPhoneのバッテリーが消費してしまう問題があった。

5s以降の機種では

CMPedometer#queryPedometerDataFromDate:(NSDate *)start                            toDate:(NSDate *)end                       withHandler:(CMPedometerHandler)handler

を呼び出せば歩数の履歴が秒単位で取得できるようになった。

データの保持期間は7日間だ。

いくつか問題がある。

1. Healthkitに保存されている歩数とCMPedometerに保存されている歩数が若干異なる値である。

多い日は多いし少ない日は少ないのだが値が同じではない。

healthKitからの歩数取得

HKHealthStore *healthStore = [HKHealthStore new];HKStatisticsCollectionQuery *query = [[HKStatisticsCollectionQuery alloc] initWithQuantityType:[HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierStepCount] quantitySamplePredicate:nil anchorDate:NSDate intervalComponents:NSDateComponents];[healthStore executeQuery:query];

2. CMPedometer で取得するデータが取得するタイミングによって値が変わることがある。

前日の1日の歩数を翌日の午前中に取得した値と翌日の午後に取得した値が異なることがあるのだ。

歩数データは正確なものではなく参考程度のものだから細かく気にする必要もないが、動作が不安定なのは改善してほしいところだ。

2023年12月
     12
3456789
10111213141516
17181920212223
24252627282930
31      
android
iOS
web
?スA?スv?ス?ス?スフ抵ソス?ス??
?スu?ス?ス?スb?スN?ス`?スF?ス[?ス?ス?ス^?ステ搾ソス?スZ?スp
?スV?ス?ス?ス?ス?スミ会ソス
?スT?スE?ス?ス謨ァ?ス?ス
?ス?ス?ス{?スフなりた?ス?ス

AppStoreにて無料公開中! ”システム手帳”で検索! - AppStoreへ iPad版 - iPhone版
デジタルトランスフォーメーションで新しい生活を提案!