Android Question SQLCipher Migration Issue, from 1.5 to 1.6

tznikos

Member
Licensed User
I'm using SQLCipher 1.5 in an existing app. From Aug 2019 app updates will require 64-bit so I'll have to move to SQLCipher 1.6 which provides 64-bit support and upgrades from SQLCipher 3 to SQLCipher 4.

But I don't see a way to use that in B4A as Sql.Initialize fails when opening an SQLCipher 3 database, with a new Library


On the other post, Erel write
You should decrypt the database, save the data, update the app and encrypt it again.

How we can do this, if I import the New Library (v 1.60) to my project, I can't open the old database to decrypt and save data?
 

RB Smissaert

Well-Known Member
Licensed User
I'm using SQLCipher 1.5 in an existing app. From Aug 2019 app updates will require 64-bit so I'll have to move to SQLCipher 1.6 which provides 64-bit support and upgrades from SQLCipher 3 to SQLCipher 4.

But I don't see a way to use that in B4A as Sql.Initialize fails when opening an SQLCipher 3 database, with a new Library


On the other post, Erel write
You should decrypt the database, save the data, update the app and encrypt it again.

How we can do this, if I import the New Library (v 1.60) to my project, I can't open the old database to decrypt and save data?
I moved from SQLCipher 1.5 to 1.6 and did the DB conversion via DB Browser for SQLite:

Copy the DB to the PC
Open the DB with the old DB Browser for SQLite
Un-encrypt the DB
Close the DB
Open in the new DB Browser for SQLite (which uses SQLCipher 1.6)
Encrypt the DB

Not sure this would work in your setup, but worked all fine for me.
Mind you, I am the sole user of my app, so that made things easy.


RBS
 
Top