Пока ваше приложение активно, вы можете использовать CMMotionActivityManager
, чтобы получить текущий тип движения.
Обратите внимание, что он не скажет вам, является ли человек за рулем, пассажиром или даже в другом транспортном средстве, которое имеет сходные характеристики движения, например в поезде. Вы не можете получать обновления активности, пока ваше приложение приостановлено.
Вы можете объединить его с обновлениями местоположения сигнификации для периодического выполнения в фоновом режиме.
В этом ответе содержатся некоторые предложения по обнаружению устройств Bluetooth HFP путем проверки доступного аудиовхода. устройства. Обратите внимание, что вы не можете проверить это в фоновом режиме и не можете получить «уведомление» о том, что HFP подключен, если вы не активно вводите или выводите аудио - вам необходимо периодически проверять