On Android, add the Ova Motion runtime AAR, load the .egg with EggPlayer.load(bytes), start a state machine, then advance and render it each frame into a bitmap or a GPU surface. Set inputs with setBool, setNumber and fire, and view model properties from Kotlin.
- Platform
- Android (arm64-v8a, x86_64) and the JVM
- Binding
- Kotlin, packaged as an AAR
- Draws with
- RGBA pixels, or the GPU
- Same file everywhere
- One .egg plays the same on every runtime
- License
- MIT or Apache-2.0
In Kotlin
EggPlayer.load(bytes).use { p ->
p.startStateMachine("switch")
p.setBool("on", true)
p.advance(1.0 / 60)
val rgba = p.renderRgba(256, 128)
}The AAR holds the native library for each ABI and the Kotlin wrapper; it uses JNA to reach the library.
Last checked against the product on 2026-10-15.



