Installation
Network Survey is available from four places. Each one carries one of the app’s two builds:
| Where | Build | Updates |
|---|---|---|
| Google Play | Google Play build | Through Google Play |
| F-Droid | CDR build | Through an F-Droid client |
| IzzyOnDroid | CDR build | Through an F-Droid client with the IzzyOnDroid repository added |
| GitHub releases | Both, as separate APKs | By hand: download and install each new release |
The Google Play build includes Firebase Analytics and Crashlytics. Its call records cover calls and tower changes, but not text messages (SMS and MMS) or the other party’s phone number, because Google Play does not allow the permissions those need.
The CDR build has no Firebase or other tracking libraries, and its call records can also include text messages (SMS and MMS) and the other party’s phone number.
See Build variants for more.
Google Play
Section titled “Google Play”The easiest way to install Network Survey, with automatic updates.
F-Droid
Section titled “F-Droid”F-Droid is a catalog of free and open source Android apps. It builds the CDR build of Network Survey from the source code.
IzzyOnDroid
Section titled “IzzyOnDroid”IzzyOnDroid is an F-Droid compatible repository. It carries the CDR build.
GitHub releases
Section titled “GitHub releases”Recent releases on the GitHub releases page have both builds, each split into one APK per processor type so the download is smaller. The file names follow this pattern:
networksurvey-<version>-<build>-<processor>-release.apkwhere <build> is regular (the Google Play build) or cdr (the CDR build), and <processor> is one of these:
| Processor | For |
|---|---|
arm64-v8a | Almost all modern phones and tablets |
armeabi-v7a | Older 32-bit ARM phones |
x86_64 | Some tablets, Chromebooks and emulators |
x86 | Older emulators |
universal | Works on every device, but is a larger download. Pick this one if you are not sure |
Most people want arm64-v8a. For example, the CDR build for a typical modern phone is networksurvey-<version>-cdr-arm64-v8a-release.apk.
To install an APK:
- Download it on the phone from the releases page.
- Open the downloaded file.
- If Android asks, allow your browser or file manager to install unknown apps, then go back and tap Install.
To check that an APK really came from the Network Survey project, see APK verification.
Building from source
Section titled “Building from source”To build Network Survey yourself or change the code, see the GitHub repository. Its README explains how to build and install each build.
Which one should I choose?
Section titled “Which one should I choose?”- Most people: Google Play, for the easiest install and automatic updates.
- No tracking libraries, or call records with text messages: the CDR build, from F-Droid, IzzyOnDroid or GitHub.
- A specific version: GitHub releases.
- Developers: build from source.
Switching between builds
Section titled “Switching between builds”Android only installs an update over the app you have if both are signed with the same key. The version from Google Play is signed by Google Play, so it has a different key from the APKs on GitHub. F-Droid checks that its own build matches the developer’s and then ships the developer-signed APK, so F-Droid and GitHub APKs share a key. To move between Google Play and an APK from GitHub or F-Droid, you need to uninstall first. Uninstalling removes the app’s settings and saved setups. Log files stay in Download/NetworkSurveyData/csv, but after you reinstall, the Log files page no longer lists them, because Android only shows an app the files it created. Open them with a file manager, or share or copy them off the phone before you switch.
The app’s Device serial number (the ID stamped on every record, shown in Settings under Device IDs) comes from Android, and Android gives each signing key its own ID. Switching to a build signed with a different key can give the phone a new device serial number.
System requirements
Section titled “System requirements”- Android 8.0 (Oreo) or newer.
- No particular hardware is required. A SIM, GPS, Bluetooth or a camera only matter for the features that use them. The camera is only used to scan QR codes (for NS Analytics and MQTT setup); on a device without one, Scan says it cannot scan.
The app asks for permissions in context: Location, Phone and Notifications (or Storage on Android 12 and older) during first run, and Bluetooth and call records permissions when you turn those on. See Required permissions.
Next steps
Section titled “Next steps”- First run: what the app asks when you open it the first time
- Your first survey: record to log files in a few minutes
- Upgrading from 1.x: what changes when 2.0 installs over an earlier version