Axion Платформа Скачать
Documentation · Engine · 06

Сборка рантайма

Сборка десктопного и мобильного рантайма, установка APK, dev-режим.

06 Сборка рантайма

Axion собирается через Cargo (Rust). Десктопная и мобильная сборка отличаются только целевой платформой.

6.1Desktop

cd axion
cargo build --release

Бинарный файл axion появляется в target/release. Для локальной разработки:

cargo test                       # все тесты (включая webview, ipc, packages)
cargo build -p axion-engine      # только Engine
cargo build -p axion-cli         # только CLI

6.2Android

В APK собирается рантайм libaxion_mobile.so + Kotlin-обвязка + встроенный launcher. Сами приложения в APK не вшиваются.axn устанавливаются отдельно.

export ANDROID_NDK_HOME="$HOME/Android/Sdk/ndk/<version>"
export WRY_ANDROID_PACKAGE=dev.axion.mobile
export WRY_ANDROID_LIBRARY=axion_mobile

cargo ndk -t armv7-linux-androideabi \
  -o mobile/android/app/src/main/jniLibs build -p axion-mobile

cd mobile/android && ./gradlew :app:assembleDebug

APK появится в mobile/android/app/build/outputs/apk/debug/.

6.3Установка приложения на устройство

Есть два способа:

Через intent (пользовательский)

  1. Соберите app.axn командой axion package;
  2. Отправьте файл на устройство;
  3. Откройте через «Открыть через Axion» (интент ACTION_VIEW копирует файл в filesDir/axion/incoming);
  4. Перезапустите приложение — рантайм ставит .axn в Package Manager и сразу открывает.

Через adb (для разработчиков)

adb push app.axn /data/local/tmp/
adb shell am start -a android.intent.action.VIEW \
  -d file:///data/local/tmp/app.axn \
  -t application/octet-stream dev.axion.mobile

6.4iOS

Сборка для iOS аналогична Android, но использует Xcode и cargo build --target aarch64-apple-ios. Детали — в каталоге mobile/ios/ репозитория.

Интеграция в нативное приложение
Нативная интеграция