Комментарии 7
Спасибо за урок. Расскажите, можно ли передавать с часов на смартфон информацию от датчиков? С примером, пожалуйста.
Здравствуйте) хочу сказать, что эта тема также обширна и также достойна отдельной темы)
Первое, что необходимо сделать (при наличии аккаунта разработчика) — это подключить HealthKit в Capabilities для Iphone и AppleWatch Extension таргетов.
Второе — сделать запрос авторизации
Первое, что необходимо сделать (при наличии аккаунта разработчика) — это подключить HealthKit в Capabilities для Iphone и AppleWatch Extension таргетов.
Второе — сделать запрос авторизации
if ([HKHealthStore isHealthDataAvailable]) {
HKHealthStore *healthStore = [[HKHealthStore alloc] init];
NSSet *shareTypes = [NSSet setWithObjects:
[HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierBodyMass], // пример
nil];
NSSet *readObjectTypes = [NSSet setWithObjects:
[HKObjectType characteristicTypeForIdentifier:HKCharacteristicTypeIdentifierDateOfBirth], // пример
nil];
[healthStore requestAuthorizationToShareTypes:shareObjectTypes
readTypes:readObjectTypes
completion:^(BOOL success, NSError *error) {
if(success)
{
// здесь ваши действия при успешной авторизации
}
else
{
// в случае ошибки авторизации
}
}];
}
Далее получаем значения в указанном диапазоне времени:
Далее смотрим по обстоятельствам и в удобной форме делаем пересылку данных на IPhone, используя текущую статью)
// установка дат для выборки
NSDate *startDate = //...
NSDate *endDate = //...
HKSampleType *sampleType = [HKSampleType quantityTypeForIdentifier:HKQuantityTypeIdentifierStepCount];
// создание выборки по указанным параметрам
NSPredicate *predicate = [HKQuery predicateForSamplesWithStartDate:startDate endDate:endDate options:HKQueryOptionStrictStartDate];
// создание сортировки по указанным параметрам
NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:HKSampleSortIdentifierStartDate ascending:YES];
// получение потока значений с необходимыми параметрами
HKSampleQuery *sampleQuery = [[HKSampleQuery alloc] initWithSampleType:sampleType
predicate:predicate
limit:HKObjectQueryNoLimit
sortDescriptors:@[sortDescriptor]
resultsHandler:^(HKSampleQuery *query, NSArray *results, NSError *error) {
if(!error && results)
{
for (int i = 0, i < results, i++)
{
// NSLog ("%@", rusults [i]);
}
}
}];
// здесь выполнение запроса
[healthStore executeQuery:sampleQuery];
Далее смотрим по обстоятельствам и в удобной форме делаем пересылку данных на IPhone, используя текущую статью)
Complications правильнее перевести как «усложнения» — этот термин в применении к механическим часам означает дополнительные функции помимо показа времени: число месяца, день недели, турбийон и пр.
История развивается по спирали… кто-то ведь ещё помнит JogDial?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Три наиболее значимых нововведения с приходом watchOS2