We have database with big blobs (images) ~3.5mb which we cannot read on Android versions below 9 (API 28) because we cannot set a larger custom cursor window size (see https://github.com/cashapp/sqldelight/pull/4804).
For Android SQLDelight has AndroidSqliteDriver
class which uses Cursor
under the hood with window size limitations, while there are no such limitations for native sqlite3 queries.
How can I make SQLDelight use sqlite3 API directly via my custom JNI wrapper? Should I write a custom driver class? If yes how can I do this? My thought was to write my own driver based on AndroidSqliteDriver
just replacing Cursor
calls with JNI calls, but unfortunately I do not know how to do it properly, can you give an example of such implementation?
SQLDelight discussion https://github.com/cashapp/sqldelight/discussions/5250