Пока ваш код работает, вы можете получить доступ практически ко всему, но есть некоторые ограничения.
Вопрос здесь в том, что вы считаете «переменными приложения». Скорее всего, это объекты, которые уже находятся в вашей памяти и могут быть доступны в didReceiveRemoteNotification
или любом другом методе без каких-либо проблем.
Если их нет в вашей памяти, могут возникнуть некоторые ограничения, но они не необходимо недостижимо Некоторые случаи, которые могут иметь или не иметь проблемы:
- Чтение с диска, если файлы зашифрованы вашей ОС
- Ресурсы находятся на удаленном сервере, и вам необходимо связаться через inte rnet
- Ваши данные находятся в графическом процессоре или требуют обработки в графическом процессоре
Если ваш didReceiveRemoteNotification
уже вызывается, у вас не должно быть никаких проблем с этим. Но уведомления не обязательно вызывают этот метод. Полезная нагрузка уведомления уже должна содержать счетчик значков, и ваша ОС должна иметь возможность правильно отображать значок, а не просто добавлять к нему значение.
Приложение может не просто находиться в фоновом режиме. Это может быть приостановлено или даже прекращено. Вполне возможно, что ваше приложение будет пробуждено от уведомления, и в этом случае вы не можете ожидать вызова didReceiveRemoteNotification
. И даже если это так, вы не можете ожидать, что у вас все еще есть какая-либо информация в вашей памяти от предыдущих вызовов; поскольку ваше приложение было только что перезапущено, от предыдущего запуска в памяти ничего не осталось.