android webview setDatabasePath устарел

этот метод устарел на уровне API 19 Путь к базе данных осуществляется реализация и вызов этого метода не будет иметь никакого эффекта.

Я использую setDatabasePath чтобы задать путь к базе данных webview.

String databasePath = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath(); 
settings.setDatabasePath(databasePath);

означает ли это, что в API 19 он больше не может найти мою базу данных?? Как это решить? (что они означают: пути к базе данных управляются реализацией)

1 ответов


уровень API 19 означает Android 4.4 KitKat, в котором браузерный движок переключается с Android webkit на chromium webkit, причем почти все оригинальные API WebView завернуты в аналоги chromium webkit.

это означает, что большинство реализаций API WebView отличаются от Android 4.3 и ранее, включая API хранения базы данных. Это также означает, что разработчики Android 4.4 не могут (или не должны) назначать альтернативный путь к БД; все это обрабатывается Android по умолчанию.

managed by the implementation теперь означает, что путь хранения базы данных обрабатывается Chromium webkit engine по умолчанию, а до Android 4.4 он обрабатывается в android.webkit в слое framework, который необходимо установить.