Могу ли я использовать более новую версию sqlite в моем проекте через Jetpack? - PullRequest
0 голосов
/ 30 мая 2019

Мы пришли к условию, когда мы хотим использовать функции "lead" и "lag" в Android, но они не работают, если ваша версия sqlite не ниже 3.2. Возможно ли для нашего проекта использовать более новые версии sqllite через Jetpack, и если да, то как?

1 Ответ

1 голос
/ 30 мая 2019

Возможно ли для нашего проекта использовать более новые версии sqllite через Jetpack

Jetpack напрямую не дает вам новую версию SQLite.

Однако, если вы используете Room, вы можете использовать пользовательскую реализацию семейства интерфейсов SupportSQLiteDatabase. По умолчанию Room использует свои собственные версии Framework..., в которых используется встроенный SQLite. Но на вашем Room.DatabaseBuilder вы можете позвонить openHelperFactory() и предоставить SupportSQLiteOpenHelper.Factory, который использует другую реализацию.

Существует по крайней мере два из них, которые вы можете использовать в довольно актуальных версиях SQLite:

Оба требуют, чтобы вы упаковали двоичные файлы SQLite с вашим приложением (и библиотеками криптографии в случае SQLCipher для Android). Это значительно увеличит размер вашего APK.

...