我可以通过Jetpack在项目中使用新版本的sqlite吗?

时间:2019-05-30 20:37:27

标签: android jetpack

我们已经达到了要在android中使用“ lead”和“ lag”函数的条件,但是除非您的sqlite版本至少为3.2,否则它们将不起作用。我们的项目是否可以通过Jetpack使用较新的sqllite版本,如果可以,如何使用?

1 个答案:

答案 0 :(得分:1)

  

我们的项目是否可以通过Jetpack使用较新的sqllite版本

Jetpack不会直接为您提供新的SQLite版本。

但是,如果您使用的是Room,则可以使用SupportSQLiteDatabase接口家族的自定义实现。默认情况下,Room使用自己的Framework...版本,这些版本使用内置的SQLite。但是,在您的Room.DatabaseBuilder上,您可以调用openHelperFactory()并提供使用另一种实现的SupportSQLiteOpenHelper.Factory

您至少可以使用其中两种,它们是相当最新的SQLite版本:

两者都要求您将SQLite的二进制文件与您的应用打包在一起(对于Android的SQLCipher,则打包为加密库)。这样会大大增加APK的大小。