我試圖從Apple Watch中記錄和讀取歷史數據。 不幸的是,關聯的DataList總是等於零。使用watchOS2讀取加速度計數據 - iOS9 - XCode 7.0
更明確,我的手錶上的應用程序,我有兩個按鈕: - 一個開始記錄數據 - 一個讀取數據
這裏是相關的代碼 - 在WatchKit擴展運行:
- (IBAction)start {
// Check authorizations with boolean
bool toTest_AccelerometerAvailable = [CMSensorRecorder isAccelerometerRecordingAvailable];
bool toTest_RecordingAuthorized = [CMSensorRecorder isAuthorizedForRecording];
// Check if recorder has been initialized, then launch record session for 20 seconds
if ([CMSensorRecorder isAuthorizedForRecording]) {
if (!self.recorder)
{
self.recorder = [[CMSensorRecorder alloc] init];
}
NSTimeInterval interval = 1 * 20;
[self.recorder recordAccelerometerFor:interval];
}
}
- (IBAction)read {
// Check authorizations with boolean
bool toTest_AccelerometerAvailable = [CMSensorRecorder isAccelerometerRecordingAvailable];
bool toTest_RecordingAuthorized = [CMSensorRecorder isAuthorizedForRecording];
// Try to get historical data from the last 2 days
NSDate *now = [NSDate date];
NSDate *startDate = [now dateByAddingTimeInterval:-2*24*60*60];
CMSensorDataList *dataList = [self.recorder accelerometerDataFrom:startDate to:[NSDate date]];
}
在iOS應用程序端,我要求&健身授權表格。
調試會話結果如下:
布爾toTest_RecordingAuthorized總是等於真(啓動&讀功能) - 進入形成&健身被要求在相關的iOS應用。
布爾toTest_AccelerometerAvailable總是等於假(開始&讀取功能)
CMSensorDataList * DataList控件是
測試使用模擬器也與實際設備的任何時間等於零(iOS 9.0 & watchOS 2.0)。同樣的結果!
我想,只要isAccelerometerRecordingAvailable返回false,這個問題將長期存在。 不知道如何解決它......
有誰還嘗試這個問題並解決它?