diff --git a/app-common/build.gradle b/app-common/build.gradle
index 76ac35db..537b6da2 100644
--- a/app-common/build.gradle
+++ b/app-common/build.gradle
@@ -8,6 +8,10 @@ plugins {
id 'dagger.hilt.android.plugin'
}
+
+def gitSha = 'git rev-parse --short HEAD'.execute([], project.rootDir).text.trim()
+def buildTime = new Date().format("yyyy-MM-dd'T'HH:mm:ss'Z'", TimeZone.getTimeZone("GMT+1"))
+
android {
compileSdkVersion buildConfig.compileSdk
@@ -18,12 +22,38 @@ android {
versionCode buildConfig.version.code
versionName buildConfig.version.name
+
+ buildConfigField "long", "VERSION_CODE", "${buildConfig.version.code}"
+ buildConfigField "String", "VERSION_NAME", "\"${buildConfig.version.name}\""
+
+ buildConfigField "String", "GITSHA", "\"${gitSha}\""
+ buildConfigField "String", "BUILDTIME", "\"${buildTime}\""
+ }
+
+ flavorDimensions "version"
+ productFlavors {
+ foss {
+
+ }
+ gplay {
+
+ }
}
buildTypes {
+ def proguardRulesRelease = fileTree(dir: "../proguard", include: ["*.pro"]).asList().toArray()
+ debug {
+ proguardFiles getDefaultProguardFile('proguard-android-optimize.txt')
+ proguardFiles proguardRulesRelease
+ proguardFiles 'proguard-rules-debug.pro'
+ }
+ beta {
+ proguardFiles getDefaultProguardFile('proguard-android-optimize.txt')
+ proguardFiles proguardRulesRelease
+ }
release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
+ proguardFiles getDefaultProguardFile('proguard-android-optimize.txt')
+ proguardFiles proguardRulesRelease
}
}
@@ -57,6 +87,16 @@ android {
}
dependencies {
+
+ implementation("com.squareup.moshi:moshi:1.13.0")
+ kapt("com.squareup.moshi:moshi-kotlin-codegen:1.13.0")
+
+ // Debugging
+ implementation('com.bugsnag:bugsnag-android:5.9.2')
+ implementation 'com.getkeepsafe.relinker:relinker:1.4.3'
+
+ implementation 'androidx.preference:preference-ktx:1.1.1'
+
// DI
implementation "com.google.dagger:dagger:${versions.dagger.core}"
implementation "com.google.dagger:dagger-android:${versions.dagger.core}"
diff --git a/app/src/main/java/eu/darken/capod/common/BuildConfigWrap.kt b/app-common/src/main/java/eu/darken/capod/common/BuildConfigWrap.kt
similarity index 91%
rename from app/src/main/java/eu/darken/capod/common/BuildConfigWrap.kt
rename to app-common/src/main/java/eu/darken/capod/common/BuildConfigWrap.kt
index b0b77747..fbccbf37 100644
--- a/app/src/main/java/eu/darken/capod/common/BuildConfigWrap.kt
+++ b/app-common/src/main/java/eu/darken/capod/common/BuildConfigWrap.kt
@@ -34,11 +34,12 @@ object BuildConfigWrap {
;
}
- val APPLICATION_ID = BuildConfig.APPLICATION_ID
+ val APPLICATION_ID: String = TODO()//BuildConfig.APPLICATION_ID
val VERSION_CODE: Long = BuildConfig.VERSION_CODE.toLong()
val VERSION_NAME: String = BuildConfig.VERSION_NAME
val GIT_SHA: String = BuildConfig.GITSHA
+ val BUILDTIME: String = BuildConfig.BUILDTIME
val VERSION_DESCRIPTION_LONG: String = "v$VERSION_NAME ($VERSION_CODE) [$GIT_SHA] ${FLAVOR}_$BUILD_TYPE"
val VERSION_DESCRIPTION_SHORT: String = "v$VERSION_NAME [$GIT_SHA] $FLAVOR"
diff --git a/app/src/main/java/eu/darken/capod/common/BuildWrap.kt b/app-common/src/main/java/eu/darken/capod/common/BuildWrap.kt
similarity index 62%
rename from app/src/main/java/eu/darken/capod/common/BuildWrap.kt
rename to app-common/src/main/java/eu/darken/capod/common/BuildWrap.kt
index 9967862e..3d1006e4 100644
--- a/app/src/main/java/eu/darken/capod/common/BuildWrap.kt
+++ b/app-common/src/main/java/eu/darken/capod/common/BuildWrap.kt
@@ -13,6 +13,6 @@ object BuildWrap {
}
}
-fun hasApiLevel(level: Int): Boolean = BuildWrap.VERSION.SDK_INT >= level
+fun hasApiLevel(level: Int): Boolean = BuildWrap.VersionWrap.SDK_INT >= level
-fun withinApiLevel(start: Int, end: Int): Boolean = BuildWrap.VERSION.SDK_INT in start..end
+fun withinApiLevel(start: Int, end: Int): Boolean = BuildWrap.VersionWrap.SDK_INT in start..end
diff --git a/app/src/main/java/eu/darken/capod/common/ByteArrayExtensions.kt b/app-common/src/main/java/eu/darken/capod/common/ByteArrayExtensions.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/ByteArrayExtensions.kt
rename to app-common/src/main/java/eu/darken/capod/common/ByteArrayExtensions.kt
diff --git a/app/src/main/java/eu/darken/capod/common/InstallId.kt b/app-common/src/main/java/eu/darken/capod/common/InstallId.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/InstallId.kt
rename to app-common/src/main/java/eu/darken/capod/common/InstallId.kt
diff --git a/app/src/main/java/eu/darken/capod/common/SystemClockWrap.kt b/app-common/src/main/java/eu/darken/capod/common/SystemClockWrap.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/SystemClockWrap.kt
rename to app-common/src/main/java/eu/darken/capod/common/SystemClockWrap.kt
diff --git a/app/src/main/java/eu/darken/capod/common/UIConverter.kt b/app-common/src/main/java/eu/darken/capod/common/UIConverter.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/UIConverter.kt
rename to app-common/src/main/java/eu/darken/capod/common/UIConverter.kt
diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/BleScanResult.kt b/app-common/src/main/java/eu/darken/capod/common/bluetooth/BleScanResult.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/bluetooth/BleScanResult.kt
rename to app-common/src/main/java/eu/darken/capod/common/bluetooth/BleScanResult.kt
diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/BleScanner.kt b/app-common/src/main/java/eu/darken/capod/common/bluetooth/BleScanner.kt
similarity index 99%
rename from app/src/main/java/eu/darken/capod/common/bluetooth/BleScanner.kt
rename to app-common/src/main/java/eu/darken/capod/common/bluetooth/BleScanner.kt
index bb1a4d3d..2f57b157 100644
--- a/app/src/main/java/eu/darken/capod/common/bluetooth/BleScanner.kt
+++ b/app-common/src/main/java/eu/darken/capod/common/bluetooth/BleScanner.kt
@@ -10,7 +10,6 @@ import dagger.hilt.android.qualifiers.ApplicationContext
import eu.darken.capod.common.debug.logging.Logging.Priority.*
import eu.darken.capod.common.debug.logging.log
import eu.darken.capod.common.debug.logging.logTag
-import eu.darken.capod.main.core.ScannerMode
import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.Flow
diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothExtensions.kt b/app-common/src/main/java/eu/darken/capod/common/bluetooth/BluetoothExtensions.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothExtensions.kt
rename to app-common/src/main/java/eu/darken/capod/common/bluetooth/BluetoothExtensions.kt
diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt b/app-common/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt
rename to app-common/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt
diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothProfile2.kt b/app-common/src/main/java/eu/darken/capod/common/bluetooth/BluetoothProfile2.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothProfile2.kt
rename to app-common/src/main/java/eu/darken/capod/common/bluetooth/BluetoothProfile2.kt
diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/FakeBleData.kt b/app-common/src/main/java/eu/darken/capod/common/bluetooth/FakeBleData.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/bluetooth/FakeBleData.kt
rename to app-common/src/main/java/eu/darken/capod/common/bluetooth/FakeBleData.kt
diff --git a/app/src/main/java/eu/darken/capod/main/core/ScannerMode.kt b/app-common/src/main/java/eu/darken/capod/common/bluetooth/ScannerMode.kt
similarity index 94%
rename from app/src/main/java/eu/darken/capod/main/core/ScannerMode.kt
rename to app-common/src/main/java/eu/darken/capod/common/bluetooth/ScannerMode.kt
index e0efd9f6..494755f7 100644
--- a/app/src/main/java/eu/darken/capod/main/core/ScannerMode.kt
+++ b/app-common/src/main/java/eu/darken/capod/common/bluetooth/ScannerMode.kt
@@ -1,4 +1,4 @@
-package eu.darken.capod.main.core
+package eu.darken.capod.common.bluetooth
import androidx.annotation.StringRes
import com.squareup.moshi.Json
diff --git a/app/src/main/java/eu/darken/capod/common/coroutine/AppCoroutineScope.kt b/app-common/src/main/java/eu/darken/capod/common/coroutine/AppCoroutineScope.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/coroutine/AppCoroutineScope.kt
rename to app-common/src/main/java/eu/darken/capod/common/coroutine/AppCoroutineScope.kt
diff --git a/app/src/main/java/eu/darken/capod/common/coroutine/CoroutineModule.kt b/app-common/src/main/java/eu/darken/capod/common/coroutine/CoroutineModule.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/coroutine/CoroutineModule.kt
rename to app-common/src/main/java/eu/darken/capod/common/coroutine/CoroutineModule.kt
diff --git a/app/src/main/java/eu/darken/capod/common/coroutine/DefaultDispatcherProvider.kt b/app-common/src/main/java/eu/darken/capod/common/coroutine/DefaultDispatcherProvider.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/coroutine/DefaultDispatcherProvider.kt
rename to app-common/src/main/java/eu/darken/capod/common/coroutine/DefaultDispatcherProvider.kt
diff --git a/app/src/main/java/eu/darken/capod/common/coroutine/DispatcherProvider.kt b/app-common/src/main/java/eu/darken/capod/common/coroutine/DispatcherProvider.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/coroutine/DispatcherProvider.kt
rename to app-common/src/main/java/eu/darken/capod/common/coroutine/DispatcherProvider.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/Bugs.kt b/app-common/src/main/java/eu/darken/capod/common/debug/Bugs.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/Bugs.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/Bugs.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/autoreport/AutoReporting.kt b/app-common/src/main/java/eu/darken/capod/common/debug/autoreport/AutoReporting.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/autoreport/AutoReporting.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/autoreport/AutoReporting.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/autoreport/DebugSettings.kt b/app-common/src/main/java/eu/darken/capod/common/debug/autoreport/DebugSettings.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/autoreport/DebugSettings.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/autoreport/DebugSettings.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagErrorHandler.kt b/app-common/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagErrorHandler.kt
similarity index 87%
rename from app/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagErrorHandler.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagErrorHandler.kt
index 5222ca26..8c803728 100644
--- a/app/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagErrorHandler.kt
+++ b/app-common/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagErrorHandler.kt
@@ -6,7 +6,6 @@ import android.content.pm.PackageManager
import com.bugsnag.android.Event
import com.bugsnag.android.OnErrorCallback
import dagger.hilt.android.qualifiers.ApplicationContext
-import eu.darken.capod.BuildConfig
import eu.darken.capod.common.BuildConfigWrap
import eu.darken.capod.common.debug.autoreport.DebugSettings
import eu.darken.capod.common.debug.logging.Logging.Priority.WARN
@@ -26,13 +25,13 @@ class BugsnagErrorHandler @Inject constructor(
bugsnagLogger.injectLog(event)
TAB_APP.also { tab ->
- event.addMetadata(tab, "gitSha", BuildConfig.GITSHA)
- event.addMetadata(tab, "buildTime", BuildConfig.BUILDTIME)
+ event.addMetadata(tab, "gitSha", BuildConfigWrap.GIT_SHA)
+ event.addMetadata(tab, "buildTime", BuildConfigWrap.BUILDTIME)
context.tryFormattedSignature()?.let { event.addMetadata(tab, "signatures", it) }
}
- return debugSettings.isAutoReportingEnabled.value && !BuildConfigWrap.DEBUG
+ return debugSettings.isAutoReportingEnabled.value && !eu.darken.capod.common.BuildConfigWrap.DEBUG
}
companion object {
diff --git a/app/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagLogger.kt b/app-common/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagLogger.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagLogger.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/BugsnagLogger.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/NOPBugsnagErrorHandler.kt b/app-common/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/NOPBugsnagErrorHandler.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/NOPBugsnagErrorHandler.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/autoreport/bugsnag/NOPBugsnagErrorHandler.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/logging/FileLogger.kt b/app-common/src/main/java/eu/darken/capod/common/debug/logging/FileLogger.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/logging/FileLogger.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/logging/FileLogger.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/logging/LogCatLogger.kt b/app-common/src/main/java/eu/darken/capod/common/debug/logging/LogCatLogger.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/logging/LogCatLogger.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/logging/LogCatLogger.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/logging/LogExtensions.kt b/app-common/src/main/java/eu/darken/capod/common/debug/logging/LogExtensions.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/logging/LogExtensions.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/logging/LogExtensions.kt
diff --git a/app/src/main/java/eu/darken/capod/common/debug/logging/Logging.kt b/app-common/src/main/java/eu/darken/capod/common/debug/logging/Logging.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/debug/logging/Logging.kt
rename to app-common/src/main/java/eu/darken/capod/common/debug/logging/Logging.kt
diff --git a/app/src/main/java/eu/darken/capod/common/preferences/FlowPreference.kt b/app-common/src/main/java/eu/darken/capod/common/preferences/FlowPreference.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/preferences/FlowPreference.kt
rename to app-common/src/main/java/eu/darken/capod/common/preferences/FlowPreference.kt
diff --git a/app/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceExtension.kt b/app-common/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceExtension.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceExtension.kt
rename to app-common/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceExtension.kt
diff --git a/app/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceMoshiExtension.kt b/app-common/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceMoshiExtension.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceMoshiExtension.kt
rename to app-common/src/main/java/eu/darken/capod/common/preferences/FlowPreferenceMoshiExtension.kt
diff --git a/app/src/main/java/eu/darken/capod/common/preferences/PreferenceStoreMapper.kt b/app-common/src/main/java/eu/darken/capod/common/preferences/PreferenceStoreMapper.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/preferences/PreferenceStoreMapper.kt
rename to app-common/src/main/java/eu/darken/capod/common/preferences/PreferenceStoreMapper.kt
diff --git a/app/src/main/java/eu/darken/capod/common/preferences/Settings.kt b/app-common/src/main/java/eu/darken/capod/common/preferences/Settings.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/preferences/Settings.kt
rename to app-common/src/main/java/eu/darken/capod/common/preferences/Settings.kt
diff --git a/app/src/main/java/eu/darken/capod/common/preferences/SharedPreferenceExtensions.kt b/app-common/src/main/java/eu/darken/capod/common/preferences/SharedPreferenceExtensions.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/common/preferences/SharedPreferenceExtensions.kt
rename to app-common/src/main/java/eu/darken/capod/common/preferences/SharedPreferenceExtensions.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/DualPodDevice.kt b/app-common/src/main/java/eu/darken/capod/pods/core/DualPodDevice.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/DualPodDevice.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/DualPodDevice.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasCase.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasCase.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasCase.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasCase.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasChargeDetection.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasChargeDetection.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasChargeDetection.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasChargeDetection.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasChargeDetectionDual.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasChargeDetectionDual.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasChargeDetectionDual.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasChargeDetectionDual.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasDualMicrophone.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasDualMicrophone.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasDualMicrophone.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasDualMicrophone.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasEarDetection.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasEarDetection.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasEarDetection.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasEarDetection.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasEarDetectionDual.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasEarDetectionDual.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasEarDetectionDual.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasEarDetectionDual.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasPodStyle.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasPodStyle.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasPodStyle.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasPodStyle.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/HasStateDetection.kt b/app-common/src/main/java/eu/darken/capod/pods/core/HasStateDetection.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/HasStateDetection.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/HasStateDetection.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/PodDevice.kt b/app-common/src/main/java/eu/darken/capod/pods/core/PodDevice.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/PodDevice.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/PodDevice.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/PodDeviceExtensions.kt b/app-common/src/main/java/eu/darken/capod/pods/core/PodDeviceExtensions.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/PodDeviceExtensions.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/PodDeviceExtensions.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/PodFactory.kt b/app-common/src/main/java/eu/darken/capod/pods/core/PodFactory.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/PodFactory.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/PodFactory.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/SinglePodDevice.kt b/app-common/src/main/java/eu/darken/capod/pods/core/SinglePodDevice.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/SinglePodDevice.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/SinglePodDevice.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/AppleFactory.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/AppleFactory.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/AppleFactory.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/AppleFactory.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/AppleFactoryModule.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/AppleFactoryModule.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/AppleFactoryModule.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/AppleFactoryModule.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/ApplePods.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/ApplePods.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/ApplePods.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/ApplePods.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/ApplePodsFactory.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/ApplePodsFactory.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/ApplePodsFactory.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/ApplePodsFactory.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/DualAirPods.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/DualAirPods.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/DualAirPods.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/DualAirPods.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/DualApplePodsFactory.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/DualApplePodsFactory.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/DualApplePodsFactory.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/DualApplePodsFactory.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/HasAppleColor.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/HasAppleColor.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/HasAppleColor.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/HasAppleColor.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePods.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePods.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePods.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePods.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePodsFactory.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePodsFactory.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePodsFactory.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/SingleApplePodsFactory.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen1.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen1.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen1.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen1.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen2.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen2.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen2.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen2.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen3.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen3.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen3.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsGen3.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsMax.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsMax.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsMax.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsMax.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsPro.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsPro.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsPro.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/airpods/AirPodsPro.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsFlex.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsFlex.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsFlex.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsFlex.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsSolo3.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsSolo3.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsSolo3.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsSolo3.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsStudio3.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsStudio3.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsStudio3.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsStudio3.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsX.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsX.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsX.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/BeatsX.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeats3.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeats3.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeats3.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeats3.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeatsPro.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeatsPro.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeatsPro.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/beats/PowerBeatsPro.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/misc/Twsi99999.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/misc/Twsi99999.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/misc/Twsi99999.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/misc/Twsi99999.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/misc/UnknownAppleDevice.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/misc/UnknownAppleDevice.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/misc/UnknownAppleDevice.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/misc/UnknownAppleDevice.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/misc/VarunrAirPodsPro.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/misc/VarunrAirPodsPro.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/misc/VarunrAirPodsPro.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/misc/VarunrAirPodsPro.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/protocol/ContinuityProtocol.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/protocol/ContinuityProtocol.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/protocol/ContinuityProtocol.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/protocol/ContinuityProtocol.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/apple/protocol/ProximityPairing.kt b/app-common/src/main/java/eu/darken/capod/pods/core/apple/protocol/ProximityPairing.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/apple/protocol/ProximityPairing.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/apple/protocol/ProximityPairing.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDevice.kt b/app-common/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDevice.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDevice.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDevice.kt
diff --git a/app/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDeviceFactory.kt b/app-common/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDeviceFactory.kt
similarity index 100%
rename from app/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDeviceFactory.kt
rename to app-common/src/main/java/eu/darken/capod/pods/core/unknown/UnknownDeviceFactory.kt
diff --git a/app-common/src/main/res/values/strings.xml b/app-common/src/main/res/values/strings.xml
index 5edb55d2..a64dcc12 100644
--- a/app-common/src/main/res/values/strings.xml
+++ b/app-common/src/main/res/values/strings.xml
@@ -3,8 +3,6 @@
CAPod Pro
CAPod FOSS
- Device status
-
Error
Share
Done
@@ -16,12 +14,6 @@
Check
Close
- Size
- Compressed size
- Debug notifications
- Recorded log file
- Record debug log
-
Bluetooth connect
This app requires the \"Bluetooth connect\" permission to interact with paired devices and initiate connections.
Bluetooth scanning
@@ -58,95 +50,10 @@
Being worn
Unknown state
- No primary device
- All detected devices are unlikely to be yours. Power on and connect your device or adjust the settings.
+ Last seen: %s
+ First seen: %s
- Settings
- Privacy policy
- Handling data responsibly.
- Licenses
- Other
- Settings
- General tweaks that affect the whole app.
- Acknowledgements
-
- Changelog
- Email developer
-
- Install ID
- Automatic error reports are anonymous. Share your install ID if the developer needs to find your error reports.
- Support
- If you need some help.
- Issue tracker
- A public issue tracker for bug reports and feature requests (english only).
- Discord
- A place to hang out in and ask questions.
- Note that I can only respond in german or english.
- Automatic bug reports
- Automatically reports issues, e.g. details on an app crash so I can figure out how to fix it.
- Debug mode
- Show additional information to troubleshoot issues.
- Monitor mode
- Under which circumstances this app monitors Bluetooth data.
- Scanner mode
- Should the Bluetooth Low Energy data scanner prioritize performance or conserve energy?
- When app is open
- When device is connected
- Always
Low power
Balanced
Low latency
- Auto pause
- Pause audio when removing the device from your ear.
- Show all devices
- Show other people\'s devices that are near you.
- Auto play
- Start audio playback when device is worn.
- Fake data
- Show fake data, i.e., simulate devices that don\’t exist.
- Debug settings
- Additional settings to help troubleshoot issues with the app.
- Minimum signal quality
- The minimum signal quality that a device needs to have to be considered yours.
- Auto connect
- If Android does not automatically connect, we can ask it too. This will set the monitor mode setting to \'Always\'.
- Auto connect condition
- When should we try to connect to your device?
- Reactions
- React to events and behaviors.
- Your device
- Your device address
- The address of your paired device. The app uses this to determine when it is connected to your phone.
- None
- Your device model
- The model of your main device. This helps the app recognize your device when it is not connected to your phone.
-
- When seen
- Case is open
- In ear
-
- Upgrade CAPod
- Get additional features and support the developer.
- Show popup
- Show a popup when the device case is opened (experimental).
- Bluetooth is disabled
- Bluetooth is disabled, enable it ;)
- Translation
- Help translate this app into your favorite language.
- One pod mode
- Wearing both pods is not required, wearing a single pod is sufficient to trigger reactions.
- System Alert Window
- Allow CAPod to draw over other apps to make the feature \"Show PopUp\" possible.
- Last seen: %s
- First seen: %s
- Unfiltered BLE data
- Remove any filters from the BLE scanner to show all broadcasted BLE data. Useful to add support for new headphone types.
- The following permission is required:
- Compatibility mode
- Disable optimizations to improve compatibility. Try this if you are not seeing any data.
- Translators
- darken
-
- CAPod for WearOS
- View details about your AirPood devices on your WearOS device.
\ No newline at end of file
diff --git a/app/src/main/java/eu/darken/capod/main/core/GeneralSettings.kt b/app/src/main/java/eu/darken/capod/main/core/GeneralSettings.kt
index b3d0b99a..e33118fe 100644
--- a/app/src/main/java/eu/darken/capod/main/core/GeneralSettings.kt
+++ b/app/src/main/java/eu/darken/capod/main/core/GeneralSettings.kt
@@ -5,6 +5,7 @@ import android.content.SharedPreferences
import androidx.preference.PreferenceDataStore
import com.squareup.moshi.Moshi
import dagger.hilt.android.qualifiers.ApplicationContext
+import eu.darken.capod.common.bluetooth.ScannerMode
import eu.darken.capod.common.debug.autoreport.DebugSettings
import eu.darken.capod.common.preferences.PreferenceStoreMapper
import eu.darken.capod.common.preferences.Settings
diff --git a/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsFragment.kt b/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsFragment.kt
index 8980b331..56d8f662 100644
--- a/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsFragment.kt
+++ b/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsFragment.kt
@@ -8,12 +8,12 @@ import androidx.preference.ListPreference
import androidx.preference.Preference
import dagger.hilt.android.AndroidEntryPoint
import eu.darken.capod.R
+import eu.darken.capod.common.bluetooth.ScannerMode
import eu.darken.capod.common.preferences.PercentSliderPreference
import eu.darken.capod.common.uix.PreferenceFragment2
import eu.darken.capod.common.upgrade.UpgradeRepo
import eu.darken.capod.main.core.GeneralSettings
import eu.darken.capod.main.core.MonitorMode
-import eu.darken.capod.main.core.ScannerMode
import eu.darken.capod.pods.core.PodDevice
import javax.inject.Inject
diff --git a/app/src/main/java/eu/darken/capod/monitor/core/PodMonitor.kt b/app/src/main/java/eu/darken/capod/monitor/core/PodMonitor.kt
index 536941fe..6e1f571f 100644
--- a/app/src/main/java/eu/darken/capod/monitor/core/PodMonitor.kt
+++ b/app/src/main/java/eu/darken/capod/monitor/core/PodMonitor.kt
@@ -4,6 +4,7 @@ import android.bluetooth.le.ScanFilter
import eu.darken.capod.common.bluetooth.BleScanResult
import eu.darken.capod.common.bluetooth.BleScanner
import eu.darken.capod.common.bluetooth.BluetoothManager2
+import eu.darken.capod.common.bluetooth.ScannerMode
import eu.darken.capod.common.coroutine.AppScope
import eu.darken.capod.common.debug.autoreport.DebugSettings
import eu.darken.capod.common.debug.logging.Logging.Priority.VERBOSE
@@ -13,7 +14,6 @@ import eu.darken.capod.common.debug.logging.log
import eu.darken.capod.common.debug.logging.logTag
import eu.darken.capod.common.flow.replayingShare
import eu.darken.capod.main.core.GeneralSettings
-import eu.darken.capod.main.core.ScannerMode
import eu.darken.capod.pods.core.PodDevice
import eu.darken.capod.pods.core.PodFactory
import eu.darken.capod.pods.core.apple.protocol.ProximityPairing
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 452abe61..1c9bcdec 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -5,17 +5,6 @@
Device status
- Error
- Share
- Done
- Copy
- Thank you
- N/A
- Grant permission
- Upgrade
- Check
- Close
-
Size
Compressed size
Debug notifications
@@ -93,9 +82,7 @@
When app is open
When device is connected
Always
- Low power
- Balanced
- Low latency
+
Auto pause
Pause audio when removing the device from your ear.
Show all devices