Загрузка изображений не работает на WKWebView, но работает на SFSafariViewController - PullRequest
0 голосов
/ 08 января 2019

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

Теперь я написал простое приложение на Swift, используя WKWebView, но теперь, когда я пытаюсь загрузить изображение, WebView обновляется сам. Когда я изменил WKWebView на SFSafariViewController, он снова работает, но SafariVC имеет эту неприятную полосу сверху и снизу.

Каковы различия между этими двумя компонентами и как я могу заставить WKWebView запускать мое веб-приложение так же, как другие браузеры?

PS: в Android WebView такая же проблема.

1 Ответ

0 голосов
/ 08 января 2019

Скорее всего, вам нужно включить JavaScript WKWebView в конфигурации:

override fun viewDidLoad() {
    super.viewDidLoad()
    let preferences = WKPreferences()
    preferences.javaScriptEnabled = true
    let configuration = WKWebViewConfiguration()
    configuration.preferences = preferences
    let webview = WKWebView(frame: view.bounds, configuration: configuration)
    view.addSubview(webview)
}

Это WKWebView создание должно быть внутри класса, расширяющего UIViewController.

...