Using in-memory sqlite android
android, in-memory, sqlite
Solution
SQLiteOpenHelper() will create an in-memory database if the `name` is `null`. Note that it will be created when you invoke `getWritableDatabase()`.
Then you should insert your data.
Problem
I've been reading, browsing, searching a lot on this, I've criss-crossed stackoverflow back and forth many times and I managed to narrow my problem as much as I could. The only thing I do not understand, is how to fully use an in-memory SQLite database. Here is my situation - I have an encrypted SQLite database which I decrypt during the loading of my application (this part works for sure). My class that interacts with the database works for sure with a plain database. So to make it short, everything is flawless with a plain DB which gets loaded from the internal phone memory, but I am not sure how or where to store the decrypted DB in memory so it would get interpreted as normal DB. I guess I should put `null` instead of a name in `super(context, null, null, 3);` and use `:memory:` instead of a path in `SQLiteDatabase.openDatabase()`, but I still don't understand fully. It says it cannot find an `android_metadata` table, but I am certain the database is as it should be. Hope I was clear on this :)