Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
57bb5d3
chore: fix deprecated Android permissions
ananyaa06 Aug 26, 2025
7af43b4
fix: fix json schema for host name response
johnnzhou Aug 26, 2025
c4bec24
feat: cursory attempts at replacing runMlabPing()
ananyaa06 Aug 27, 2025
a405cab
Revert "feat: cursory attempts at replacing runMlabPing()"
ananyaa06 Aug 27, 2025
214fe90
feat(networking): replace custom Ping with ndt7 TCPInfo.RTT
ananyaa06 Aug 27, 2025
4a4e2d4
fix: remove references to in-house Ping from HomeScreen.kt
ananyaa06 Aug 27, 2025
1a4ee13
fix: tcpInfo is null
ananyaa06 Sep 2, 2025
68340fa
Revert "fix: tcpInfo is null"
ananyaa06 Sep 2, 2025
59626ce
fix: rectify problems with measurement
ananyaa06 Sep 2, 2025
9961960
fix: get the ping actually working by fixing callbacks
ananyaa06 Sep 2, 2025
1a47a73
fix: get upload to work
ananyaa06 Sep 3, 2025
7e355c0
fix: make sure upload results update on UI correctly
ananyaa06 Sep 3, 2025
eec3d2b
feat: read the data from the database and generate the csv file when …
ananyaa06 Sep 4, 2025
eb0e9d3
refactor: store specific metrics in MLabResult instead of whole TCPInfo
ananyaa06 Sep 7, 2025
2fb2a96
fix: remove smart casting
ananyaa06 Sep 7, 2025
3dea4e2
refactor: min version is 30 so remove checks
ananyaa06 Sep 7, 2025
78a17d6
refactor: replace stack trace with logging
ananyaa06 Sep 7, 2025
4306449
refactor: remove the wrapping around the imported functions from Sett…
ananyaa06 Sep 7, 2025
25c02de
refactor: make onDownloadProgress and onUploadProgress more consistent
ananyaa06 Sep 7, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@ dependencies {
implementation 'org.bouncycastle:bcprov-jdk15to18:1.70'
implementation 'org.apache.commons:commons-csv:1.9.0'
implementation 'io.github.azhon:appupdate:4.3.2'
implementation 'androidx.documentfile:documentfile:1.0.1'

// Analytics
implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}"
Expand Down
150 changes: 150 additions & 0 deletions app/schemas/com.lcl.lclmeasurementtool.database.db.AppDatabase/1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
{
"formatVersion": 1,
"database": {
"version": 1,
"identityHash": "0c7a8a929af48ae178cd610468177570",
"entities": [
{
"tableName": "signal_strength_table",
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`latitude` REAL NOT NULL, `longitude` REAL NOT NULL, `time_stamp` TEXT NOT NULL, `cellId` TEXT NOT NULL, `deviceId` TEXT NOT NULL, `signal_strength` INTEGER NOT NULL, `signal_strength_level` INTEGER NOT NULL, `reported` INTEGER NOT NULL, PRIMARY KEY(`time_stamp`))",
"fields": [
{
"fieldPath": "latitude",
"columnName": "latitude",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "longitude",
"columnName": "longitude",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "timestamp",
"columnName": "time_stamp",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "cellId",
"columnName": "cellId",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "deviceId",
"columnName": "deviceId",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "dbm",
"columnName": "signal_strength",
"affinity": "INTEGER",
"notNull": true
},
{
"fieldPath": "levelCode",
"columnName": "signal_strength_level",
"affinity": "INTEGER",
"notNull": true
},
{
"fieldPath": "reported",
"columnName": "reported",
"affinity": "INTEGER",
"notNull": true
}
],
"primaryKey": {
"autoGenerate": false,
"columnNames": [
"time_stamp"
]
},
"indices": [],
"foreignKeys": []
},
{
"tableName": "connectivity_table",
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`latitude` REAL NOT NULL, `longitude` REAL NOT NULL, `time_stamp` TEXT NOT NULL, `cellId` TEXT NOT NULL, `deviceId` TEXT NOT NULL, `upload_speed` REAL NOT NULL, `download_speed` REAL NOT NULL, `ping` REAL NOT NULL, `package_loss` REAL NOT NULL, `reported` INTEGER NOT NULL, PRIMARY KEY(`time_stamp`))",
"fields": [
{
"fieldPath": "latitude",
"columnName": "latitude",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "longitude",
"columnName": "longitude",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "timestamp",
"columnName": "time_stamp",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "cellId",
"columnName": "cellId",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "deviceId",
"columnName": "deviceId",
"affinity": "TEXT",
"notNull": true
},
{
"fieldPath": "uploadSpeed",
"columnName": "upload_speed",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "downloadSpeed",
"columnName": "download_speed",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "ping",
"columnName": "ping",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "packetLoss",
"columnName": "package_loss",
"affinity": "REAL",
"notNull": true
},
{
"fieldPath": "reported",
"columnName": "reported",
"affinity": "INTEGER",
"notNull": true
}
],
"primaryKey": {
"autoGenerate": false,
"columnNames": [
"time_stamp"
]
},
"indices": [],
"foreignKeys": []
}
],
"views": [],
"setupQueries": [
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '0c7a8a929af48ae178cd610468177570')"
]
}
}
3 changes: 2 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
<permission-group android:name="${applicationId}.andpermission"/>
<queries>
Expand Down Expand Up @@ -51,7 +52,7 @@
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/filepaths" />
android:resource="@xml/file_paths" />
</provider>

<provider
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ class MainActivity2 : ComponentActivity() {

if (!hasPermission()) {
XXPermissions.with(this)
.permission(Permission.CAMERA, Permission.READ_EXTERNAL_STORAGE, Permission.ACCESS_FINE_LOCATION)
.permission(Permission.CAMERA, Permission.READ_MEDIA_AUDIO, Permission.READ_MEDIA_VIDEO, Permission.READ_MEDIA_IMAGES, Permission.ACCESS_FINE_LOCATION)
.request { _, allGranted ->
run {
if (!allGranted) {
Expand Down
Loading