Ответ 1
Лучшей практикой является отправка токена устройства токена (не то же самое, что уникальный идентификатор, упомянутый Сергом Шияном) для Apple каждый раз, когда приложение запускается. Это позволит Apple узнать, что ваше приложение все еще активно.
См. регистрацию для удаленных push-уведомлений:
Запросив токен устройства и передавая его провайдеру каждый раз, когда запускается ваше приложение, вы помогаете гарантировать, что у провайдера есть текущий токен для устройства.
из Локальные и Push-уведомления Руководство по программированию
По моему опыту существует ряд причин, по которым токены могут быть признаны недействительными. К ним относятся приложения deinstalls и микширование приложений с различными сертификатами (dev, ad-hoc для работы с песочницами /live push-серверами). Это избавит вас от некоторой отладки, посылая токен при запуске каждый раз, как рекомендовано.
Таким образом, в принципе нет никакой причины хранить токен, отличный от памяти, в то время как ваше приложение работает. Вы просто запрашиваете новый (возможно, тот же) при следующем запуске приложения.