| name | android-audio-e2e |
| description | Build and run device-backed Android end-to-end checks for react-native-nitro-sound permissions, recording, playback, listeners, pause/resume, seek, speed, audio focus, lifecycle behavior, and rapid switching. Use for Kotlin or Android regressions and runtime claims beyond a Gradle compile. |
Android Audio E2E
Keep compilation, installation, and live audio verification as separate result
lanes.
Safety And Scope
- Obtain explicit approval in the current run before starting live microphone
capture. State that the example package
sound.example will record a short
test clip.
- Use non-sensitive audio. Do not upload, transcribe, or retain recordings
beyond the verification need.
- Preserve existing ADB reverse rules, permissions, accounts, and device files.
- Test background recording, phone/audio-focus interruption, Bluetooth routing,
or process death only when requested or required by the change.
Preflight
- Read
AGENTS.md, .github/workflows/ci-android.yml, the changed
Kotlin/spec/TS files, and the relevant example screen.
- Record
git status --short --branch and adb devices -l.
- Confirm JDK 17, the Android SDK, and a single intended emulator or device.
- Verify
RECORD_AUDIO appears in the example manifest and identify the
current permission state without changing it.
- Run
yarn install --immutable and yarn nitrogen when generated Android
bindings are involved.
Build Lane
Mirror the CI build:
yarn turbo run build:android --cache-dir=.turbo/android
If diagnosing Gradle directly, run the corresponding example task with
--no-daemon --console=plain and record the exact task and architecture.
Report or independently.