From 1f216fc3cfd3e3b70bcfb94b157ca253515881ab Mon Sep 17 00:00:00 2001 From: bt Date: Mon, 8 Jun 2026 16:45:04 +0200 Subject: Add logger --- app/src/main/java/net/rctt/netmon/Cell.kt | 11 ++++++++++- app/src/main/java/net/rctt/netmon/CellLogger.kt | 23 +++++++++++++++++++++++ app/src/main/java/net/rctt/netmon/MainActivity.kt | 2 ++ 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 app/src/main/java/net/rctt/netmon/CellLogger.kt diff --git a/app/src/main/java/net/rctt/netmon/Cell.kt b/app/src/main/java/net/rctt/netmon/Cell.kt index f292109..90d6eda 100644 --- a/app/src/main/java/net/rctt/netmon/Cell.kt +++ b/app/src/main/java/net/rctt/netmon/Cell.kt @@ -43,7 +43,7 @@ class CellLogItem { var type: String = "" var lac: Int = 0 var cid: Long = 0 - + var description: String = "Unknown" var latitude: Double = 0.0 var longitude: Double = 0.0 @@ -101,4 +101,13 @@ class CellLogItem { fun valid(): Boolean { return lac != CellInfo.UNAVAILABLE } + + fun serialize(): List { + return listOf( + type, + lac.toString(), + cid.toString(), + power.toString(), + ) + } } \ No newline at end of file diff --git a/app/src/main/java/net/rctt/netmon/CellLogger.kt b/app/src/main/java/net/rctt/netmon/CellLogger.kt new file mode 100644 index 0000000..dadf3c9 --- /dev/null +++ b/app/src/main/java/net/rctt/netmon/CellLogger.kt @@ -0,0 +1,23 @@ +package net.rctt.netmon + +import com.jsoizo.kotlincsv.writer.CsvWriter +import java.io.FileOutputStream +import java.io.OutputStreamWriter + +class CellLogger { + val writer: CsvWriter = CsvWriter() + var file: FileOutputStream = FileOutputStream("/storage/emulated/0/log.csv", true) + var output: OutputStreamWriter = OutputStreamWriter(file) + + fun write(cells: List) { + val strings = mutableListOf>() + + cells.forEach { cell -> + strings.add(cell.serialize()) + } + + val csv = writer.writeAll(strings) + output.write(csv) + output.flush() + } +} \ No newline at end of file diff --git a/app/src/main/java/net/rctt/netmon/MainActivity.kt b/app/src/main/java/net/rctt/netmon/MainActivity.kt index 6556b6d..a63b220 100644 --- a/app/src/main/java/net/rctt/netmon/MainActivity.kt +++ b/app/src/main/java/net/rctt/netmon/MainActivity.kt @@ -13,6 +13,7 @@ import org.osmdroid.config.Configuration class MainActivity : AppCompatActivity() { val cellDb = CellDb() + val cellLogger = CellLogger() val currentCells: HashMap = hashMapOf() lateinit var bottomNav: BottomNavigationView @@ -115,6 +116,7 @@ class MainActivity : AppCompatActivity() { currentCells[id]?.update(cellInfo) } + cellLogger.write(currentCells.values.toList()) scanFragment?.refresh(currentCells) mapFragment?.refresh(currentCells) } -- cgit v1.2.3