Obtener una notificación cuando se presiona un button en el iPhone cuando la pantalla está apagada.

Estoy planeando crear una aplicación que salve vidas, y necesito integrarme con cualquiera de los botones físicos en el iPhone (Inicio, volumen, locking). ¿Esto es posible mediante progtwigción cuando la pantalla está apagada (en un dispositivo no carcelario)?

¡Gracias por adelantado!

Me gusta tu idea, pero no creo que esto se pueda get en un dispositivo que no esté en jailbreak. La respuesta de @ Andrews podría funcionar si su aplicación se activara mediante una combinación de reproducción / pausa, siguiente y posterior, pero requeriría que su aplicación fuera siempre la respuesta a los controles de audio de los dispositivos, que solo es posible entre el momento en que el usuario cierra su aplicación, e inicia cualquier otra cosa que tome el control del audio del dispositivo. (que probablemente no sea tan largo)

Suponiendo que esta sería la versión de iOS de Life Alert, que marcaría services de emergencia para el usuario, sería muy difícil evitar que la aplicación genere falsos positivos y llame al 911 cada vez que el teléfono tenga presionados unos pocos botones en un bolsillo, monedero, etc. Mientras que con un jailbreak puede ser posible escuchar un patrón (por ejemplo, button de inicio: presione, mantenga presionado, presione, presione)

Además de esto, intentar usar cualquier cosa en la pantalla de locking para algo que no sea el propósito previsto, probablemente resultará en el rechazo de Apple. Son grandes en la experiencia del usuario y querrían que su aplicación interfiera de cualquier forma con la funcionalidad del dispositivo.

Una vez más, creo que tienes una buena idea, pero lamento decir que tal vez no sea posible hacerlo en iOS. ¡Buena suerte!

No debe usar los botones de hardware para nada que no sea su uso o Apple rechazará su aplicación.

No hay manera de get eso directamente, pero hay algunas forms de hacerlo de una manera indirecta.

Como ejemplo, si crea un object MPMusicPlayerController puede registrarse para MPMusicPlayerControllerVolumeDidChangeNotification y se le notificará cuando cambie el volumen. Los cambios de volumen pueden provenir de presionar los botones de volumen del hardware, pero hay otras condiciones que pueden desencadenarlos.

No es probable Apple bloquea todo eso bastante bien.