Сделайте так, чтобы расширение iOS Action получало уведомление о том, что приложение Host стало активным
У меня есть заявка и сопутствующее продление действия. Основная цель расширения - загрузить файл из любого вызывающего приложения в URL-адрес, предоставленный основным приложением.
Рабочий процесс:
В основном приложении пользователь выбирает URL из списка
В любом приложении, например, на iCloud Drive, пользователь может выбрать любой файл, нажать кнопку "Поделиться", выбрать соответствующее расширение действия, которое выполнит загрузку на ранее выбранный URL-адрес.
ViewController расширения имеет кнопку "Изменить", которая открывает главное приложение. Таким образом, пользователь может переключиться на основное приложение, выбрать другой URL-адрес и вернуться обратно к основному приложению (в котором расширение все еще активно).
Я пытаюсь выяснить, как расширение, которое является просто ViewController и не имеет прямого доступа к жизненному циклу хост-приложения, может быть уведомлено о том, что хост-приложение снова стало активным. Чтобы расширение могло подобрать вновь выбранную ссылку.
У меня нет прямого доступа к методам appDelegate хоста, и ни один viewWillAppear не вызывается, когда представление расширения снова становится активным.
Есть идеи?
1 ответ
Отвечая на мой собственный вопрос: есть по крайней мере один способ сделать это - с помощью NotificationCenter, описанного в этом ответе на вопрос "Почему viewWillAppear не вызывается...".
Если у кого-то есть идея получше - буду рад поэкспериментировать с ней.