Home

Awesome

Android sqlcipher native driver

Provides a native build of sqlite with a low-level interface for Android libraries.

Based on Android-sqlite-native-driver, which is based on SQLiteGlue-core.

Unlicense (public domain).

Automatic build procedure includes sqlcipher (BSD-style license) and part of libTomCrypt (public domain).

About

Android-sqlcipher-native-driver provides:

This is accomplished by using GlueGen around a simple wrapper C module.

This project is meant to help build a higher-level sqlite interface library, with the JNI layer completely isolated.

NOTE: This project references the gluegentools and sqlite-amalgamation subprojects, which are resolved by: $ make init (as described below).

WARNING: The sqlite database and statement handles that are returned by the SQLiteNative library functions are raw C pointer values (with 0x100000000 added). If someone uses a sqlite database or statement handle that is not valid, or no longer valid with the SQLiteNative library the behavior is undefined (such as a crash). It is NOT recommended to use this API directly unless you really understand how this library works internally.

TBD API and some internal details (probably in a blog post)

Building

Normal build

Initialize with the gluegentools subproject as well as libTomCrypt and sqlcipher dependencies from github:

$ make init

Then to build:

$ make

Regenerage Java & C glue code

$ make regen

Testing

Tested with Android-sqlite-connector.