1
0
mirror of https://github.com/PurpleI2P/i2pd_docs_ru synced 2025-03-13 05:41:06 +00:00
i2pd_docs_ru/docs/build_notes_android.md

58 lines
3.3 KiB
Markdown
Raw Normal View History

2016-10-12 15:41:06 +00:00
Сборка для Android
==================
2016-10-13 09:25:16 -04:00
Существуют 2 версии: с использованием QT и без него
2016-10-12 15:41:06 +00:00
2016-10-13 09:25:16 -04:00
Необходимые пакеты
------------------
2016-10-12 15:41:06 +00:00
2016-10-13 09:25:16 -04:00
Требуются Android SDK, NDK и QT с поддержкой андроида (для QT).
2016-10-12 15:41:06 +00:00
2016-10-13 09:25:16 -04:00
- [SDK](https://developer.android.com/studio/index.html) (выбрать command line tools only)
2016-10-12 15:41:06 +00:00
- [NDK](https://developer.android.com/ndk/downloads/index.html)
2016-10-13 09:27:47 -04:00
- [QT](https://www.qt.io/download-open-source/)(только для QT). Выбрать версию для андороида для вашей платформы. Например QT 5.6 под лиункс будет [этот файл](http://download.qt.io/official_releases/qt/5.6/5.6.1-1/qt-opensource-linux-x64-android-5.6.1-1.run )
2016-10-12 15:41:06 +00:00
2016-10-13 09:25:16 -04:00
Также потребуется Java JDK и Ant.
2016-10-12 15:41:06 +00:00
2016-10-13 09:25:16 -04:00
QT-Creator (только для QT)
2016-10-12 15:41:06 +00:00
------------------------
2016-10-13 09:25:16 -04:00
Запустить QT-creator, который должен быть установлен вместе с QT.
Идти в Settings/Anndroid и указать пути к SDK and NDK.
Если все сделано правильно то должно появиться:
Android for armeabi-v7a (gcc, qt) и Android for x86 (gcc, qt).
2016-10-12 15:41:06 +00:00
2016-10-13 09:25:16 -04:00
Библиотеки
2016-10-13 09:27:47 -04:00
----------
2016-10-13 09:25:16 -04:00
Следущие собранные библиотеки следует взять и репозитария PurpleI2P.
2016-10-12 15:41:06 +00:00
```bash
git clone https://github.com/PurpleI2P/Boost-for-Android-Prebuilt.git
git clone https://github.com/PurpleI2P/OpenSSL-for-Android-Prebuilt.git
git clone https://github.com/PurpleI2P/MiniUPnP-for-Android-Prebuilt.git
git clone https://github.com/PurpleI2P/android-ifaddrs.git
```
2016-10-13 09:25:16 -04:00
Сборка с QT
2016-10-13 09:27:47 -04:00
------------
2016-10-13 09:25:16 -04:00
- Открыть qt/i2pd_qt/i2pd_qt.pro в QT-creator
- Поменять строчку MAIN_PATH = /path/to/libraries на директорию где лежать зависимости из предыдущего пункта
- Выбрать проект для целевой платформы (как правило armeabi-v7a) и собрать
- .apk файл появится в android-build/bin
2016-10-12 15:41:06 +00:00
2016-10-13 09:25:16 -04:00
Сборка без QT
2016-10-13 09:27:47 -04:00
-------------
2016-10-13 09:25:16 -04:00
- Поменять строку I2PD_LIBS_PATH в android/jni/Application.mk на директорию с зависимостями
- Запустить команду 'ndk-build -j4' из директории andorid
- Поправить файл 'local.properties'. Строчки 'sdk.dir=<путь к SDK>' и 'ndk.dir=<путь к NDK>'
2016-10-12 15:41:06 +00:00
- Run 'ant clean debug'
2016-10-13 09:25:16 -04:00
Релизный .apk
--------------
Релизный .apk следует подписать своей подписью для чего требуется Java keystore file(.jks). Либо взять уже существующий, либо сделать новый с помощью keytool либо сконвертировать какой нибудь из своих сертификатов. Например i2pd пидписан этим [сертификатом](https://github.com/PurpleI2P/i2pd/blob/openssl/contrib/certificates/router/orignal_at_mail.i2p.crt).
Создать файл 'ant.propeties'
key.store='путь к keystore file'
2016-10-12 15:41:06 +00:00
key.alias='alias name'
key.store.password='keystore password'
key.alias.password='alias password'
2016-10-13 09:25:16 -04:00
Запустить 'ant clean release'