Как переключаться между приложениями без перезапуска / обновления предыдущего приложения в Swift - PullRequest
0 голосов
/ 03 августа 2020

При регистрации пользователей просят подтвердить свой адрес электронной почты. При переключении между моим приложением и Gmail, а затем возвращении в мое приложение через 10 секунд приложение перезапускается и не возобновляет работу с последнего просмотра. Как я могу предотвратить такое поведение? Между прочим, я удалил весь код из appdelegate и scenedelegate, который вызывает особое c представление при запуске.

1 Ответ

0 голосов
/ 03 августа 2020

Когда вы переключаетесь со своего приложения на любое другое (например, Gmail), состояние вашего приложения переходит из активного в неактивное, а затем в конечном итоге приостанавливается и не запускается.

https://developer.apple.com/documentation/uikit/app_and_environment/managing_your_app_s_life_cycle

Обычно, если вы переключаетесь на другое приложение, оно не закрывается немедленно, но у вас нет гарантии, как долго оно будет храниться в памяти. Система может в любой момент решить, что ей нужно больше ресурсов, и убить ваше приложение.

Решение, которое вы ищете, - это «восстановление состояния». В большинстве базовых форм c вы можете просто хранить данные на диске или в пользовательских значениях по умолчанию (в зависимости от того, что это за данные и являются ли они частными - пользовательские значения по умолчанию не рекомендуются для PII). Когда ваше приложение запускается, вы можете проверить, что хранится, и перейти прямо к этому моменту в приложении. Существует также рекомендованный Apple способ восстановления состояния, который может работать лучше, чем писать его вручную.

Вот вам пара полезных ресурсов от Apple:

https://developer.apple.com/documentation/uikit/view_controllers/preserving_your_app_s_ui_across_launches

https://developer.apple.com/documentation/uikit/uiviewcontroller/restoring_your_app_s_state

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...