此方法已在 API 级别 19 中弃用 数据库路径由实现管理,调用此方法将无效。
我使用 setDatabasePath
来设置 webview 的数据库路径。
String databasePath = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath();
settings.setDatabasePath(databasePath);
这是否意味着在 API 19 中它无法再找到我的数据库??如何解决这个问题? (它们是什么意思:数据库路径由实现管理)
最佳答案
API 级别 19 意味着 Android 4.4 KitKat,其中浏览器引擎从 Android webkit 切换到 chromium webkit,几乎所有原始的 WebView API 都包装到 chromium webkit 的对应部分。
这意味着 WebView API 的大部分实现与 Android 4.3 及之前的版本不同,包括数据库存储 API。这也意味着,由于 Android 4.4 开发人员不能(或不必)分配替代的数据库路径;默认情况下,所有这些都由 Android 处理。
managed by the implementation
现在意味着数据库存储路径默认由chromium webkit引擎处理,而在Android 4.4之前它在框架层的android.webkit
中处理需要设置。
关于android webview setDatabasePath 已弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21319279/