The short version
Screamdroid collects nothing, stores nothing about you, and sends nothing anywhere. It listens on a UDP port for audio sent by a computer on your own network, plays what arrives, and keeps its settings on the phone. There is no account, no analytics, no advertising, no crash reporting and no network destination other than the computer you point it at.
What the app does with data
| Kind | What happens |
|---|---|
| Audio received from your computer | Played, and discarded as it is played. It is never recorded, stored or forwarded. The app has no microphone permission and cannot record anything. |
| Settings (port, mode, buffer preset, volume, and so on) | Stored on the device in the app's own private storage. Removed when the app is uninstalled. |
| Diagnostics (packet counts, buffer latency, recent events) | Kept in memory while the app runs, shown on the diagnostics screen, and lost when it stops. Copying the report puts it on your clipboard; nothing is sent. |
| The address of the sending computer | Shown on screen so you can tell whether the right machine is sending. Not stored beyond the running session. |
Data shared with third parties
None. The app contains no third-party SDK for analytics, advertising, attribution or crash reporting, and makes no outbound network connection of its own.
Permissions, and why each one exists
| Permission | Why |
|---|---|
INTERNET | To open the UDP socket the audio arrives on. |
ACCESS_NETWORK_STATE, ACCESS_WIFI_STATE | To see whether the phone is on Wi-Fi or mobile data, and to hold a Wi-Fi lock while playing so the radio does not batch packets. |
CHANGE_WIFI_MULTICAST_STATE | Only when multicast is selected: Wi-Fi hardware discards group traffic unless an app asks for it. |
WAKE_LOCK | To keep playing with the screen off. |
FOREGROUND_SERVICE, FOREGROUND_SERVICE_MEDIA_PLAYBACK | Playback continues while the app is not on screen, which Android requires a foreground service and its notification for. |
POST_NOTIFICATIONS | For that notification, which is also where mute and stop live. Refusing it does not stop the audio. |
The app asks for no location, contacts, storage, camera or microphone permission, and none of those are declared.
Children
The app is not directed at children and collects no personal information from anyone, of any age.
Changes
If a future version ever collects anything, this page will say so before that version is published, and the change will be visible in the repository's history.
Contact
Questions or corrections: open an issue at github.com/zirize/screamdroid/issues.