network-scanner

Network Scanner icon # Network Scanner A fast, privacy-focused network scanner for Android

CI Downloads F-Droid License: GPL v3

Find every device on your local network, with its IP address, hostname, open ports, and device type. No ads, no tracking, no root required, and it works fully offline.

Get it on Google Play Get it on F-Droid

Download the latest APK from the Releases page.

Screenshots

Main Screen Devices List Device Details Device Open Ports Custom Icon Settings Screen

Features

Discovery

Device details

Requirements

Verification

Builds from this repository, Google Play and F-Droid are all signed with the same key. Verify the signing certificate rather than the APK file hash — each store repackages the APK, so file hashes differ while the certificate stays the same.

Check it with an on-device verifier app, or apksigner verify --print-certs <apk>, which prints the same value in lower case without colons.

Permissions

- **INTERNET** - Required by Android to open any network socket, including local-network scans; the app never contacts the internet - **ACCESS_NETWORK_STATE** - To check network connectivity - **ACCESS_WIFI_STATE** - To get Wi-Fi information - **CHANGE_WIFI_MULTICAST_STATE** - For network device discovery - **NEARBY_WIFI_DEVICES** (Android 13+) - To discover nearby Wi-Fi devices. On Android 16+ this permission also gates local network access (sockets to local addresses, mDNS, SSDP), so scanning cannot work without it - **ACCESS_FINE_LOCATION** / **ACCESS_COARSE_LOCATION** - Optional. Used only to read Wi-Fi network details such as the SSID, and never for location tracking; scanning works without it

Building

Requires JDK 17 and the Android SDK (API 36).

git clone https://github.com/usamaiqb/network-scanner.git
cd network-scanner
./gradlew assembleDebug

The APK is written to app/build/outputs/apk/debug/. See CONTRIBUTING.md for the full development setup.

Translations

| Language | Progress | | — | — | | English | ████████████ 100% (source) | | العربية | ████████████ 99% | | Español | ████████████ 99% | | Italiano | ████████████ 99% | | Русский | ███████████░ 91% | | Українська | ████████████ 99% | | 中文 (中国) | ████████████ 100% |

To add or improve a translation, edit app/src/main/res/values-<locale>/strings.xml and open a pull request.

Known limitations

Since Android 10, apps can’t read other devices’ entries from the system ARP table, so MAC address and vendor only appear for your own device and sometimes the router. This affects every network scanner app and can’t be bypassed without root.

Contributing

Contributions are welcome. Read CONTRIBUTING.md first, and use Issues or Discussions for bugs and questions.

License

GNU General Public License v3.0. See the Privacy Policy for how the app handles data.