0.1.0-0-pre.9
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: Android/README.md -->
|
||||
<!-- version: 5 -->
|
||||
<!-- version: 6 -->
|
||||
|
||||
# Android
|
||||
|
||||
@@ -20,7 +20,7 @@ Chaque module `game-*` est une application Android indépendante ; il dépend du
|
||||
|
||||
## Toolchain de référence
|
||||
|
||||
Pour la baseline `0.1.0-0-pre.8` :
|
||||
Pour la baseline `0.1.0-0-pre.9` :
|
||||
|
||||
- Android Gradle Plugin `9.4.0` ;
|
||||
- Gradle `9.6.0` attendu par AGP 9.4 ;
|
||||
@@ -73,6 +73,21 @@ Le script extrait temporairement `libSDL3.so` de l'AAR uniquement pour fournir l
|
||||
|
||||
## Bridge JNI et tactile
|
||||
|
||||
À partir de `0.1.0-0-pre.8`, `SaseGameActivity` vérifie au démarrage la version du bridge Java/JNI chargé depuis la bibliothèque Rust.
|
||||
À partir de `0.1.0-0-pre.9`, `SaseGameActivity` vérifie au démarrage la version du bridge Java/JNI chargé depuis la bibliothèque Rust.
|
||||
|
||||
Les touch events standards restent traités via SDL3 et ne transitent pas par JNI.
|
||||
|
||||
## Packaging des assets
|
||||
|
||||
Les modules applications exécutent `stageSasedevAssets` avant `preBuild`.
|
||||
|
||||
La tâche compose les sources :
|
||||
|
||||
```text
|
||||
assets/common/ -> assets/common/
|
||||
assets/<game>/ -> assets/game/
|
||||
```
|
||||
|
||||
dans un répertoire généré sous `Android/<module>/build/generated/sasedevAssets/main/`.
|
||||
|
||||
Aucune ressource source n'est copiée durablement dans un module Android ou une crate Rust.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// file: Android/game-reflex-poc/build.gradle
|
||||
// version: 6
|
||||
// version: 7
|
||||
|
||||
plugins {
|
||||
id 'com.android.application'
|
||||
@@ -16,7 +16,7 @@ android {
|
||||
minSdk 21
|
||||
targetSdk 36
|
||||
versionCode 1
|
||||
versionName '0.1.0-0-pre.8'
|
||||
versionName '0.1.0-0-pre.9'
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
@@ -29,3 +29,6 @@ dependencies {
|
||||
implementation files("../libs/${sdl3AarName}")
|
||||
implementation project(':common')
|
||||
}
|
||||
|
||||
ext.sasedevGameAssetDirectory = "game-reflex-poc"
|
||||
apply from: rootProject.file("gradle/sasedev-assets.gradle")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// file: Android/game-snake-poc/build.gradle
|
||||
// version: 6
|
||||
// version: 7
|
||||
|
||||
plugins {
|
||||
id 'com.android.application'
|
||||
@@ -16,7 +16,7 @@ android {
|
||||
minSdk 21
|
||||
targetSdk 36
|
||||
versionCode 1
|
||||
versionName '0.1.0-0-pre.8'
|
||||
versionName '0.1.0-0-pre.9'
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
@@ -29,3 +29,6 @@ dependencies {
|
||||
implementation files("../libs/${sdl3AarName}")
|
||||
implementation project(':common')
|
||||
}
|
||||
|
||||
ext.sasedevGameAssetDirectory = "game-snake-poc"
|
||||
apply from: rootProject.file("gradle/sasedev-assets.gradle")
|
||||
|
||||
22
Android/gradle/sasedev-assets.gradle
Normal file
22
Android/gradle/sasedev-assets.gradle
Normal file
@@ -0,0 +1,22 @@
|
||||
// file: Android/gradle/sasedev-assets.gradle
|
||||
// version: 1
|
||||
|
||||
def generatedAssetsDirectory = layout.buildDirectory.dir("generated/sasedevAssets/main")
|
||||
def sourceCommonAssets = rootProject.file("../assets/common")
|
||||
def sourceGameAssets = rootProject.file("../assets/${project.ext.sasedevGameAssetDirectory}")
|
||||
|
||||
tasks.register("stageSasedevAssets", Sync) {
|
||||
into(generatedAssetsDirectory)
|
||||
from(sourceCommonAssets) {
|
||||
into("common")
|
||||
}
|
||||
from(sourceGameAssets) {
|
||||
into("game")
|
||||
}
|
||||
}
|
||||
|
||||
android.sourceSets.main.assets.srcDir(generatedAssetsDirectory)
|
||||
|
||||
tasks.named("preBuild").configure {
|
||||
dependsOn(tasks.named("stageSasedevAssets"))
|
||||
}
|
||||
Reference in New Issue
Block a user