Может ли WKWebView вызвать функцию в главном приложении и вернуть значение? - PullRequest
0 голосов
/ 18 сентября 2019

В настоящее время я пишу веб-страницу, предназначенную для запуска внутри WKWebView на iOS или WebView на Android.В Android WebView может вызывать функцию, которая выполняет собственный код приложения и возвращает значение обратно в WebView.Можно ли сделать то же самое на iOS?Могу ли я вызвать встроенную функцию iOS и получить значение, возвращенное из нее тем или иным способом?

1 Ответ

0 голосов
/ 19 сентября 2019

Это, конечно, возможно, но требует большой подготовительной работы.Я сделал это несколько лет назад https://github.com/ddaddy/DJJavaInsertion, когда мне нужно было иметь возможность контролировать работу приложения, изменив JavaScript на веб-странице.Он использует UIWebView, но вы должны иметь возможность изменить его для использования WKWebView

. Он работает так, как будто он загружает вашу веб-страницу и запускает начальную функцию js.Поскольку вашему js нужно вызвать метод Obj-C, он выполняет вызов iframe по специально сформулированному URL-адресу, который делегат веб-просмотра перехватывает и выполняет функцию.

Я использовал его для представления собственных предупреждений, запроса ввода данных и дажевыполнять довольно сложные веб-запросы.

Я сомневаюсь, что это будет для вас проблемой, но может показать вам, как это сделать.

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