Генерация событий удаленного управления из моего приложения

У меня есть два вопроса относительно событий удаленного управления на iOS:

  1. Я знаю, что музыкальные приложения регистрируются на события дистанционного управления, а затем могут получать такие события от виджета плеера iPhone. Допустим, я хочу, чтобы мое приложение запускало такие события, возможно ли это?
  2. Как, например, наушники генерируют эти события?

2 ответа

Решение

Без частного API вы не можете отправить событие remotecontrol в ваше приложение.

Причина в том, что мы не можем создать такое событие (UIEvent) для отправки с помощью:

[[UIApplication sharedApplication] sendEvent:anEvent];

Однако вы можете сохранить зарегистрированное событие, а затем воспроизвести, вызвав вышеуказанную функцию.

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

Вы должны прочитать эту книгу:

http://www.amazon.com/gp/product/1118057651/ref=pd_lpo_sbs_dp_ss_1?pf_rd_p=1535523702&pf_rd_s=lpo-top-stripe-1&pf_rd_t=201&pf_rd_i=0321278542&pf_rd_m=ATVPDKIKX0DER&pf_rd_r=0T2AMHJCEEKJN41YJHD5

Это будет тяжелая работа, чтобы сделать это работает.

Взгляните на GSEvent, чтобы узнать, как отправить событие в ОС (iOS).

Изменить: я нашел 2 типа событий в GSEvent.GSEventType:

kGSEventHeadsetButtonDown = 1018,
kGSEventHeadsetButtonUp = 1019,

PS: - используйте приватный API, поэтому он будет отклонен, если вы разместите это приложение в AppStore.

Другие вопросы по тегам