2016-12-07 1 views
3

Согласно документации Apple для CMMotionManager, «Приложение должно создавать только один экземпляр класса CMMotionManager. Несколько экземпляров этого класса могут влиять на скорость, с которой данные принимаются от акселерометра и гироскоп «.Несколько экземпляров CMMotionManager, определяющих интервал обновления

Я создал синглтон, чтобы инкапсулировать это, но мне интересно, как я должен обрабатывать интервал обновления. Если каждый пользователь менеджера должен иметь другой интервал обновления для обновлений движения устройства, как вы их обрабатываете? Моя первоначальная мысль заключалась в том, чтобы установить его на самый быстрый интервал обновления, и отступить к следующему быстрому, когда пользователи будут удалены (прекратить наблюдение за обновлениями движения), но это может привести к возникновению проблем, если конкретный потребитель должен иметь определенный интервал.

Кто-нибудь сталкивался с этой проблемой? Если да, то как вы его решили?

ответ

1

Я использовал несколько менеджеров движения в прошлом в одном приложении, это не влияет на производительность приложения. Однако, если это повлияет на поведение/производительность приложения в реальном времени, я бы установил диспетчер движения на наивысшей требуемой частоте, но передал данные движения потребителям по их запрошенным ставкам.

Запрос данных о движении на высокой частоте не оказывает заметного влияния на использование процессора или батареи, что скажется на использовании аккумулятора или аккумулятора - это количество после обработки, которое вы выполняете после каждого обновления движения.

Источник: Личный опыт. Я работаю над приложением, которое работает в течение последних 5 лет, это приложение прогнозирует поведение пользователя с использованием данных движения устройства.

+0

Спасибо. То что я кончался с. Мне просто интересно, как люди справятся с этим, если конкретному классу нужен определенный интервал для правильной работы. – stealthdyno

+0

@stealthdyno Перефразируя Beyonce, _ «если вам понравилось, тогда вы должны поставить на него отметку» _ –

Смежные вопросы