Невозможно загрузить новый URL в WKWebView при открытии приложения с глубокой ссылкой - PullRequest
0 голосов
/ 26 ноября 2018

Я пытался внедрить глубокую ссылку на собственный протокол в мое приложение таким образом, чтобы при открытии приложения оно создавало правильную строку URL-адреса, а затем использовал WKWebVeiw в ViewController для отображения страницы.

Независимо от того, что я делаю, URL либо не загружается, либо выдает ошибку, сообщающую, что WKWebView равен nil.

Вот код, который я использую:

В AppDelegate.swift:

func application(_ application: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {

    var urlString:String = "https://example.com"

    print(url.scheme!)

    if url.host != "example.com" {
        print(url.host ?? "")
        urlString += url.host ?? ""
    }
    print(url.path)
    urlString += url.path
    print(url.query ?? "")
    urlString += url.query ?? ""

    print(urlString)
    if verifyUrl(urlString: urlString) {
        vC.url = URL(string: urlString)!
    }

    return true
}

В ViewController.swift:

var url: URL! = URL(string: "https://example.com")!

func loadPage() {
    let urlRequest:URLRequest = URLRequest(url: url)

    webView.load(urlRequest)
}

Я попытался:

  • с помощью Обозревателя свойствна переменную URL (вызывает Fatal Error: Unexpectedly found nil while unwrapping an Optional value)

  • вызов loadPage() из AppDelegate.swift (тоже самое)

  • вызов loadPage()в viewDidAppear() (ничего не делает)

Пока ничего не получалось.Любая помощь, которую вы можете оказать, будет огромной помощью.Заранее спасибо!

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