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 (пользовательский)
- Соберите
app.axnкомандойaxion package; - Отправьте файл на устройство;
- Откройте через «Открыть через Axion» (интент
ACTION_VIEWкопирует файл вfilesDir/axion/incoming); - Перезапустите приложение — рантайм ставит
.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/ репозитория.
Интеграция в нативное приложение
Нативная интеграция