Comment compiler la version Android
Android SDK : Version minimale du SDK : 21 Version cible du SDK : 29 Outils du SDK cible : 29
Android NDKÂ : 23.
Compiler lâapk Androidâ
- Configurez dâabord lâenvironnement de dĂ©veloppement.
- Gradle (ligne de commande)Â :
- SpĂ©cifiez les variables dâenvironnement. ANDROID_SDK et ANDROID_HOME sont les emplacements oĂč Android Studio place les Ă©lĂ©ments :
export ANDROID_SDK=/[your-path]/Android/sdk
export ANDROID_NDK=/[your-path]/android-ndk-23
export ANDROID_HOME=/[your-path]/Android/sdk- Compilez avec la ligne de commande
cd android/OsmAnd && ../gradlew assembleNightlyFreeLegacyFatDebug
- Android Studio :
import android project and run module flavor `android.OsmAnd`
- Vous pouvez utiliser notre debug.keystore pour rendre les builds compatibles avec la nightly build.
TĂąches/saveurs Gradleâ
La tĂąche Gradle assembleNightlyFreeLegacyFatDebug produira lâapk dans android/OsmAnd/build/outputs/apk/ nightlyFreeLegacyFat/debug/OsmAnd-nightlyFree-legacy-fat-debug.apk. Le nom de la tĂąche assembleNightlyFreeLegacyFatDebug se compose de :
- assemble - tĂąche standard pour construire lâapk
- nightlyFree - saveur de build décrite ci-dessous
- legacy - legacy / opengl / opengldebug - dĂ©finit si lâapk produit aura des bibliothĂšques natives pour utiliser le rendu de carte opengl ou non. Plus dâinformations dans le plugin de dĂ©veloppement OsmAnd.
- fat - fat (toutes les cibles natives) / armv7 / arm64 / x86 / armonly - sĂ©lectionne les bibliothĂšques natives qui seront dans lâapk.
- debug - debug / release - tĂąche standard
Pour construire le bundle, vous pouvez utiliser bundle${FLAVOR}LegacyFatRelease
.
Saveur | Paquet | Description |
---|---|---|
nightlyFree | net.osmand.dev | Build gratuite nocturne qui peut ĂȘtre installĂ©e Ă cĂŽtĂ© des deux versions GPlay pour les tests et lâexploration |
androidFull | net.osmand.plus | La version complĂšte dâOsmAnd~ peut ĂȘtre utilisĂ©e pour les builds F-Droid. Nâutilise pas les services Google Play. |
gplayFree | net.osmand | Version Google Play OsmAnd - utilise les services Google Play. |
gplayFull | net.osmand.plus | Version Google Play OsmAnd+ - utilise les services Google Play. |
huawei | net.osmand | Build spéciale pour le marché Huawei - utilise les services Huawei mais pas Google Play |
DĂ©bogageâ
Activer le dĂ©bogage NDK pour la bibliothĂšque native hĂ©ritĂ©e (OsmAnd-core-legacy)â
Dans OsmAnd/OsmAnd/jni/Application.mk, décommentez les lignes
APP_OPTIM := debug
APP_DEBUG := true
Ajoutez des symboles de dĂ©bogage dans la configuration du projet Android Studio. Pour cela, allez dans Edit Configuration / dans le menu de gauche, sĂ©lectionnez Android App "OsmAnd" / sur le cĂŽtĂ© droit, sĂ©lectionnez lâonglet "Debugger". Et ajoutez OsmAnd/obj/local oĂč les bibliothĂšques de build pour diffĂ©rentes configurations (arm64-v8a, armeabi-v7a, x86, x86_64).
Compiler la bibliothĂšque OpenGLâ
La bibliothÚque Opengl est nécessaire pour des cibles comme assembleNightlyFreeOpenglFatDebug et est par défaut téléchargée depuis le répertoire OsmAnd ivy - tùche gradle. Pour le développement local, vous pourriez avoir besoin de compiler ces bibliothÚques et de les publier dans le répertoire ivy local.
- Configurez dâabord lâenvironnement de dĂ©veloppement, voir environnement de dĂ©veloppement.
- Installez les outils.
- Android SDK - 29.
- Android NDK - 23.
- CMake > 3.6 (cmake -version).
- SWIG - 4.1.1 (ou compatible).
- Compilateur c++ local (de préférence clang).
- Outils Bash : wget, curl, python ...
- Gradle (ligne de commande)Â :
- SpĂ©cifiez les variables dâenvironnement. ANDROID_SDK et ANDROID_HOME sont les emplacements oĂč Android Studio place les Ă©lĂ©ments :
export ANDROID_SDK=/[your-path]/Android/sdk
export ANDROID_NDK=/[your-path]/android-ndk-23
export ANDROID_HOME=/[your-path]/Android/sdk- Compilez avec la tĂąche de build gradle
cd core/wrappers/android && ../gradlew build
Astuce : La compilation peut prendre beaucoup de temps et vous nâaurez probablement pas besoin de toutes les plateformes, vous pouvez donc commenter les architectures indĂ©sirables dans le script et ne construire que pour 1 plateforme (x86, x86_64, arm, arm64) en mode debug ou release.
DĂ©bogageâ
à compléter : comment configurer le débogage Android ndk.
Compiler les exemples dâAPIâ
This article is incomplete & needs to be reviewed. You can help by creating a pull request.
OsmAnd fournit 2 types dâexemples dâapplications, ils sont tous reprĂ©sentĂ©s dans le dĂ©pĂŽt Github osmand-api-demo et compilĂ©s rĂ©guliĂšrement sur OsmAnd Builder.
Script de compilation :
(cd OsmAnd-api-sample && ./gradlew clean assembleRelease)
(cd OsmAnd-map-sample && ./gradlew clean assembleRelease)
- OsmAnd-api-sample - lâapplication exemple la plus simple qui interagit avec OsmAnd dĂ©jĂ installĂ© via lâinterface AIDL et les Intents.
- OsmAnd-map-sample - une application exemple qui a OsmAnd entiĂšrement intĂ©grĂ© en tant que SDK. Permet dâutiliser toutes les API internes.