Sz-Nika Janos
Sz-Nika Janos

Reputation: 821

Anko sqlite library with encrypted library

I have a db file which is encrypted and I know the passphrase but I cannot find a way to open with Anko library.

In Java I use SQL Cypher. Also I tried to replace the Android import with Cypher

class MyDatabaseOpenHelper(ctx: Context) : ManagedSQLiteOpenHelper(ctx, "MyDatabase", null, 1) {
companion object {
    private var instance: MyDatabaseOpenHelper? = null

    @Synchronized
    fun getInstance(ctx: Context): MyDatabaseOpenHelper {
        if (instance == null) {
            instance = MyDatabaseOpenHelper(ctx.getApplicationContext())
        }
        return instance!!
    }
}

override fun onCreate(db: SQLiteDatabase) {
    // Here you create tables
    db.createTable("Customer", true, 
                "id" to INTEGER + PRIMARY_KEY + UNIQUE,
                "name" to TEXT,
                "photo" to BLOB)
}

override fun onUpgrade(db: SQLiteDatabase, oldVersion: Int, newVersion: Int) {
    // Here you can upgrade tables, as usual
    db.dropTable("User", true)
}
}

 // Access property for Context
 val Context.database: MyDatabaseOpenHelper
get() = MyDatabaseOpenHelper.getInstance(getApplicationContext())

Upvotes: 0

Views: 172

Answers (0)

Related Questions