Mar*_*ark 473
2016年10月更新:这是更新的官方文档的链接,其中包括此答案中的要点:android.database.sqlite包级别的javadoc
使用模拟器(adb shell sqlite3 --version):
更新:对不起,较旧的(SDK 18及更早版本)软件包级API差异已停止工作:https://issuetracker.google.com/issues/37048579
SQLite 3.22.0:
SQLite 3.19.4(由于某种原因3.19.4在sqlite发行说明中不存在!所以链接到版本控制签入代替):
SQLite 3.18.2:
SQLite 3.9.2:
SQLite 3.8.10.2:
SQLite 3.8.6.1(SQLite链接用于3.8.6,因为3.8.6.1由于某种原因不存在):
SQLite 3.8.6:
SQLite(未知):
SQLite 3.7.11:
SQLite 3.7.4:
SQLite 3.6.22:
SQLite 3.5.9:
注意:Android SDK级别链接显示android.database.sqlite包的更改位置.如果没有链接(例如SDK级别17),则表示该包没有更改.
注意:这里有一些异常(列表并非详尽无遗):
SQLite 3.7.13(而不是3.7.11):
SQLite 3.7.6.3(而不是3.6.22):
SQLite 3.7.5(而不是3.7.4):
SQLite 3.7.0.1(而不是3.6.22):
SQLite 3.6.23.1(而不是3.5.9):
注意:获取SQLite版本的adb命令仅适用于仿真器和具有sqlite3的设备:https://stackoverflow.com/a/3645800/444761
对于其他设备,请参阅Juri的回答.
我在Android问题跟踪器中添加了问题#58909.如果你想支持它,请为此加星标.
注意:如果您希望您的应用在所有Android版本中使用相同版本的SQLite,请考虑使用此第三方SQLite支持库.
Jur*_*uri 57
尽管文档提供了3.4.0作为参考编号,但如果执行以下sql,您会注意到安装了更多的SQlite:
Cursor cursor = SQLiteDatabase.openOrCreateDatabase(":memory:", null).rawQuery("select sqlite_version() AS sqlite_version", null);
String sqliteVersion = "";
while(cursor.moveToNext()){
sqliteVersion += cursor.getString(0);
}
Run Code Online (Sandbox Code Playgroud)
这只是一段快速,脏的代码来检索sqlite版本.例如在使用Android 2.1的HTC Hero上,我得到:3.5.9.
在我的带有Android 2.2的Nexus One上,我甚至得到了3.6.22.
yan*_*nko 26
$ adb shell
$ sqlite3 --version
sqlite3 --version
3.5.9
Run Code Online (Sandbox Code Playgroud)
在ADP1 1.6和2.1仿真器上也是如此.
| 归档时间: |
|
| 查看次数: |
93356 次 |
| 最近记录: |