Update common libraries version

This commit is contained in:
Sylwester Zieliński
2022-05-23 15:39:47 +02:00
parent 79eeca4491
commit 83a5123318
37 changed files with 108 additions and 208 deletions

View File

@@ -86,12 +86,12 @@ dependencies {
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_service")
implementation project(":lib_log")
implementation libs.nordic.theme
implementation libs.nordic.ble.common
implementation libs.nordic.ui.scanner
implementation libs.nordic.navigation
implementation libs.nordic.ui.logger
implementation libs.bundles.hilt
kapt libs.bundles.hiltkapt

View File

@@ -1,9 +0,0 @@
apply from: rootProject.file("library.gradle")
android {
namespace 'no.nordicsemi.android.logger'
}
dependencies {
implementation libs.nordic.log
}

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="no.nordicsemi.android.LOG"/>
</manifest>

View File

@@ -1,45 +0,0 @@
package no.nordicsemi.android.logger
import android.content.Context
import android.content.Intent
import android.net.Uri
import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject
private const val LOGGER_PACKAGE_NAME = "no.nordicsemi.android.log"
private const val LOGGER_LINK = "https://play.google.com/store/apps/details?id=no.nordicsemi.android.log"
class LoggerAppRunner @Inject constructor(
@ApplicationContext
private val context: Context
) {
fun runLogger() {
val packageManger = context.packageManager
val intent = packageManger.getLaunchIntentForPackage(LOGGER_PACKAGE_NAME)
if (intent != null) {
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
context.startActivity(intent)
} else {
val launchIntent = Intent(Intent.ACTION_VIEW, Uri.parse(LOGGER_LINK))
launchIntent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
context.startActivity(launchIntent)
}
}
fun runLogger(uri: Uri?) {
val packageManger = context.packageManager
val intent = packageManger.getLaunchIntentForPackage(LOGGER_PACKAGE_NAME)
val targetUri = if (intent != null && uri != null) {
uri
} else {
Uri.parse(LOGGER_LINK)
}
val launchIntent = Intent(Intent.ACTION_VIEW, targetUri)
launchIntent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
context.startActivity(launchIntent)
}
}

View File

@@ -1,45 +0,0 @@
package no.nordicsemi.android.logger
import android.content.Context
import android.util.Log
import dagger.assisted.Assisted
import dagger.assisted.AssistedInject
import dagger.hilt.android.qualifiers.ApplicationContext
import no.nordicsemi.android.log.LogContract
import no.nordicsemi.android.log.LogSession
import no.nordicsemi.android.log.Logger
import no.nordicsemi.android.log.annotation.LogLevel
internal const val LOG_TAG = "nRF Toolbox"
class ToolboxLogger @AssistedInject constructor(
@ApplicationContext
private val context: Context,
private val appRunner: LoggerAppRunner,
@Assisted("profile")
private val profile: String,
@Assisted("key")
private val key: String,
) {
private var logSession: LogSession? = null
fun log(@LogLevel level: Int, message: String) {
val logSession = getLogger()
if (logSession != null) {
Logger.log(logSession, LogContract.Log.Level.fromPriority(level), message)
}
val logPriority = if (level <= Log.ASSERT) level else Log.INFO
Log.println(logPriority, LOG_TAG, message)
}
fun openLogger() {
appRunner.runLogger(logSession?.sessionUri)
}
private fun getLogger(): LogSession? {
logSession = logSession ?: Logger.newSession(context, profile, key, LOG_TAG)
logSession?.sessionsUri
return logSession
}
}

View File

@@ -1,10 +0,0 @@
package no.nordicsemi.android.logger
import dagger.assisted.Assisted
import dagger.assisted.AssistedFactory
@AssistedFactory
interface ToolboxLoggerFactory {
fun create(@Assisted("profile") profile: String, @Assisted("key") key: String): ToolboxLogger
}

View File

@@ -1,9 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="80dp"
android:height="80dp"
android:viewportWidth="1024"
android:viewportHeight="1024">
<path
android:pathData="M989.6,949.6L772.8,732.8c30.8,-33.4 55.3,-71.5 73,-113.4c20.6,-48.7 31,-100.4 31,-153.6s-10.4,-105 -31,-153.6c-19.9,-47 -48.3,-89.2 -84.6,-125.4c-36.2,-36.2 -78.4,-64.7 -125.4,-84.6c-48.7,-20.6 -100.4,-31 -153.6,-31s-105,10.4 -153.6,31c-47,19.9 -89.2,48.3 -125.4,84.6c-36.2,36.2 -64.7,78.4 -84.6,125.4c-20.6,48.7 -31,100.4 -31,153.6s10.4,105 31,153.6c19.9,47 48.3,89.2 84.6,125.4c36.2,36.2 78.4,64.7 125.4,84.6c48.7,20.6 100.4,31 153.6,31s105,-10.4 153.6,-31c34.6,-14.6 66.6,-33.9 95.5,-57.5l218,218c5.6,5.6 12.9,8.3 20.2,8.3s14.6,-2.8 20.2,-8.3C1000.8,978.8 1000.8,960.7 989.6,949.6zM482.2,803.4c-112.7,0 -212.6,-55.5 -274,-140.6h352.3c15.7,0 28.5,-12.8 28.5,-28.5s-12.8,-28.5 -28.5,-28.5H175c-15.8,-34.5 -25.9,-72.1 -29.2,-111.6h414.8c15.7,0 28.5,-12.8 28.5,-28.5s-12.8,-28.5 -28.5,-28.5H145.7c3.3,-39.5 13.5,-77.1 29.2,-111.6h385.5c15.7,0 28.5,-12.8 28.5,-28.5s-12.8,-28.5 -28.5,-28.5H208.2c61.4,-85.1 161.3,-140.6 274,-140.6c186.2,0 337.7,151.5 337.7,337.7C819.9,651.9 668.4,803.4 482.2,803.4z"
android:fillColor="#00B3DC"/>
</vector>

View File

@@ -5,7 +5,7 @@ android {
}
dependencies {
implementation project(":lib_log")
implementation libs.nordic.ui.logger
implementation libs.material

View File

@@ -0,0 +1,14 @@
package no.nordicsemi.android.theme.view
import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext
import no.nordicsemi.android.theme.R
import javax.inject.Inject
class StringConst @Inject constructor(
@ApplicationContext
private val context: Context
) {
val APP_NAME = context.getString(R.string.app_name)
}

View File

@@ -6,12 +6,12 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.nordic.ble.common
implementation libs.nordic.ble.ktx
implementation libs.nordic.navigation
implementation libs.nordic.theme
implementation libs.nordic.ui.logger
implementation libs.nordic.ui.scanner

View File

@@ -36,7 +36,7 @@ import no.nordicsemi.android.ble.common.callback.battery.BatteryLevelResponse
import no.nordicsemi.android.ble.common.callback.bps.BloodPressureMeasurementResponse
import no.nordicsemi.android.ble.common.callback.bps.IntermediateCuffPressureResponse
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import java.util.*
@@ -50,7 +50,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID = UUID.fromString("00002A19-0000-1
internal class BPSManager(
@ApplicationContext context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -13,9 +13,10 @@ import kotlinx.coroutines.launch
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.bps.data.BPSData
import no.nordicsemi.android.bps.data.BPSManager
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
@@ -23,13 +24,14 @@ import javax.inject.Inject
internal class BPSRepository @Inject constructor(
@ApplicationContext
private val context: Context,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
fun downloadData(scope: CoroutineScope, device: DiscoveredBluetoothDevice): Flow<BleManagerResult<BPSData>> = callbackFlow {
val createdLogger = toolboxLoggerFactory.create("BPS", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "BPS", device.address()).also {
logger = it
}
val manager = BPSManager(context, scope, createdLogger)

View File

@@ -10,10 +10,10 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.nordic.ble.common
implementation libs.nordic.ble.ktx
implementation libs.nordic.ui.logger
implementation libs.nordic.theme
implementation libs.nordic.ui.scanner

View File

@@ -45,7 +45,7 @@ import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.ble.ktx.suspendForValidResponse
import no.nordicsemi.android.cgms.repository.toList
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import no.nordicsemi.android.utils.launchWithCatch
import java.util.*
@@ -64,7 +64,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID = UUID.fromString("00002A19-0000-1
internal class CGMManager(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var cgmStatusCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -8,11 +8,12 @@ import kotlinx.coroutines.launch
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.cgms.data.CGMData
import no.nordicsemi.android.cgms.data.CGMManager
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.service.IdleResult
import no.nordicsemi.android.service.ServiceManager
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
import javax.inject.Singleton
@@ -22,10 +23,11 @@ class CGMRepository @Inject constructor(
@ApplicationContext
private val context: Context,
private val serviceManager: ServiceManager,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: CGMManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
private val _data = MutableStateFlow<BleManagerResult<CGMData>>(IdleResult())
internal val data = _data.asStateFlow()
@@ -38,7 +40,7 @@ class CGMRepository @Inject constructor(
}
fun start(device: DiscoveredBluetoothDevice, scope: CoroutineScope) {
val createdLogger = toolboxLoggerFactory.create("CGMS", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "CGMS", device.address()).also {
logger = it
}
val manager = CGMManager(context, scope, createdLogger)

View File

@@ -6,10 +6,10 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.nordic.ble.common
implementation libs.nordic.ble.ktx
implementation libs.nordic.ui.logger
implementation libs.nordic.theme
implementation libs.nordic.navigation

View File

@@ -33,7 +33,7 @@ import no.nordicsemi.android.ble.BleManager
import no.nordicsemi.android.ble.common.callback.battery.BatteryLevelResponse
import no.nordicsemi.android.ble.common.callback.csc.CyclingSpeedAndCadenceMeasurementResponse
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import java.util.*
@@ -46,7 +46,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID = UUID.fromString("00002A19-0000-1
internal class CSCManager(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -1,6 +1,5 @@
package no.nordicsemi.android.csc.repository
import android.bluetooth.BluetoothDevice
import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.CoroutineScope
@@ -10,12 +9,12 @@ import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.csc.data.CSCData
import no.nordicsemi.android.csc.data.CSCManager
import no.nordicsemi.android.csc.data.WheelSize
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.service.ConnectingResult
import no.nordicsemi.android.service.IdleResult
import no.nordicsemi.android.service.ServiceManager
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
import javax.inject.Singleton
@@ -25,10 +24,11 @@ class CSCRepository @Inject constructor(
@ApplicationContext
private val context: Context,
private val serviceManager: ServiceManager,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: CSCManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
private val _data = MutableStateFlow<BleManagerResult<CSCData>>(IdleResult())
internal val data = _data.asStateFlow()
@@ -41,7 +41,7 @@ class CSCRepository @Inject constructor(
}
fun start(device: DiscoveredBluetoothDevice, scope: CoroutineScope) {
val createdLogger = toolboxLoggerFactory.create("CSC", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "CSC", device.address()).also {
logger = it
}
val manager = CSCManager(context, scope, createdLogger)

View File

@@ -10,7 +10,6 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.chart
@@ -19,6 +18,7 @@ dependencies {
implementation libs.nordic.theme
implementation libs.nordic.ui.scanner
implementation libs.nordic.navigation
implementation libs.nordic.ui.logger
implementation libs.bundles.compose
implementation libs.androidx.core

View File

@@ -25,7 +25,6 @@ import android.bluetooth.BluetoothGatt
import android.bluetooth.BluetoothGattCharacteristic
import android.content.Context
import android.util.Log
import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.launchIn
@@ -39,11 +38,10 @@ import no.nordicsemi.android.ble.common.callback.glucose.GlucoseMeasurementRespo
import no.nordicsemi.android.ble.common.data.RecordAccessControlPointData
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import no.nordicsemi.android.utils.launchWithCatch
import java.util.*
import javax.inject.Inject
val GLS_SERVICE_UUID: UUID = UUID.fromString("00001808-0000-1000-8000-00805f9b34fb")
@@ -59,7 +57,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID =
internal class GLSManager(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -14,9 +14,10 @@ import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.gls.data.GLSData
import no.nordicsemi.android.gls.data.GLSManager
import no.nordicsemi.android.gls.data.WorkingMode
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.android.utils.exhaustive
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
@@ -25,14 +26,15 @@ import javax.inject.Inject
internal class GLSRepository @Inject constructor(
@ApplicationContext
private val context: Context,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: GLSManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
fun downloadData(scope: CoroutineScope, device: DiscoveredBluetoothDevice): Flow<BleManagerResult<GLSData>> = callbackFlow {
val createdLogger = toolboxLoggerFactory.create("GLS", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "GLS", device.address()).also {
logger = it
}
val managerInstance = manager ?: GLSManager(context, scope, createdLogger)

View File

@@ -10,7 +10,6 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.chart
@@ -19,6 +18,7 @@ dependencies {
implementation libs.nordic.ble.ktx
implementation libs.nordic.navigation
implementation libs.nordic.ui.scanner
implementation libs.nordic.ui.logger
implementation libs.bundles.compose
implementation libs.androidx.core

View File

@@ -35,7 +35,7 @@ import no.nordicsemi.android.ble.common.callback.hr.BodySensorLocationResponse
import no.nordicsemi.android.ble.common.callback.hr.HeartRateMeasurementResponse
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.ble.ktx.suspendForValidResponse
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import no.nordicsemi.android.utils.launchWithCatch
import java.util.*
@@ -50,7 +50,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID = UUID.fromString("00002A19-0000-1
internal class HRSManager(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -1,6 +1,5 @@
package no.nordicsemi.android.hrs.service
import android.bluetooth.BluetoothDevice
import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.CoroutineScope
@@ -9,12 +8,12 @@ import kotlinx.coroutines.launch
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.hrs.data.HRSData
import no.nordicsemi.android.hrs.data.HRSManager
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.service.ConnectingResult
import no.nordicsemi.android.service.IdleResult
import no.nordicsemi.android.service.ServiceManager
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
import javax.inject.Singleton
@@ -24,10 +23,11 @@ class HRSRepository @Inject constructor(
@ApplicationContext
private val context: Context,
private val serviceManager: ServiceManager,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: HRSManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
private val _data = MutableStateFlow<BleManagerResult<HRSData>>(IdleResult())
internal val data = _data.asStateFlow()
@@ -40,7 +40,7 @@ class HRSRepository @Inject constructor(
}
fun start(device: DiscoveredBluetoothDevice, scope: CoroutineScope) {
val createdLogger = toolboxLoggerFactory.create("HRS", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "HRS", device.address()).also {
logger = it
}
val manager = HRSManager(context, scope, createdLogger)

View File

@@ -6,7 +6,6 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.nordic.ble.common
implementation libs.nordic.ble.ktx
@@ -14,6 +13,7 @@ dependencies {
implementation libs.nordic.theme
implementation libs.nordic.ui.scanner
implementation libs.nordic.navigation
implementation libs.nordic.ui.logger
implementation libs.bundles.compose
implementation libs.androidx.core

View File

@@ -33,7 +33,7 @@ import no.nordicsemi.android.ble.BleManager
import no.nordicsemi.android.ble.common.callback.battery.BatteryLevelResponse
import no.nordicsemi.android.ble.common.callback.ht.TemperatureMeasurementResponse
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import java.util.*
@@ -46,7 +46,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID = UUID.fromString("00002A19-0000-1
internal class HTSManager internal constructor(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -1,6 +1,5 @@
package no.nordicsemi.android.hts.repository
import android.bluetooth.BluetoothDevice
import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.CoroutineScope
@@ -9,12 +8,12 @@ import kotlinx.coroutines.launch
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.hts.data.HTSData
import no.nordicsemi.android.hts.data.HTSManager
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.service.ConnectingResult
import no.nordicsemi.android.service.IdleResult
import no.nordicsemi.android.service.ServiceManager
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
import javax.inject.Singleton
@@ -24,10 +23,11 @@ class HTSRepository @Inject constructor(
@ApplicationContext
private val context: Context,
private val serviceManager: ServiceManager,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: HTSManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
private val _data = MutableStateFlow<BleManagerResult<HTSData>>(IdleResult())
internal val data = _data.asStateFlow()
@@ -40,7 +40,7 @@ class HTSRepository @Inject constructor(
}
fun start(device: DiscoveredBluetoothDevice, scope: CoroutineScope) {
val createdLogger = toolboxLoggerFactory.create("HTS", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "HTS", device.address()).also {
logger = it
}
val manager = HTSManager(context, scope, createdLogger)

View File

@@ -10,7 +10,6 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.nordic.ble.common
implementation libs.nordic.ble.ktx
@@ -18,6 +17,7 @@ dependencies {
implementation libs.nordic.theme
implementation libs.nordic.ui.scanner
implementation libs.nordic.navigation
implementation libs.nordic.ui.logger
implementation libs.bundles.icons
implementation libs.bundles.compose

View File

@@ -37,7 +37,7 @@ import no.nordicsemi.android.ble.common.callback.battery.BatteryLevelResponse
import no.nordicsemi.android.ble.common.data.alert.AlertLevelData
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import no.nordicsemi.android.utils.launchWithCatch
import java.util.*
@@ -52,7 +52,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID = UUID.fromString("00002A19-0000-1
internal class PRXManager(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -4,13 +4,14 @@ import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.*
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.prx.data.AlarmLevel
import no.nordicsemi.android.prx.data.PRXData
import no.nordicsemi.android.prx.data.PRXManager
import no.nordicsemi.android.prx.data.ProximityServerManager
import no.nordicsemi.android.service.*
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
import javax.inject.Singleton
@@ -22,11 +23,12 @@ class PRXRepository @Inject internal constructor(
private val serviceManager: ServiceManager,
private val proximityServerManager: ProximityServerManager,
private val alarmHandler: AlarmHandler,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: PRXManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
private val _data = MutableStateFlow<BleManagerResult<PRXData>>(IdleResult())
internal val data = _data.asStateFlow()
@@ -40,7 +42,7 @@ class PRXRepository @Inject internal constructor(
}
fun start(device: DiscoveredBluetoothDevice, scope: CoroutineScope) {
val createdLogger = toolboxLoggerFactory.create("PRX", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "PRX", device.address()).also {
logger = it
}
val manager = PRXManager(context, scope, createdLogger)

View File

@@ -10,7 +10,6 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.nordic.ble.common
implementation libs.nordic.ble.ktx
@@ -18,6 +17,7 @@ dependencies {
implementation libs.nordic.theme
implementation libs.nordic.ui.scanner
implementation libs.nordic.navigation
implementation libs.nordic.ui.logger
implementation libs.bundles.compose
implementation libs.androidx.core

View File

@@ -33,7 +33,7 @@ import no.nordicsemi.android.ble.BleManager
import no.nordicsemi.android.ble.common.callback.battery.BatteryLevelResponse
import no.nordicsemi.android.ble.common.callback.rsc.RunningSpeedAndCadenceMeasurementResponse
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import java.util.*
@@ -46,7 +46,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID = UUID.fromString("00002A19-0000-1
internal class RSCSManager internal constructor(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -6,13 +6,14 @@ import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.*
import kotlinx.coroutines.launch
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.rscs.data.RSCSData
import no.nordicsemi.android.rscs.data.RSCSManager
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.service.IdleResult
import no.nordicsemi.android.service.ServiceManager
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
import javax.inject.Inject
import javax.inject.Singleton
@@ -22,10 +23,11 @@ class RSCSRepository @Inject constructor(
@ApplicationContext
private val context: Context,
private val serviceManager: ServiceManager,
private val toolboxLoggerFactory: ToolboxLoggerFactory
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: RSCSManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
private val _data = MutableStateFlow<BleManagerResult<RSCSData>>(IdleResult())
internal val data = _data.asStateFlow()
@@ -38,7 +40,7 @@ class RSCSRepository @Inject constructor(
}
fun start(device: DiscoveredBluetoothDevice, scope: CoroutineScope) {
val createdLogger = toolboxLoggerFactory.create("RSCS", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "RSCS", device.address()).also {
logger = it
}
val manager = RSCSManager(context, scope, createdLogger)

View File

@@ -27,7 +27,6 @@ dependencies {
implementation project(":lib_service")
implementation project(":lib_theme")
implementation project(":lib_utils")
implementation project(":lib_log")
implementation libs.room.runtime
implementation libs.room.ktx
@@ -39,6 +38,7 @@ dependencies {
implementation libs.nordic.theme
implementation libs.nordic.ui.scanner
implementation libs.nordic.navigation
implementation libs.nordic.ui.logger
implementation libs.bundles.datastore
implementation libs.bundles.compose

View File

@@ -38,7 +38,7 @@ import no.nordicsemi.android.ble.common.callback.battery.BatteryLevelResponse
import no.nordicsemi.android.ble.ktx.asFlow
import no.nordicsemi.android.ble.ktx.asValidResponseFlow
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.service.ConnectionObserverAdapter
import no.nordicsemi.android.utils.EMPTY
import no.nordicsemi.android.utils.launchWithCatch
@@ -55,7 +55,7 @@ private val BATTERY_LEVEL_CHARACTERISTIC_UUID =
internal class UARTManager(
context: Context,
private val scope: CoroutineScope,
private val logger: ToolboxLogger
private val logger: NordicLogger
) : BleManager(context) {
private var batteryLevelCharacteristic: BluetoothGattCharacteristic? = null

View File

@@ -6,11 +6,12 @@ import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.*
import kotlinx.coroutines.launch
import no.nordicsemi.android.ble.ktx.suspend
import no.nordicsemi.android.logger.ToolboxLogger
import no.nordicsemi.android.logger.ToolboxLoggerFactory
import no.nordicsemi.android.logger.NordicLogger
import no.nordicsemi.android.logger.NordicLoggerFactory
import no.nordicsemi.android.service.BleManagerResult
import no.nordicsemi.android.service.IdleResult
import no.nordicsemi.android.service.ServiceManager
import no.nordicsemi.android.theme.view.StringConst
import no.nordicsemi.android.uart.data.*
import no.nordicsemi.android.utils.EMPTY
import no.nordicsemi.ui.scanner.DiscoveredBluetoothDevice
@@ -23,10 +24,11 @@ class UARTRepository @Inject internal constructor(
private val context: Context,
private val serviceManager: ServiceManager,
private val configurationDataSource: ConfigurationDataSource,
private val toolboxLoggerFactory: ToolboxLoggerFactory,
private val loggerFactory: NordicLoggerFactory,
private val stringConst: StringConst
) {
private var manager: UARTManager? = null
private var logger: ToolboxLogger? = null
private var logger: NordicLogger? = null
private val _data = MutableStateFlow<BleManagerResult<UARTData>>(IdleResult())
internal val data = _data.asStateFlow()
@@ -41,7 +43,7 @@ class UARTRepository @Inject internal constructor(
}
fun start(device: DiscoveredBluetoothDevice, scope: CoroutineScope) {
val createdLogger = toolboxLoggerFactory.create("UART", device.address()).also {
val createdLogger = loggerFactory.create(stringConst.APP_NAME, "UART", device.address()).also {
logger = it
}
val manager = UARTManager(context, scope, createdLogger)

View File

@@ -15,10 +15,11 @@ dependencyResolutionManagement {
library('nordic-log', 'no.nordicsemi.android:log:2.3.0')
version('commonlibraries', '1.0.7')
version('commonlibraries', '1.0.8')
library('nordic-ui-scanner', 'no.nordicsemi.android.common', 'uiscanner').versionRef('commonlibraries')
library('nordic-navigation', 'no.nordicsemi.android.common', 'navigation').versionRef('commonlibraries')
library('nordic-theme', 'no.nordicsemi.android.common', 'theme').versionRef('commonlibraries')
library('nordic-ui-logger', 'no.nordicsemi.android.common', 'uilogger').versionRef('commonlibraries')
library('localbroadcastmanager', 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0')
library('material', 'com.google.android.material:material:1.6.0-rc01')
@@ -98,7 +99,6 @@ include ':lib_analytics'
include ':lib_service'
include ':lib_theme'
include ':lib_utils'
include ':lib_log'
if (file('../Android-Common-Libraries').exists()) {
includeBuild('../Android-Common-Libraries')