Próbuję wykonać zapytanie do pamięci podręcznej krokomierza na iPhone 6 z iOS 8.1.2, używam obiektywu c, zaimportowałem framework CoreMotion i zawarłem go w projekcie Kod wygląda następującoCMPedometer queryPedometerDataFromDate zwraca błąd 103
NSDate *startDate = [[NSDate date] dateByAddingTimeInterval:-60*60*12];
NSDate *endDate = [NSDate date];
CMPedometer *pedo = [[CMPedometer alloc]init];
[pedo queryPedometerDataFromDate:startDate toDate:endDate withHandler:^(CMPedometerData *pedometerData, NSError *error)
{
if (error)
{
NSLog(@"error: %@", error);
}
}];
To daje mi błąd: error Code CMErrorDomain Domain = = 103
Jeśli robię dokładnie to samo "operacja nie mogła zostać zakończona (błąd CMErrorDomain 103.)." rzecz w Swift w ten sposób
var dateString = "2014-12-15"
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "YYYY-MM-DD"
var startDate = dateFormatter.dateFromString(dateString)
var endDate = NSDate()
pedometer.queryPedometerDataFromDate(startDate, toDate: endDate){
(data, error) -> Void in
if error != nil
{
println("There was an error requesting data from the pedometer: \(error)")
}
else
{
println(data)
}
}
Otrzymuję dane krokomierza i brak błędów.
W obu przypadkach akceptuję okienko informujące o akceptowaniu śledzącej aktywności fizycznej. Dwa razy sprawdziłem, czy aplikacja ma dostęp do odczytu aktywności fizycznej w ustawieniach anonimowości.
Czy ktoś może wyjaśnić, co robię źle?
Hej Shadox, to jest poprawna odpowiedź. Rzeczywiście dowiedziałem się kilka dni temu, ale był tak bardzo podekscytowany, więc zapomniałem zaktualizować moje pytanie. Ale dziękuję za odpowiedź. – Thomas