Просто убедитесь, что ваш код всегда подходит к точке, где вы вызываете endIgnoringInteractionEvents, иначе ваше приложение замерзнет (с точки зрения пользователей).
Ответ 2
Просто добавление к ответу rokjarc.
Вот пример сторожевого пса, чтобы сохранить приложение в живых.
Вы можете звонить всегда с некоторым критическим интервалом, может быть, 10 секунд.
И если вам нужно включить в течение 10 секунд, просто вызовите метод "enable".