Почему изменение в моей базе данных Firebase приводит к сбою приложения - PullRequest
1 голос
/ 27 апреля 2019

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

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

Даже когда я перестраиваю свое приложение, ошибка все еще продолжается ....

class ViewController:  UIViewController {
var dbRef: DatabaseReference!
var nextUrl = "https://www.google.co.uk/"
func retrieveUrl () {
    dbRef = Database.database().reference().child("EXAMPLE")
    dbRef.observe(.value) {
        (snapshot) in
        let value = snapshot.value as! NSDictionary
        let url = value["url"]!
        self.nextUrl = (url as! String)
        print (nextUrl)
        print ("webview is about to load")
        let request = URLRequest (url: URL(string: nextUrl)!)
        self.webView.load(request)
        self.webView.addObserver(self, forKeyPath: #keyPath(WKWebView.isLoading), options: .new, context: nil)
    }
    print ("function observe is called")
}

override func viewDidLoad () {
    super.viewDidLoad()
    retrieveUrl()
}

Вот фатальная ошибка:

Поток 1: фатальная ошибка: неожиданно обнаружен ноль при развертывании необязательного значения

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