Я не специалист по iOS. У меня есть основной вопрос: можно ли получить доступ/вызвать какие-либо методы/свойства Objective C из веб-просмотра пользовательского интерфейса? Другими словами, что произойдет, если я оставлю некоторый объективный код C на HTML-странице и загружу его в UIwebview гибридного приложения iOS? Выполнится ли код?
Доступ к родным свойствам/методам iOS из UIwebview из гибридного приложения
Ответы (1)
Нет - код не будет выполняться. То, что вы описываете, является «инъекцией» и, если бы это было возможно, могло бы нанести ущерб приложению.
Что-то, что я делал в прошлом, - это создавать приложение с контейнером UIWebView (что-то вроде того, что вы описываете), а затем возвращать ответ, который мой код может программно искать и обрабатывать. Это, конечно, возможно, потому что я написал и приложение, и веб-сервер.
Я уверен, что есть другие способы сделать это, но это сработало для меня.
person
Dan
schedule
01.07.2013
Спасибо. Итак, если я правильно понимаю, если я могу контролировать все приложение, я могу создать какой-то предопределенный (допустимый) интерфейс между UIwebview и приложением для установления такого рода связи?
- person Dummy; 01.07.2013
Типа, типа. Если вы контролируете как содержимое веб-страницы, с которой работает приложение, так и само приложение, вы можете сделать
NSURLConnection
вызов на свой сайт, и ваш сайт вернет параметр, который вы ожидаете... что-то вроде callMethod='doSomething'
и отреагировать, когда ваше приложение читает этот ответ в методе делегата connection:didReceiveData
. Это, конечно, предполагает, что вы добавляете NSURLConnectionDelegate
.
- person Dan; 01.07.2013