我在某些Android设备上遇到以下问题(我现在可以在Galaxy Note II和Galaxy S4上重现它): WebView无法加载页面。没有错误或onReceivedError调用,但onPageFinished也没有被触发。我实现了进程回调以查看页面是否正在加载。留在日志中:
11-11 17:15:23.380 D/WebView (14099): loadUrlImpl: called
11-11 17:15:23.395 V/webkit (14099): BrowserFrame constructor: this=Handler (android.webkit.BrowserFrame) {424c9b48}
11-11 17:15:23.420 D/webcore (14099): CORE loadUrl: called
11-11 17:15:23.420 E/SQLiteLog(14099): (1) no such table: CacheGroups
11-11 17:15:23.425 D/WebKit (14099): ERROR:
11-11 17:15:23.425 D/WebKit (14099): Application Cache Storage: failed to execute statement "DELETE FROM CacheGroups" error "no such table: CacheGroups"
11-11 17:15:23.425 D/WebKit (14099):
11-11 17:15:23.425 D/WebKit (14099): external/webkit/Source/WebCore/loader/appcache/ApplicationCacheStorage.cpp(558) : bool WebCore::ApplicationCacheStorage::executeSQLCommand(const WTF::String&)
11-11 17:15:23.425 E/SQLiteLog(14099): (1) no such table: Caches
11-11 17:15:23.425 D/WebKit (14099): ERROR:
11-11 17:15:23.425 D/WebKit (14099): Application Cache Storage: failed to execute statement "DELETE FROM Caches" error "no such table: Caches"
11-11 17:15:23.425 D/WebKit (14099):
11-11 17:15:23.425 D/WebKit (14099): external/webkit/Source/WebCore/loader/appcache/ApplicationCacheStorage.cpp(558) : bool WebCore::ApplicationCacheStorage::executeSQLCommand(const WTF::String&)
11-11 17:15:23.425 E/SQLiteLog(14099): (1) no such table: Origins
11-11 17:15:23.425 D/WebKit (14099): ERROR:
11-11 17:15:23.425 D/WebKit (14099): Application Cache Storage: failed to execute statement "DELETE FROM Origins" error "no such table: Origins"
11-11 17:15:23.425 D/WebKit (14099):
11-11 17:15:23.425 D/WebKit (14099): external/webkit/Source/WebCore/loader/appcache/ApplicationCacheStorage.cpp(558) : bool WebCore::ApplicationCacheStorage::executeSQLCommand(const WTF::String&)
11-11 17:15:23.425 E/SQLiteLog(14099): (1) no such table: DeletedCacheResources
11-11 17:15:23.505 E/de.my.app.webview.MyWebChromeClient(14099): Progress: 10
11-11 17:15:24.205 E/de.my.app.webview.MyWebChromeClient(14099): Progress: 30
11-11 17:15:24.210 E/de.my.app.webview.MyWebChromeClient(14099): Progress: 49
11-11 17:15:24.985 E/de.my.app.webview.MyWebChromeClient(14099): Progress: 68
11-11 17:15:28.035 D/dalvikvm(14099): GC_CONCURRENT freed 1905K, 6% free 53808K/56967K, paused 13ms+17ms, total 69ms
11-11 17:15:28.085 D/webviewglue(14099): nativeDestroy view: 0x62e7e6a8
11-11 17:15:28.535 I/GATE (14099): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>
它可以在其他测试设备上正常工作。有人可以解释一下我做错了吗?
答案 0 :(得分:0)
原因是,我有一个WebView预加载器,如果完成加载并发送回调消息,则显示WebView。 WebView本身未分配给变量,并且在某些设备上被垃圾收集器删除。