Botones de volumen de hardware de iOS: diga a la prensa que se mantenga presionada

Ok, hay muchas preguntas sobre el uso de botones de volumen de hardware de iPhone para propósitos propios (p. Ej., Obturador de camera); todo lo que he visto se basa en recibir notifications de cambio de volumen.

Necesito distinguir el button de volumen presionar de mantener / soltar. Claro que podría implementarse en base a las notifications de cambio de volumen, así: On volume change event, if there's another event coming shortly - that's a hold (or quick double press); if no event is coming within eg half a second that's a button press. On volume change event, if there's another event coming shortly - that's a hold (or quick double press); if no event is coming within eg half a second that's a button press.

Pero. Hay una aplicación llamada Snapchat; usan el button de volumen para tomar una foto y el button de volumen para grabar un video mientras lo mantiene presionado. Y esa aplicación le dice perfectamente a la prensa que está en espera – lo que significa que el evento de prensa se reconoce de inmediato, no dentro de medio segundo.

Entonces, la pregunta es ¿cómo lo hacen?