Я пытался внедрить глубокую ссылку на собственный протокол в мое приложение таким образом, чтобы при открытии приложения оно создавало правильную строку 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()
(ничего не делает)
Пока ничего не получалось.Любая помощь, которую вы можете оказать, будет огромной помощью.Заранее спасибо!