androidsqlciphersqlcipher-android

How to profile sqlcipher on Android?


SqlCipher has profiler. According documentation To turn it on developer should execute:

sqlite> PRAGMA cipher_profile='sqlcipher.log';
sqlite> CREATE TABLE t1(a,b);
sqlite> INSERT INTO t1(a,b) VALUES('one for the money', 'two for the show');
sqlite> PRAGMA cipher_profile=off;

On Android I added to database hook following query database.rawExecSQL(“PRAGMA cipher_profile=’” + name + “.log’;”); where name is the string path to log file. But I don't see any logs created with this path.

Could someone explain is it possible to profile sqlcipher on Android?


Solution

  • Official answer:

    https://discuss.zetetic.net/t/pragma-cipher-profile-on-android/3766

    It appears there is an issue with capturing the profile output to a file on the Android platform. In the interim, you can set cipher_profile to use stdout, then redirect stdout to logcat for your emulator or rooted device.