RussianLDP Рейтинг@Mail.ru
WebMoney: 
WMZ Z294115950220 
WMR R409981405661 
WME E134003968233 
Visa 
4274 3200 2453 6495 

Установка

Есть три способа добавить SQLite Android bindings в приложение:

  1. Добавляя предварительно собранный файл aar к проекту Android Studio.
  2. Строя aar-файл, затем добавляя его к проекту Android Studio, как в (1).
  3. Добавляя исходный код SQLite Android bindings и собирая его наряду с другим кодом приложения.

По умолчанию SQLite Android bindings поддерживает Android API levels 16 и больше (версии Android 4.1 и выше). Есть также отдельная версия, которая поддерживает уровни API Android 9 и больше (версия 2.3 Android и выше). Пожалуйста, отметьте дополнительный шаг, вовлеченный в получение кода, если вы хотите использовать версию, совместимую с уровнем API 9.

1. Использование предсобранного файла aar

Это самый прямой выбор. Файл "aar" подобен файлу jar, за исключением того, что он может содержать нативный код и собранные классы java. Файл aar для последнего выпуска SQLite, применимого с уровнями API 16 и выше, доступен здесь.

Есть два шага, вовлеченные в добавление aar-файла к проекту Android Studio:

  1. Импорт модуля. В Android Studio 2.1 это достигается, выбирая меню "File" -> "New" -> "New Module..." и затем выбирая "Import JAR/AAR Package".
  2. Добавьте зависимость от нового модуля в главный модуль приложения (или ко всем модулям, которые будут использовать SQLite Android bindings). В 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 IDEA). Однако, aar это просто zip-архив, содержащий файл classes.jar, который в свою очередь содержит Android SQLite java-классы с каталогом jni/, который содержит нативную библиотеку для каждой платформы. Извлекая эти две вещи из aar-файла и добавляя их к проекту отдельно, часто возможно использовать aar-файл в проектах не в Android Studio.

2. Сборка своего файла aar

Сборка своего файла aar требует Android SDK и NDK.

  1. Получение кода. Код для SQLite Android bindings может быть получен проверив хранилище fossil или загрузив zip-файл.

    Чтобы получить код, используя fossil, используйте следующую серию команд. В этом случае "каталог проекта" ("project directory") в последующих шагах это каталог sqlite, созданный второй командой ниже:

    $ fossil clone http://www.sqlite.org/android android.fossil
    $ mkdir sqlite
    $ cd sqlite
    $ fossil open ../android.fossil
    

    Альтернативно, последний код может быть загружен как zip-архив. В этом случае "project directory" это каталог SQLite_Android_Bindings/, созданный при распаковке архива.

    API level 9-15: код для версии, которая совместима с уровнем API 9 Android и больше, может быть получен как zip-файл здесь. Или, используя fossil, команда fossil open выше должна быть заменена:

    $ fossil open ../android.fossil api-level-9
    

  2. Формируйте нативные библиотеки.

    Последний выпуск библиотеки public domain SQLite связан с кодом SQLite Android bindings, полученным на шаге 1. Если вы хотите использовать иную версию SQLite, например, которая содержит расширение SEE, замените файлы 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
    

  3. Постройте и соберите aar-файл. Чтобы собрать aar-файл, используя командную строку, сначала установите переменную окружения ANDROID_HOME в каталог SDK, затем выполните цель "assembleRelease" из подкаталога "sqlite3" каталога проекта. Например:
    $ export ANDROID_HOME=~/Android/Sdk/
    $ cd sqlite3
    $ ../gradlew assembleRelease
    

    Сборка aar-файла, используя Android Studio похожа. Откройте проект SQLite Android bindings в Android Studio, выполните "gradle sync", затем выполните задачу "assembleRelease" в модуле "sqlite3".

    Используя командную строку или Android Studio, чтобы управлять задачей, Вы получите aar-файл в: sqlite3/build/outputs/aar/sqlite3-release.aar.

    Как только файл aar был создан, это может использоваться в приложении Android Studio, как описано выше. aar-файл должен составить примерно 3.2 МБ в размере. Если это намного меньше (ближе к 100 КБ), это указывает, что aar-файл пропускает нативные библиотеки по той или иной причине. Консультируйтесь с журналом сборки.

    Если файл Android.mk, описанный в шаге 2 выше, редактируется после того, как выполнена сборка, может быть необходимо выполнить очистку (../gradlew clean или через Android Studio) прежде, чем пересоздать файл aar, чтобы гарантировать правильную сборку.

3. Добавление исходного кода непосредственно к приложению

Код SQLite Android bindings может также быть добавлен непосредственно к прикладному проекту так, чтобы это было построено и развернуто таким же образом, как весь другой код приложения.

Скопируйте код SQLite Android bindings в приложение:

  1. Получите код как описано выше.
  2. Рекурсивно скопируйте содержание каталога sqlite3/main/src/jni/ в каталог jni/ приложения или в каталоги jni/ модулей приложения. Затем от родительского каталога jni/ выполните команду ndk-build, как описано здесь.
  3. Рекурсивно скопируйте содержание каталога sqlite3/main/src/java/ туда, где находится java-код приложения.

Поиск

 

Найди своих коллег!