2.8 KiB
Utilisation — Snake Tauri Android
Prérequis locaux
Le host utilise Cargo/Rust, cargo tauri, Node/npm, wasm-bindgen, Java et le SDK Android. Le dépôt attend ANDROID_HOME vers le SDK Android et des NDK side-by-side sous $ANDROID_HOME/ndk/<version>.
NDK_HOME n'est pas un prérequis utilisateur du projet. Tauri sélectionne la version NDK side-by-side appropriée sous $ANDROID_HOME/ndk/<version> et peut injecter lui-même NDK_HOME dans ses sous-processus Android. Une variable globale ne doit donc pas être ajoutée uniquement pour satisfaire la documentation générique de Tauri.
Pour Android, JAVA_HOME doit pointer vers un JDK compatible avec la chaîne Gradle générée par la version stable de Tauri 2 utilisée par le projet. La documentation Tauri recommande le JBR fourni par Android Studio. Le Java 25 global de la machine de validation n'est pas utilisé pour les commandes Tauri Android tant qu'il reste incompatible avec le wrapper Gradle stable. Le Gradle global installé sur la machine n'est pas utilisé par gradlew et n'est pas un prérequis du projet.
Exemple lorsque Android Studio est installé sous /opt/android-studio :
export JAVA_HOME=/opt/android-studio/jbr
"$JAVA_HOME/bin/java" -version
Si Android Studio se trouve ailleurs, utiliser le chemin réel de son répertoire jbr. Ne pas modifier gen/android pour contourner une incompatibilité de JDK.
Pour les cibles actuellement disponibles, aarch64-linux-android permet le smoke sur l'appareil ARM64 et x86_64-linux-android celui des AVD x86_64. Les autres ABI ne sont pas requises pour 0-pre.2.
Initialisation locale
Installer les dépendances frontend dans la crate :
(cd crates/apps/game-snake-poc-tauri && npm install)
Initialiser une fois le projet Android généré par Tauri :
(cd crates/apps/game-snake-poc-tauri && cargo tauri android init)
Le répertoire gen/ produit par Tauri est généré et ignoré ; il n'appartient pas aux deltas et ne doit pas être patché par des scripts propres au jeu. Une initialisation déjà réalisée reste utilisable ; il n'est pas nécessaire de rejouer android init pour ce fix.
Smoke Android de développement
Lancer ensuite :
(cd crates/apps/game-snake-poc-tauri && cargo tauri android dev)
Choisir l'appareil réel ou l'AVD voulu lorsque la CLI le demande. Le frontend doit afficher une provenance android / tauri-webview / wasm / unknown / unknown et les événements de démarrage doivent apparaître dans le tracing/logcat.
Ne pas utiliser npm run dev ou npm run build comme gate manuelle : ces scripts sont des hooks internes possédés par Tauri. cargo tauri android build reste réservé au jalon de packaging prévu par le plan, sauf diagnostic explicite.