Android
When to use
Use for Android-specific feature work where lifecycle, API level, system permissions, or device variation can change the result.
Boundaries
Use the Flutter or React Native skill for changes owned by those app layers. Use Mobile UI for a design review without Android implementation.
Inputs
Read the app module, build files, minimum and target SDK, navigation setup, UI toolkit, manifest permissions, and existing test approach. Identify the devices and OS versions the project supports.
Method
- Trace the user action through screen state, navigation, repository or service call, and the Android lifecycle. Find where state is restored after process death.
- Implement the feature within the project's existing architecture. Request permissions at the point of need, handle denial and permanent denial, and avoid blocking the main thread.
- Test configuration changes, background and foreground transitions, slow or absent network, and the smallest supported API level. Include large text and screen-reader behavior when UI changes.
Decision rules
- If an OS version changes permission or background behavior, branch on the documented API contract and test both paths.
- If the app uses a cross-platform framework, keep platform-specific work in the native boundary and document the bridge contract.
Verification
- A normal user completes the task on a supported device.
- State survives recreation or the user receives an explicit recovery path.
- Permission denial and network failure do not trap the user or silently discard work.
Stop and handoff
If a required device, API contract, or permission flow cannot be tested, state the exact unverified path and the device or evidence needed before release.
Output
Return the changed files or implementation plan, supported-device matrix, permission and lifecycle decisions, and test results by device/API level.