Skip to content

Commit

Permalink
Link to the user manual from the CDR info dialog
Browse files Browse the repository at this point in the history
- Update the CDR section in the README to be better formatted
  • Loading branch information
christianrowlands committed Jan 29, 2024
1 parent 35d44c7 commit 6759ff0
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 20 deletions.
43 changes: 25 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,22 +34,29 @@ scanning and displaying a list of the nearby Bluetooth devices.

## CDR Log Files

A newer feature of the app is the ability to log Call Detail Record (CDR) files. What is a CDR? A
CDR is a Call Detail Record that has an event for specific interaction a phone has with the cellular
network. For example, a phone call, sms messages, and certain tower changes. There are several
possible use cases for recording a CDR; for example, one might be to have a record of what your
phone is doing, and what towers it is communicating with. Maybe you are just curious about how
cellular networks work, or maybe you are privacy conscious and what to monitor if your phone starts
communicating with unexpected towers.

Worthy of note, the regular version of Network Survey does not log SMS events in the CDR, nor does
it support logging the "other" phone number associated with a phone call. Logging SMS events
requires the full SMS permission, and Google Play won\'t approve publishing Network Survey to the
Play Store if it requests the SMS permission. If you are interested in a CDR logger that supports
SMS events and logging the "other" phone number for call events, you can install the app from the
source code in this repo, or if you prefer a pre-built apk you can get the latest APK by navigating
to the [GitHub Releases page](https://github.com/christianrowlands/android-network-survey/releases),
and then downloading the "*cdr-release.apk" under the latest release.
### Call Detail Record (CDR) Logging in Network Survey

**Introduction:**
The Network Survey app now includes a feature for logging Call Detail Records (CDR). This functionality provides insight into various interactions your phone has with the cellular network.

**What is a CDR?**
A Call Detail Record (CDR) is a data record that documents specific interactions a phone has with the cellular network. These interactions include phone calls, SMS messages, and changes in cell tower connections.

**Use Cases:**
- **Monitoring Network Activity:** Record and review your phone's cellular network interactions.
- **Educational Insight:** Gain an understanding of how cellular networks operate.
- **Privacy Monitoring:** Check if your phone is connecting to unexpected cell towers.

**Note on Feature Limitations:**
- The regular version of Network Survey does not log SMS events in the CDR due to Google Play's policy against apps requesting full SMS permissions.
- Logging the "other" phone number associated with call events is also not supported in the regular version.

**Alternative Version with Extended Features:**
If you're interested in CDR logging that includes SMS events and call details:
1. **Install from Source:** You can build and install the app using the source code available in this repository.
2. **Download Pre-Built APK:** Access the latest "*cdr-release.apk" under the latest release on our [GitHub Releases page](https://github.com/YourRepo/NetworkSurvey/releases).
3. **IzzyOnDroid F-Droid:** Install from [IzzyOnDroid F-Droid](https://apt.izzysoft.de/fdroid/index/apk/com.craxiom.networksurvey).


## Tracking And Privacy

Expand All @@ -59,8 +66,8 @@ then you have three options.

1. Install the app
from [IzzyOnDroid F-Droid](https://apt.izzysoft.de/fdroid/index/apk/com.craxiom.networksurvey).
2. Install the app from the source code in this repo.
3. Install the app using the APK from
2. Install the app from the source code in this repo specifying the CDR build variant.
3. Install the app using the CDR APK from
the [Release Page](https://github.com/christianrowlands/android-network-survey/releases).

The [privacy policy for this app](privacy_policy.md) contains more information on the data that is
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -432,10 +432,13 @@ private void showCdrHelpDialog()
final Context context = getContext();
if (context == null) return;

LayoutInflater inflater = LayoutInflater.from(context);
View dialogView = inflater.inflate(R.layout.dialog_cdr_help, null);

AlertDialog.Builder alertBuilder = new AlertDialog.Builder(context);
alertBuilder.setView(dialogView);
alertBuilder.setCancelable(true);
alertBuilder.setTitle(getString(R.string.cdr_help_title));
alertBuilder.setMessage(getText(R.string.cdr_help));
alertBuilder.setPositiveButton(android.R.string.ok, (dialog, which) -> {
});
alertBuilder.create().show();
Expand Down
18 changes: 18 additions & 0 deletions networksurvey/src/main/res/layout/dialog_cdr_help.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="16dp">

<TextView
android:id="@+id/tvCdrHelpText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/small_margin"
android:text="@string/cdr_help"
style="@style/TextAppearance.MaterialComponents.Body1"
android:autoLink="web"
android:linksClickable="true" />

</LinearLayout>
2 changes: 1 addition & 1 deletion networksurvey/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
support logging the "other" phone number associated with a phone call. Logging SMS events requires the
full SMS permission, and Google Play won\'t approve publishing Network Survey to the Play Store
if it requests the SMS permission. If you are interested in a CDR logger that supports SMS events
and logging the "other" phone number for call events, reach out to me at [email protected]</string>
and logging the "other" phone number for call events, check out the information in the Network Survey User Manual: https://networksurvey.app/manual#cdr</string>


<string name="file_help_title">File Logging &amp; MQTT Streaming: Simplified</string>
Expand Down

0 comments on commit 6759ff0

Please sign in to comment.