diff --git a/app/src/spinner/java/org/thoughtcrime/securesms/SpinnerApplicationContext.kt b/app/src/spinner/java/org/thoughtcrime/securesms/SpinnerApplicationContext.kt index f09fb3158..019af6df9 100644 --- a/app/src/spinner/java/org/thoughtcrime/securesms/SpinnerApplicationContext.kt +++ b/app/src/spinner/java/org/thoughtcrime/securesms/SpinnerApplicationContext.kt @@ -14,6 +14,8 @@ import org.thoughtcrime.securesms.database.MegaphoneDatabase import org.thoughtcrime.securesms.database.MessageBitmaskColumnTransformer import org.thoughtcrime.securesms.database.QueryMonitor import org.thoughtcrime.securesms.database.SignalDatabase +import org.thoughtcrime.securesms.keyvalue.SignalStore +import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.util.AppSignatureUtil import shark.AndroidReferenceMatchers @@ -23,10 +25,14 @@ class SpinnerApplicationContext : ApplicationContext() { Spinner.init( this, - Spinner.DeviceInfo( - name = "${Build.MODEL} (Android ${Build.VERSION.RELEASE}, API ${Build.VERSION.SDK_INT})", - packageName = "$packageName (${AppSignatureUtil.getAppSignature(this).or("Unknown")})", - appVersion = "${BuildConfig.VERSION_NAME} (${BuildConfig.CANONICAL_VERSION_CODE}, ${BuildConfig.GIT_HASH})" + mapOf( + "Device" to "${Build.MODEL} (Android ${Build.VERSION.RELEASE}, API ${Build.VERSION.SDK_INT})", + "Package" to "$packageName (${AppSignatureUtil.getAppSignature(this).or("Unknown")})", + "App Version" to "${BuildConfig.VERSION_NAME} (${BuildConfig.CANONICAL_VERSION_CODE}, ${BuildConfig.GIT_HASH})", + "Profile Name" to (if (SignalStore.account().isRegistered) Recipient.self().profileName.toString() else "none"), + "E164" to (SignalStore.account().e164 ?: "none"), + "ACI" to (SignalStore.account().aci?.toString() ?: "none"), + "PNI" to (SignalStore.account().pni?.toString() ?: "none") ), linkedMapOf( "signal" to DatabaseConfig( diff --git a/spinner/app/src/main/java/org/signal/spinnertest/MainActivity.kt b/spinner/app/src/main/java/org/signal/spinnertest/MainActivity.kt index 23b3a404d..2995151fa 100644 --- a/spinner/app/src/main/java/org/signal/spinnertest/MainActivity.kt +++ b/spinner/app/src/main/java/org/signal/spinnertest/MainActivity.kt @@ -19,10 +19,9 @@ class MainActivity : AppCompatActivity() { Spinner.init( application, - Spinner.DeviceInfo( - name = "${Build.MODEL} (API ${Build.VERSION.SDK_INT})", - packageName = packageName, - appVersion = "0.1" + mapOf( + "Name" to "${Build.MODEL} (API ${Build.VERSION.SDK_INT})", + "Package" to packageName ), mapOf("main" to Spinner.DatabaseConfig(db = db)) ) diff --git a/spinner/lib/src/main/assets/partials/prefix.hbs b/spinner/lib/src/main/assets/partials/prefix.hbs index f9ffe1721..6f0f2d374 100644 --- a/spinner/lib/src/main/assets/partials/prefix.hbs +++ b/spinner/lib/src/main/assets/partials/prefix.hbs @@ -1,18 +1,12 @@

SPINNER

- - - - - - - - - - - - + {{#each deviceInfo}} + + + + + {{/each}}
Device{{deviceInfo.name}}
Package{{deviceInfo.packageName}}
App Version{{deviceInfo.appVersion}}
{{@key}}{{this}}
diff --git a/spinner/lib/src/main/java/org/signal/spinner/Spinner.kt b/spinner/lib/src/main/java/org/signal/spinner/Spinner.kt index 9988764cf..77ff6e485 100644 --- a/spinner/lib/src/main/java/org/signal/spinner/Spinner.kt +++ b/spinner/lib/src/main/java/org/signal/spinner/Spinner.kt @@ -15,7 +15,7 @@ object Spinner { private lateinit var server: SpinnerServer - fun init(application: Application, deviceInfo: DeviceInfo, databases: Map) { + fun init(application: Application, deviceInfo: Map, databases: Map) { try { server = SpinnerServer(application, deviceInfo, databases) server.start() @@ -87,12 +87,6 @@ object Spinner { return builder.toString() } - data class DeviceInfo( - val name: String, - val packageName: String, - val appVersion: String - ) - data class DatabaseConfig( val db: SupportSQLiteDatabase, val columnTransformers: List = emptyList() diff --git a/spinner/lib/src/main/java/org/signal/spinner/SpinnerServer.kt b/spinner/lib/src/main/java/org/signal/spinner/SpinnerServer.kt index c40f8160f..dec82a675 100644 --- a/spinner/lib/src/main/java/org/signal/spinner/SpinnerServer.kt +++ b/spinner/lib/src/main/java/org/signal/spinner/SpinnerServer.kt @@ -26,7 +26,7 @@ import kotlin.math.min */ internal class SpinnerServer( private val application: Application, - private val deviceInfo: Spinner.DeviceInfo, + private val deviceInfo: Map, private val databases: Map ) : NanoHTTPD(5000) { @@ -342,7 +342,7 @@ internal class SpinnerServer( } data class OverviewPageModel( - val deviceInfo: Spinner.DeviceInfo, + val deviceInfo: Map, val database: String, val databases: List, val tables: List, @@ -352,7 +352,7 @@ internal class SpinnerServer( ) data class BrowsePageModel( - val deviceInfo: Spinner.DeviceInfo, + val deviceInfo: Map, val database: String, val databases: List, val tableNames: List, @@ -362,7 +362,7 @@ internal class SpinnerServer( ) data class QueryPageModel( - val deviceInfo: Spinner.DeviceInfo, + val deviceInfo: Map, val database: String, val databases: List, val query: String = "", @@ -370,7 +370,7 @@ internal class SpinnerServer( ) data class RecentPageModel( - val deviceInfo: Spinner.DeviceInfo, + val deviceInfo: Map, val database: String, val databases: List, val recentSql: List?