アプリからすべての webview データを消去したい。私は次のことをしています:
WebViewDatabase wvd = WebViewDatabase.getInstance(context);
if (wvd != null) {
try {
wvd.clearUsernamePassword(); <-- throws an uncatchable exception
} catch (Exception ex) {
Log.e(TAG, "nope!", ex);
}
}
clearUsernamePassword() 行は例外をスローし、上記の try / catch によってキャッチされていません。
native_execute (step): errno = 2, error message = No such file or directory, handle = 0x47ec78
clearUsernamePassword Storage full, abort doing SQLite operation.
android.database.sqlite.SQLiteDiskIOException: error code 10: disk I/O error
at android.database.sqlite.SQLiteStatement.native_execute(Native Method)
at android.database.sqlite.SQLiteStatement.execute(SQLiteStatement.java:61)
at android.database.sqlite.SQLiteDatabase.delete(SQLiteDatabase.java:1721)
at android.webkit.WebViewDatabase.clearUsernamePassword(WebViewDatabase.java:1278)
ここで何をすべきですか?
ありがとう
- - - - アップデート - - - - -
それを引き起こしているメソッドへのリンクは次のとおりです(私のものではなく、Androidの一部です): http://developer.android.com/reference/android/webkit/WebViewDatabase.html#clearUsernamePassword ()
実際、WebViewDatabase のさまざまなメソッドから、このようないくつかの例外が発生しています (アプリには多くのダウンロードがあるため、大量のダウンロードが発生しています。実際にデバイスでこれを再現することができました)。
上記のコードは別のスレッドで実行されていません。