Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Ссылка платформы CoreMotion ссылка класса CMMotionActivityManager

Опции
Развертывание Target:

На этой странице
Язык:

CMMotionActivityManager

Наследование


Соответствует


Оператор импорта


Swift

import CoreMotion

Objective C

@import CoreMotion;

Доступность


Доступный в iOS 7.0 и позже.

CMMotionActivityManager класс обеспечивает доступ к данным движения, хранившим устройством. Данные движения отражаются, идет ли пользователь, выполнение, в механизме, или стационарный в течение многих промежутков времени. Приложение навигации могло бы искать изменения в текущем типе движения и предложить различные направления для каждого. Используя этот класс, можно попросить уведомления, когда текущий тип движения изменяется, или можно собрать прошлые данные изменения движения.

  • Возвращает булевскую переменную, указывающую, доступны ли данные движения на текущем устройстве.

    Объявление

    Swift

    class func isActivityAvailable() -> Bool

    Objective C

    + (BOOL)isActivityAvailable

    Возвращаемое значение

    YEStrue если данные движения доступны или NOfalse если это не.

    Обсуждение

    Данные движения не доступны на всех устройствах на iOS. Используйте этот метод, чтобы определить, доступна ли поддержка на текущем устройстве.

    Оператор импорта

    Objective C

    @import CoreMotion;

    Swift

    import CoreMotion

    Доступность

    Доступный в iOS 7.0 и позже.

  • Запускает поставку текущих обновлений данных движения к Вашему приложению.

    Объявление

    Swift

    func startActivityUpdatesToQueue(_ queue: NSOperationQueue!, withHandler handler: CMMotionActivityHandler!)

    Objective C

    - (void)startActivityUpdatesToQueue:(NSOperationQueue *)queue withHandler:(CMMotionActivityHandler)handler

    Параметры

    queue

    Очередь работы, на которой можно выполнить указанное handler блок. Можно указать пользовательскую очередь или использовать очередь работы, связанную с основным потоком приложения. Этот параметр не должен быть nil.

    handler

    Блок для выполнения, когда обнаруживается изменение в текущем типе движения. Для получения информации о параметрах этого блока посмотрите CMMotionActivityHandler. Это свойство не должно быть nil.

    Обсуждение

    Этот метод инициирует отслеживание данных движения асинхронно. По вызову этого метода менеджер по действию движения выполняется handler блок на указанном queue, создание отчетов о текущем движении в действительности для устройства. После этого менеджер по действию движения выполняется handler блокируйте только, когда изменятся данные движения.

    handler блок выполняется на основе максимальных усилий, и обновления не поставлены, в то время как приостановлено Ваше приложение. Если обновления наступили, в то время как Ваше приложение было приостановлено, последнее обновление поставлено Вашему приложению, когда это возобновляет выполнение. Для получения всех обновлений, произошедших, в то время как приложение было приостановлено используйте queryActivityStartingFromDate:toDate:toQueue:withHandler: метод.

    После стартовых обновлений действия менеджер по действию движения сообщает об изменениях в его блоке, пока Вы не вызываете stopActivityUpdates метод. Если Вы вызываете этот метод снова с новым блоком, менеджер по действию прекращает поставлять обновления старому блоку и поставляет им новому блоку вместо этого. Когда менеджер по действию движения сам объект освобожден, обновления останавливаются в целом.

    Оператор импорта

    Objective C

    @import CoreMotion;

    Swift

    import CoreMotion

    Доступность

    Доступный в iOS 7.0 и позже.

    См. также

    – stopActivityUpdates

  • Останавливает поставку обновлений движения к Вашему приложению

    Объявление

    Swift

    func stopActivityUpdates()

    Objective C

    - (void)stopActivityUpdates

    Обсуждение

    Вызовите этот метод для остановки поставки обновлений, которые Вы запустили путем вызова startActivityUpdatesToQueue:withHandler: метод. Этот метод не останавливается, запросы начали использовать queryActivityStartingFromDate:toDate:toQueue:withHandler: метод.

    Оператор импорта

    Objective C

    @import CoreMotion;

    Swift

    import CoreMotion

    Доступность

    Доступный в iOS 7.0 и позже.

  • Собирает и возвращает исторические данные движения для указанного периода времени

    Объявление

    Swift

    func queryActivityStartingFromDate(_ start: NSDate!, toDate end: NSDate!, toQueue queue: NSOperationQueue!, withHandler handler: CMMotionActivityQueryHandler!)

    Objective C

    - (void)queryActivityStartingFromDate:(NSDate *)start toDate:(NSDate *)end toQueue:(NSOperationQueue *)queue withHandler:(CMMotionActivityQueryHandler)handler

    Параметры

    start

    Время начала для использования при сборе данных движения. Этот параметр не должен быть nil.

    end

    Время окончания для использования при сборе данных движения. Этот параметр не должен быть nil.

    queue

    Очередь работы, на которой можно выполнить указанное handler блок. Можно указать пользовательскую очередь или использовать очередь работы, связанную с основным потоком приложения. Этот параметр не должен быть nil.

    handler

    Блок для выполнения с результатами. Для получения информации о параметрах этого блока посмотрите CMMotionActivityQueryHandler. Этот параметр не должен быть nil.

    Обсуждение

    Этот метод работает асинхронно, возвратившись сразу и поставляя результаты к указанному handler блок. Система хранит только ценность прошлых семи дней данных действия самое большее. Если нет никаких выборок для указанного диапазона времени, ошибочного объекта с кодом CMErrorUnknown передается handler блок.

    Оператор импорта

    Objective C

    @import CoreMotion;

    Swift

    import CoreMotion

    Доступность

    Доступный в iOS 7.0 и позже.

Типы данных

  • Блок, сообщающий о текущем движении, связанном с устройством.

    Объявление

    Swift

    typealias CMMotionActivityHandler = (CMMotionActivity!) -> Void

    Objective C

    typedef void (^CMMotionActivityHandler)(CMMotionActivity *activity)

    Обсуждение

    Этот блок берет следующий параметр:

    activity

    Объект действия движения, определяющий текущий тип движения для устройства.

    Оператор импорта

    Objective C

    @import CoreMotion;

    Swift

    import CoreMotion

    Доступность

    Доступный в iOS 7.0 и позже.

  • Блок, сообщающий об обновлениях движения, произошедших между указанным интервалом запроса.

    Объявление

    Swift

    typealias CMMotionActivityQueryHandler = ([AnyObject]!, NSError!) -> Void

    Objective C

    typedef void (^CMMotionActivityQueryHandler)(NSArray *activities, NSError *error)

    Обсуждение

    Этот блок берет следующие параметры:

    activities

    Массив CMMotionActivity объекты, указывающие произошедшие обновления. Объекты в массиве упорядочиваются к этому времени, в котором они произошли в интервале требуемого времени. Используйте startDate когда обновление произошло, свойство в каждом движении возражает для определения.

    error

    Ошибочное указание объекта, что была проблема, собирающая данные или nil если данные движения были определены правильно.

    Оператор импорта

    Objective C

    @import CoreMotion;

    Swift

    import CoreMotion

    Доступность

    Доступный в iOS 7.0 и позже.