返回:SQLite—系列文章目录
上一篇:SQLite超详细的编译时选项(十六)
下一篇:SQLite Android 绑定(十八)
安装
有三种方法可以将 SQLite Android 绑定添加到应用程序:
1、通过将预构建的 aar 文件添加到应用程序 Android Studio 项目。
2、通过构建一个 aar 文件,然后将其添加到应用程序 Android Studio 项目,如 (1) 所示
3、通过添加 SQLite Android 绑定源代码并构建它 以及其他应用程序代码。
默认情况下,SQLite Android 绑定支持 Android API 级别 16 及更高版本(Android 4.1 及更高版本)。还有一个单独的版本 支持 Android API 级别 9 及更高版本(Android 版本 2.3 和 上)。如果您希望使用与 API 级别 9 兼容的版本,请注意获取代码所涉及的额外步骤。
1. 使用预构建的 aar 文件
这是最直接的选择。“aar”文件类似于 jar 文件,除了它可能同时包含编译的 Java 类和 本机代码。可用于最新 SQLite 版本的 aar 文件 此页面提供 API 级别 16 及更高级别。
将 aar 文件添加到 Android Studio 涉及两个步骤 项目:
-
导入模块。在 Android Studio 2.1 中,这是 通过选择菜单,然后选择 。
"File" -> "New" -> "New Module..."
"Import JAR/AAR Package"
-
将对新模块的依赖项添加到主应用程序模块(或将使用 SQLite Android 绑定的所有模块)中。在 Android Studio 2.1 可以使用项目创建依赖项 结构对话框(“选择”)或 通过将类似于以下内容的代码添加到应用程序模块文件中:
"File" -> "Project Structure..."
build.gradle
dependencies {
// Change "sqlite-android-3130000" to the name of the new module!
compile project(':sqlite-android-3130000')
}
使用上述步骤创建非常 此处提供简单的应用程序。
在撰写本文时,aar 文件只能直接在 Android Studio 中使用 项目,而不是使用其他 IDE(例如 Eclipse、IntelliJ 想法)。但是,aar 只是一个 zip 存档,其中包含一个文件,而该文件又包含 SQLite Android 绑定 Java 类和包含 每个平台的本机库。通过从中提取这两个东西 AAR 文件并将它们单独添加到项目中,通常可以 在非 Android Studio 项目中使用 aar 文件。classes.jar
jni/
2. 构建自定义 aar 文件
构建自定义 aar 文件需要 Android SDK 和 NDK。
获取代码。SQLite Android 绑定的代码可能 通过签出获得 化石存储库,或通过下载 zip 文件。
要使用 fossil 获取代码,请使用以下一系列命令。 在这种情况下,后续步骤中引用的“项目目录”是 由下面的第二个命令创建的目录:sqlite
$ fossil clone http://www.sqlite.org/android android.fossil
$ mkdir sqlite
$ cd sqlite
$ fossil open ../android.fossil
或者,最新的代码可以下载为zip存档。 在本例中,“项目目录”是通过解压缩 下载的存档。SQLite_Android_Bindings/
API 级别 9-15 用户:版本的代码 兼容 Android API 级别 9 及更高版本的 zip 格式 文件从这里。 或者,如果使用 fossil,上面的命令应该是 替换为:fossil open
$ fossil open ../android.fossil api-level-9
-
配置本机库。
公共领域 SQLite 库的最新版本是捆绑的 使用在步骤 1 中下载的 SQLite Android 绑定代码。如果你愿意 使用不同版本的 SQLite,例如包含 proprietry SEE 扩展名,然后替换以下位置的 and 文件:sqlite3.c
sqlite3.h
sqlite3/src/main/jni/sqlite/sqlite3.c
sqlite3/src/main/jni/sqlite/sqlite3.h
默认情况下,SQLite 是使用以下选项构建的:
-DSQLITE_ENABLE_FTS5
-DSQLITE_ENABLE_RTREE
-DSQLITE_ENABLE_JSON1
-DSQLITE_ENABLE_FTS3
使用命令行的其他组合构建 SQLite 库 开关,编辑以下位置的文件:Android.mk
sqlite3/src/main/jni/sqlite/Android.mk
-
生成并组装 aar 文件。要使用 命令行,首先设置环境变量ANDROID_HOME到 SDK 目录中,然后从 项目目录的“sqlite3”子目录。例如:
$ export ANDROID_HOME=~/Android/Sdk/ $ cd sqlite3 $ ../gradlew assembleRelease
使用 Android Studio 组装 aar 文件与此类似。打开 SQLite 使用 Android Studio 的 Android 绑定项目,运行“gradle sync”,然后 在“sqlite3”模块中运行“assembleRelease”gradle 任务。
使用命令行或 Android Studio 运行 gradle 任务 导致在以下位置创建 AAR 文件: 。
sqlite3/build/outputs/aar/sqlite3-release.aar
创建自定义 aar 文件后,可以在 Android 中使用 如上所述的 Studio 应用程序。aar 文件应大致为 大小为 3.2MB。如果它比这个小得多(接近 100KB),这个 指示 AAR 文件缺少一个的本机库 原因或其他原因。查阅生成日志。
如果编辑了上述步骤 2 中描述的文件 运行生成后,可能需要运行 Gradle “干净”目标(使用或通过 Android Studio),然后再重新生成 aar 文件,以确保构建正确。
Android.mk../gradlew clean
3. 直接将源代码添加到应用程序中
SQLite Android 绑定代码也可以直接添加到 应用程序项目,以便以相同的方式构建和部署它 与所有其他应用程序代码一样。
要将 SQLite Android 绑定代码复制到应用程序中,请执行以下操作:
1、以与上述相同的方式获取代码。
以递归方式将目录的内容复制到应用程序或应用程序模块目录中。然后,从目录的父级中运行 命令,如此处所述。sqlite3/main/src/jni/
jni/
jni/
ndk-build
2、以递归方式将目录的内容复制到应用程序 java 代码所在的任何位置。sqlite3/main/src/java/