Сообщение веб-страницы IOS WebView PHP для приложения?

#php #ios #uiwebview

#php #iOS #uiwebview

Вопрос:

У меня есть приложение для IOS, которое, помимо прочего, подключается к веб-серверу (которым я управляю, запускаю PHP), и я пытаюсь определить, когда выполнение кода PHP завершено. Страница вызывается несколько раз, и веб-страница подключается к некоторым другим веб-страницам (которые я не контролирую), поэтому я не могу просто использовать webViewDidFinishLoad.

Есть ли какой-либо способ для приложения IOS получить сообщение от PHP-приложения, которое вызывается из UIWebView?

Комментарии:

1. Почему бы вам не выполнить все обратные вызовы на сервере и вернуть что-то в приложение только тогда, когда все будет завершено. Затем вы можете использовать webViewDidFinishLoad

2. webViewDidFinishLoad срабатывает каждый раз, когда одна из страниц в вызываемом коде PHP завершает загрузку. Все обратные вызовы выполняются на сервере / на сервере. Когда PHP-код закончит работу со страницами и получит обратные вызовы, приложение должно знать об этом. Я попытался подсчитать вызовы webViewDidFinishLoading, но в PHP-коде есть несколько путей, каждый из которых занимает разное количество страниц.

3. Извините, я не понимаю, что вы пытаетесь сделать. Вы не должны загружать несколько страниц php только одну. Что одна страница PHP может загружать ряд функций php в зависимости от реализуемой вами логики, пока она не вернет то, что ожидает приложение. В этот момент сработает webViewDidFinishLoad.

4. Один PHP-файл инициирует диалог с сервером авторизации. Когда авторизация завершена, сервер аутентификации вызывает тот же PHP-файл. Иногда этот процесс авторизации включает в себя несколько страниц, а в других случаях — только одну страницу. webViewDidFinishLoad срабатывает при каждой загрузке страницы. Итак, я не готов закрыть WebView, пока не будет завершена загрузка ПРАВИЛЬНОЙ последней страницы.

Ответ №1:

Предполагая, что ваша веб-страница «знает», когда PHP-код завершен, вы можете попробовать сообщить об этом приложению, как описано в этой ссылке