mirror of
https://github.com/rust-mobile/android-activity.git
synced 2026-07-10 08:44:11 +00:00
57b5192366
This updates both the examples to Gradle 9 and AGP 9.1 The examples are identical, except that `na-mainloop` is based on NativeActivity and the `agdk-mainloop` based on GameActivity. The examples demonstrate: - Using the `jni` API to define enough bindings to be able to send a Toast - Using an `android_on_create` entry point for logging initialization and JNI initialization - Using `AndroidApp::run_on_java_main_thread()` to send a toast from the Java main / UI thread - Running an `android_main` event loop, including printing historic pointer samples (a new 0.6.1 feature) The examples support two input actions: - Lifting your finger in the top-left corner of the screen will show the onscreen keyboard - Lifting your finger in the top-right corner of the screen will hide the onscreen keyboard If you edit and disable `configChanges` in `AndroidManifest.xml` then these examples can also demonstrate that `android-activity` gracefully handles repeated `Activity` create -> run -> destroy cycles.
18 lines
558 B
Markdown
18 lines
558 B
Markdown
This is a minimal test application based on `GameActivity` that just
|
|
runs a mainloop based on android_activity::poll_events() and traces
|
|
the events received without doing any rendering. It also saves and
|
|
restores some minimal application state.
|
|
|
|
```
|
|
export ANDROID_NDK_HOME="path/to/ndk"
|
|
export ANDROID_HOME="path/to/sdk"
|
|
|
|
rustup target add aarch64-linux-android
|
|
cargo install cargo-ndk
|
|
|
|
cargo ndk -t arm64-v8a -o app/src/main/jniLibs/ build
|
|
./gradlew build
|
|
./gradlew installDebug
|
|
adb shell am start -n com.github.rust_mobile.agdkmainloop/.MainActivity
|
|
```
|