Sto utilizzando WKWebView in un'app Swift creata per iOS 8+. Io uso le istanze di WKWebView in una varietà di visualizzazioni nella mia app, ad es. in ciascuna scheda del mio controller di visualizzazione schede, l'interfaccia è basata su WKWebView.Come determinare perché WKWebView si blocca
Io ei miei tester abbiamo notato che queste visualizzazioni a volte diventano completamente vuote e, dopo aver ricercato il problema, sembra che WKWebView possa arrestarsi in modo anomalo e che la visualizzazione vuota sia il risultato. Fortunatamente, non fa cadere l'app a causa del modo in cui funziona WKWebView, ma non sono chiaro su come intercettare/registrare le informazioni su ciò che lo ha causato in crash (se questo è effettivamente ciò che sta accadendo).
Come determinare se/perché un WKWebView si è arrestato in modo anomalo?
La mia soluzione attuale per il problema è che io uso KVO (in realtà, Facebook KVOController), per monitorare la proprietà "URL" di WKWebView, e se va da non-zero a zero, presumo che si sia verificato un arresto anomalo e ricarico il WebView:
kvoController?.observe(webView, keyPath: "URL", options: NSKeyValueObservingOptions.New|NSKeyValueObservingOptions.Old) { (areaViewController, webView, change) -> Void in
if change[NSKeyValueChangeNewKey] is NSNull && !(change[NSKeyValueChangeOldKey] is NSNull) {
areaViewController.setup() // reload our webview
}
}
Ma ovviamente sarebbe bello capire la causa principale dello schianto.
sto vedendo l'incidente wkwebview a Cordova e hanno anche la minima idea di cosa fare per il conseguente bianco-schermo. – jimmont
Sto anche vedendo l'arresto di WKWebView in Cordova. Il plugin che sto usando ricarica semplicemente il browser. Tuttavia, questo perde tutte le informazioni di stato che ho memorizzato nell'applicazione web. Qualcuno ha fatto dei progressi nel determinare come rilevare cosa causa effettivamente un arresto anomalo (codici di errore, ecc.)? – Shoerob