43 lines
2.6 KiB
Markdown
43 lines
2.6 KiB
Markdown
<!-- file: crates/apps/game-snake-poc-tauri/USAGE.md -->
|
|
<!-- version: 2 -->
|
|
|
|
# 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.
|
|
|
|
`JAVA_HOME` n'est pas imposé tant que la CLI Tauri résout correctement `java` depuis l'environnement. L'environnement de validation utilise Java 25 ; Tauri CLI `2.11.x` génère encore un wrapper Gradle `8.14.3`, qui ne peut pas exécuter ce JDK. Le host corrige ce scaffold généré avant les hooks frontend vers Gradle `9.6.1`, AGP `9.3.1` et Kotlin `2.2.10`, combinaison déjà adoptée par la migration Android upstream de Tauri. Le Gradle global installé sur la machine n'est pas utilisé par `gradlew` et n'est pas requis par ce correctif.
|
|
|
|
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 :
|
|
|
|
```bash
|
|
(cd crates/apps/game-snake-poc-tauri && npm install)
|
|
```
|
|
|
|
Initialiser une fois le projet Android généré par Tauri :
|
|
|
|
```bash
|
|
(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. Le correctif Gradle 9 est appliqué à ce répertoire par le hook Tauri au prochain `android dev` ou `android build`, y compris si `gen/android` existe déjà depuis `0-pre.2`. Il n'est donc pas nécessaire de rejouer `android init` pour appliquer le fix.
|
|
|
|
## Smoke Android de développement
|
|
|
|
Lancer ensuite :
|
|
|
|
```bash
|
|
(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.
|