簡體   English   中英

iOS CoreMotion API-是否可以跟蹤一段時間內某人走路的次數?

[英]iOS CoreMotion API — Is there a way to keep track of how many times someone goes walking over a period of time?

我正在嘗試編寫一個簡單的應用程序,使我可以使用CoreMotion API在設定的天數內跟蹤平均步行時間。 CMPedometer API允許您訪問上一個會話的startDate和endDate。 我當時想,執行此操作的一種簡單方法是在用戶默認設置中保持會話的“計數”(即,每次計步器跟蹤您的步行計數時,計數都會增加1),並且還要保持endDate與startDate時差之和。 然后,我將總時間差除以計數即可得出平均步行時間。

我不確定該怎么做。 有沒有一種方法可以在計步器每次跟蹤步行時收集此數據?

CMPedometer API使您可以訪問上一個會話的startDate和endDate。

那是哪個API? CMPedometer文檔僅指定以下方法:

- queryPedometerDataFromDate:toDate:withHandler:

使用此方法可檢索指定日期之間的歷史行人數據。 該方法異步運行,並將數據傳遞到您提供的塊。 僅存儲了過去7天的數據,可供您檢索。 指定開始日期超過7天只會返回可用數據。

我認為您正在尋找CMMotionActivityManager 根據文檔,從CMMotionActivityManager獲取活動非常簡單:

- queryActivityStartingFromDate:toDate:toQueue:withHandler:

該查詢將為您提供CMMotionActivity對象數組。 按“步行=是”過濾,您將獲得指定時間段內的步行會話列表(僅適用於過去7天)。

我不能說它的准確性如何,或者您是否需要做一些自己的數據清理/過濾工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM