firewheel_repo_android
This repository contains FIREWHEEL model components for Android emulation, Android-specific VM resources, and Android-oriented test and automation topologies. Android devices in this repository are launched as native minimega android VMs and controlled through FIREWHEEL’s ADB-based VM Resource Handler.
It serves as the Android component and reference layer for FIREWHEEL. For end-to-end workflow tutorials, start with the FIREWHEEL Android tutorials.
Installation
These model components are intended to be set up through their INSTALL workflows.
Due to licensing and distribution constraints, some Android SDK, emulator, AVD, and tool artifacts are reproduced or staged through INSTALL rather than being shipped directly in the open-source tree. In normal use, users should run the relevant INSTALL workflows instead of manually assembling dependencies.
This includes:
Android SDK and emulator setup through android.base_objects;
device-specific assets such as android.pixel9a;
host-side Maestro installation through android.maestro;
optional test APK resources used by Android test topologies.
For general background on reproducible resource installation, see the FIREWHEEL INSTALL tutorial.
Included Model Components
This repository currently provides the following primary model components:
android.base_objects
android.pixel9a
android.maestro
android.test_topology
android.mixed_test_topology
android.maestro_test_topology
Adding a New Android Device
To add support for a new Android device, create a model component similar to android.pixel9a and provide a corresponding INSTALL workflow that stages the device’s AVD assets and any required SDK packages.
Android Studio can be used to create or download AVDs. In general, avoid Google Play images when root access is required for experimentation.
Default -read-only Behavior
These Android model components add -read-only by default through android-extra-args so that multiple emulators can share the same AVD definition.
This default supports:
multiple Android phones using the same AVD;
larger Android-only topologies;
mixed Android and Ubuntu topologies.
If -read-only is disabled while multiple emulators share one AVD, emulator launch is expected to fail.
Testing and Validation
Use the topology-specific model components as the primary validation entry points:
android.test_topology for Android-only smoke, network, and APK tests;
android.mixed_test_topology for Android and Ubuntu mixed-topology validation;
android.maestro_test_topology for host-side Maestro automation validation.
Those component docs contain the topology-specific commands, parameters, and expected behavior.
Troubleshooting
If Android devices fail to launch, inspect the Android emulator log in FIREWHEEL’s vm_resource_logs directory and verify the runtime ADB details.
Useful commands:
minimega -e ".columns name,state,type,android_console_port,android_adb_port,android_serial vm info"
adb devices
adb -s emulator-5554 shell 'getprop sys.boot_completed; getprop dev.bootcomplete; pm path android'
adb -s emulator-5554 shell 'ip addr; ip route; ip rule'
Common issues include missing emulator binaries, launching multiple writable instances from one shared AVD, missing Python or Bash assumptions in Android VM resources, split APK installation errors, and lost runtime networking after reboot.
See Also
Metadata
Release files for firewheel-repo-android 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| firewheel_repo_android-1.0.0.tar.gz | 68.5 kB | Without provenance | Details for firewheel_repo_android-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| firewheel_repo_android-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for firewheel_repo_android-1.0.0-py3-none-any.whl |
Total release size: 144.4 kB
Release files / firewheel_repo_android-1.0.0.tar.gz
| Download URL | firewheel_repo_android-1.0.0.tar.gz |
|---|---|
| Size | 68.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
da5bf48e270553db9e43f5bed7090528a48be003734d6f5727c2e4d86b3eae8d
|
|
BLAKE2b-256 checksum How to use checksums |
1676c098757a9f16fb097414d1eec0a48324c6845e8de8ba7785906eaabc2c0e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / firewheel_repo_android-1.0.0-py3-none-any.whl
| Download URL | firewheel_repo_android-1.0.0-py3-none-any.whl |
|---|---|
| Size | 75.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c19593f6408b32e62a3dc1cfa3c0f2a92339f4bacdf5903d86b15d9c59bc89a7
|
|
BLAKE2b-256 checksum How to use checksums |
af4d324f48c47b2915f1da5367921764a2fa399e07cce1ddd7abb94b33f66a0e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Security for firewheel-repo-android 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.