diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt b/app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt index 42839740..04e75ffe 100644 --- a/app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt +++ b/app/src/main/java/eu/darken/capod/common/bluetooth/BluetoothManager2.kt @@ -23,6 +23,7 @@ import eu.darken.capod.common.debug.logging.Logging.Priority.WARN import eu.darken.capod.common.debug.logging.log import eu.darken.capod.common.debug.logging.logTag import eu.darken.capod.common.flow.setupCommonEventHandlers +import eu.darken.capod.common.permissions.Permission import eu.darken.capod.pods.core.apple.ble.protocol.ContinuityProtocol import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.channels.awaitClose @@ -390,9 +391,6 @@ class BluetoothManager2 @Inject constructor( initialValue = emptySet(), ) - private var _isNudgeAvailable: Boolean = true - val isNudgeAvailable: Boolean get() = _isNudgeAvailable - /** * Set the Android-local alias for a bonded [device]. Updates what Android's system Bluetooth * settings display without touching the AirPods firmware itself. Uses reflection on the hidden @@ -425,29 +423,36 @@ class BluetoothManager2 @Inject constructor( } } - suspend fun nudgeConnection(device: BluetoothDevice2): Boolean = getBluetoothProfile().map { bluetoothProfile -> - try { - log(TAG) { "Nudging Android connection to $device" } + suspend fun nudgeConnection(device: BluetoothDevice2): NudgeAttemptResult = + getBluetoothProfile().map { bluetoothProfile -> + try { + log(TAG) { "Nudging Android connection to $device" } - val target = device.internal ?: return@map false - val connectMethod = BluetoothHeadset::class.java.getDeclaredMethod( - "connect", BluetoothDevice::class.java - ).apply { isAccessible = true } + val target = device.internal ?: return@map NudgeAttemptResult.Rejected + val connectMethod = BluetoothHeadset::class.java.getDeclaredMethod( + "connect", BluetoothDevice::class.java + ).apply { isAccessible = true } - val accepted = connectMethod.invoke(bluetoothProfile.proxy, target) as? Boolean ?: false - log(TAG) { "Nudged connection to $device — accepted=$accepted" } - accepted - } catch (e: Exception) { - val isSecurityException = e is SecurityException || - (e is java.lang.reflect.InvocationTargetException && e.cause is SecurityException) - if (isSecurityException) { - log(TAG, ERROR) { "nudgeConnection is permanently unavailable: missing MODIFY_PHONE_STATE permission" } - _isNudgeAvailable = false + val accepted = connectMethod.invoke(bluetoothProfile.proxy, target) as? Boolean ?: false + log(TAG) { "Nudged connection to $device — accepted=$accepted" } + if (accepted) NudgeAttemptResult.Accepted else NudgeAttemptResult.Rejected + } catch (e: Exception) { + val isSecurityException = e is SecurityException || + (e is java.lang.reflect.InvocationTargetException && e.cause is SecurityException) + if (!isSecurityException) { + Bugs.report(tag = TAG, "BluetoothHeadset.connect(device) is unavailable", exception = e) + return@map NudgeAttemptResult.Rejected + } + if (!Permission.BLUETOOTH_CONNECT.isGranted(context)) { + log(TAG, WARN) { "nudgeConnection failed because BLUETOOTH_CONNECT is not granted" } + NudgeAttemptResult.UnavailableMissingPermission + } else { + log(TAG, ERROR) { "nudgeConnection is permanently unavailable on this device: $e" } + Bugs.report(tag = TAG, "BluetoothHeadset.connect(device) is unavailable", exception = e) + NudgeAttemptResult.UnavailableHiddenApi + } } - Bugs.report(tag = TAG, "BluetoothHeadset.connect(device) is unavailable", exception = e) - false - } - }.first() + }.first() companion object { private val TAG = logTag("Bluetooth", "Manager2") diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/NudgeCapability.kt b/app/src/main/java/eu/darken/capod/common/bluetooth/NudgeCapability.kt new file mode 100644 index 00000000..9178df9f --- /dev/null +++ b/app/src/main/java/eu/darken/capod/common/bluetooth/NudgeCapability.kt @@ -0,0 +1,18 @@ +package eu.darken.capod.common.bluetooth + +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@Serializable +enum class NudgeAvailability { + @SerialName("nudge.unknown") UNKNOWN, + @SerialName("nudge.available") AVAILABLE, + @SerialName("nudge.broken") BROKEN, +} + +enum class NudgeAttemptResult { + Accepted, + Rejected, + UnavailableHiddenApi, + UnavailableMissingPermission, +} diff --git a/app/src/main/java/eu/darken/capod/common/bluetooth/NudgeCapabilityStore.kt b/app/src/main/java/eu/darken/capod/common/bluetooth/NudgeCapabilityStore.kt new file mode 100644 index 00000000..bf836f16 --- /dev/null +++ b/app/src/main/java/eu/darken/capod/common/bluetooth/NudgeCapabilityStore.kt @@ -0,0 +1,70 @@ +package eu.darken.capod.common.bluetooth + +import android.content.Context +import androidx.datastore.core.DataStore +import androidx.datastore.preferences.core.Preferences +import androidx.datastore.preferences.preferencesDataStore +import dagger.hilt.android.qualifiers.ApplicationContext +import eu.darken.capod.common.coroutine.AppScope +import eu.darken.capod.common.coroutine.DispatcherProvider +import eu.darken.capod.common.datastore.createValue +import eu.darken.capod.common.datastore.value +import eu.darken.capod.common.debug.logging.Logging.Priority.INFO +import eu.darken.capod.common.debug.logging.log +import eu.darken.capod.common.debug.logging.logTag +import eu.darken.capod.common.serialization.SerializationCapod +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.flow.SharingStarted +import kotlinx.coroutines.flow.StateFlow +import kotlinx.coroutines.flow.stateIn +import kotlinx.coroutines.launch +import kotlinx.coroutines.plus +import kotlinx.serialization.json.Json +import javax.inject.Inject +import javax.inject.Singleton + +@Singleton +class NudgeCapabilityStore @Inject constructor( + @ApplicationContext private val context: Context, + @SerializationCapod json: Json, + @AppScope private val appScope: CoroutineScope, + private val dispatcherProvider: DispatcherProvider, +) { + + private val Context.bluetoothDataStore by preferencesDataStore(name = "bluetooth_state") + + private val dataStore: DataStore get() = context.bluetoothDataStore + + private val persistedValue = dataStore.createValue( + "core.bluetooth.nudge.availability", + NudgeAvailability.UNKNOWN, + json, + onErrorFallbackToDefault = true, + ) + + val availability: StateFlow = persistedValue.flow + .stateIn( + scope = appScope + dispatcherProvider.IO, + started = SharingStarted.Eagerly, + initialValue = NudgeAvailability.UNKNOWN, + ) + + fun record(result: NudgeAttemptResult) { + val verdict = when (result) { + NudgeAttemptResult.Accepted -> NudgeAvailability.AVAILABLE + NudgeAttemptResult.UnavailableHiddenApi -> NudgeAvailability.BROKEN + NudgeAttemptResult.Rejected, + NudgeAttemptResult.UnavailableMissingPermission -> null + } + if (verdict == null) return + if (availability.value == verdict) return + log(TAG, INFO) { "Recording nudge verdict: $verdict (from $result)" } + appScope.launch(dispatcherProvider.IO) { + persistedValue.value(verdict) + } + } + + companion object { + private val TAG = logTag("Bluetooth", "NudgeCapabilityStore") + } +} 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 06c4d0c0..fae4953a 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 @@ -36,8 +36,6 @@ class GeneralSettings @Inject constructor( private val dataStore: DataStore get() = context.dataStore - val monitorMode = dataStore.createValue("core.monitor.mode", MonitorMode.AUTOMATIC, json, onErrorFallbackToDefault = true) - val useExtraMonitorNotification = dataStore.createValue("core.monitor.notification.connected", false) val keepConnectedNotificationAfterDisconnect = diff --git a/app/src/main/java/eu/darken/capod/main/core/MonitorMode.kt b/app/src/main/java/eu/darken/capod/main/core/MonitorMode.kt index 4c54d2c2..4298ca00 100644 --- a/app/src/main/java/eu/darken/capod/main/core/MonitorMode.kt +++ b/app/src/main/java/eu/darken/capod/main/core/MonitorMode.kt @@ -1,21 +1,13 @@ package eu.darken.capod.main.core -import androidx.annotation.StringRes -import eu.darken.capod.R import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class MonitorMode( - @StringRes val labelRes: Int + val intensity: Int, ) { - @SerialName("monitor.mode.manual") MANUAL( - R.string.settings_monitor_mode_manual_label - ), - @SerialName("monitor.mode.automatic") AUTOMATIC( - R.string.settings_monitor_mode_automatic_label - ), - @SerialName("monitor.mode.always") ALWAYS( - R.string.settings_monitor_mode_always_label - ), -} \ No newline at end of file + @SerialName("monitor.mode.manual") MANUAL(intensity = 0), + @SerialName("monitor.mode.automatic") AUTOMATIC(intensity = 1), + @SerialName("monitor.mode.always") ALWAYS(intensity = 2), +} diff --git a/app/src/main/java/eu/darken/capod/main/core/PermissionTool.kt b/app/src/main/java/eu/darken/capod/main/core/PermissionTool.kt index 442f704d..22550c5a 100644 --- a/app/src/main/java/eu/darken/capod/main/core/PermissionTool.kt +++ b/app/src/main/java/eu/darken/capod/main/core/PermissionTool.kt @@ -6,6 +6,7 @@ import eu.darken.capod.common.debug.logging.log import eu.darken.capod.common.debug.logging.logTag import eu.darken.capod.common.permissions.Permission import eu.darken.capod.common.permissions.isRequired +import eu.darken.capod.monitor.core.MonitorModeResolver import eu.darken.capod.profiles.core.toReactionConfig import eu.darken.capod.profiles.core.DeviceProfilesRepo import kotlinx.coroutines.flow.Flow @@ -21,7 +22,7 @@ import javax.inject.Singleton @Singleton class PermissionTool @Inject constructor( @ApplicationContext private val context: Context, - private val generalSettings: GeneralSettings, + private val monitorModeResolver: MonitorModeResolver, private val profilesRepo: DeviceProfilesRepo, ) { private val permissionCheckTrigger = MutableStateFlow(UUID.randomUUID()) @@ -41,7 +42,7 @@ class PermissionTool @Inject constructor( val missingPermissions: Flow> = combine( permissionCheckTrigger, - generalSettings.monitorMode.flow, + monitorModeResolver.effectiveMode, anyPopupEnabled, ) { _, monitorMode, showPopUp -> Permission.entries diff --git a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt index 119c913c..1bec765b 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt @@ -172,7 +172,6 @@ fun DeviceSettingsScreenHost( onAutoConnectConditionChange = { vm.setAutoConnectCondition(it) }, onShowPopUpOnCaseOpenChange = { vm.setShowPopUpOnCaseOpen(it) }, onShowPopUpOnConnectionChange = { vm.setShowPopUpOnConnection(it) }, - onFixMonitorMode = { vm.setMonitorModeAutomatic() }, onOpenIssueTracker = { vm.openIssueTracker() }, onOpenAapTracker = { vm.openAapCompatibilityTracker() }, ) @@ -211,7 +210,6 @@ fun DeviceSettingsScreen( onAutoConnectConditionChange: (AutoConnectCondition) -> Unit = {}, onShowPopUpOnCaseOpenChange: (Boolean) -> Unit = {}, onShowPopUpOnConnectionChange: (Boolean) -> Unit = {}, - onFixMonitorMode: () -> Unit = {}, onOpenIssueTracker: () -> Unit = {}, onOpenAapTracker: () -> Unit = {}, ) { @@ -341,7 +339,6 @@ fun DeviceSettingsScreen( device = device, features = features, isPro = isPro, - monitorMode = state.monitorMode, onAutoPlayChange = onAutoPlayChange, onAutoPauseChange = onAutoPauseChange, onStartMusicOnWearChange = onStartMusicOnWearChange, @@ -352,7 +349,6 @@ fun DeviceSettingsScreen( onAutoConnectConditionChange = onAutoConnectConditionChange, onShowPopUpOnCaseOpenChange = onShowPopUpOnCaseOpenChange, onShowPopUpOnConnectionChange = onShowPopUpOnConnectionChange, - onFixMonitorMode = onFixMonitorMode, onOpenIssueTracker = onOpenIssueTracker, ) } diff --git a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModel.kt b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModel.kt index e92a0fc1..a5f74938 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModel.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModel.kt @@ -5,8 +5,10 @@ import eu.darken.capod.common.SystemTimeSource import eu.darken.capod.common.TimeSource import eu.darken.capod.common.WebpageTool import eu.darken.capod.common.bluetooth.BluetoothManager2 +import eu.darken.capod.common.bluetooth.NudgeAttemptResult +import eu.darken.capod.common.bluetooth.NudgeAvailability +import eu.darken.capod.common.bluetooth.NudgeCapabilityStore import eu.darken.capod.common.coroutine.DispatcherProvider -import eu.darken.capod.common.datastore.value import eu.darken.capod.common.debug.logging.Logging.Priority.INFO import eu.darken.capod.common.debug.logging.Logging.Priority.WARN import eu.darken.capod.common.debug.logging.log @@ -16,9 +18,9 @@ import eu.darken.capod.common.navigation.Nav import eu.darken.capod.common.uix.ViewModel4 import eu.darken.capod.common.upgrade.UpgradeRepo import eu.darken.capod.common.upgrade.isPro -import eu.darken.capod.main.core.GeneralSettings import eu.darken.capod.main.core.MonitorMode import eu.darken.capod.monitor.core.DeviceMonitor +import eu.darken.capod.monitor.core.MonitorModeResolver import eu.darken.capod.monitor.core.PodDevice import eu.darken.capod.monitor.core.resolvedAncCycleMask import eu.darken.capod.pods.core.apple.aap.AapConnectionManager @@ -51,7 +53,8 @@ class DeviceSettingsViewModel @Inject constructor( private val upgradeRepo: UpgradeRepo, private val bluetoothManager: BluetoothManager2, private val profilesRepo: DeviceProfilesRepo, - private val generalSettings: GeneralSettings, + private val monitorModeResolver: MonitorModeResolver, + private val nudgeCapabilityStore: NudgeCapabilityStore, private val timeSource: TimeSource, private val webpageTool: WebpageTool, ) : ViewModel4(dispatcherProvider) { @@ -114,7 +117,7 @@ class DeviceSettingsViewModel @Inject constructor( // The Bluetooth HEADSET profile lookup can be slow to produce its first value. // Seed this branch so the screen can render immediately after navigation. bluetoothManager.connectedDevices.onStart { emit(emptyList()) }, - generalSettings.monitorMode.flow, + monitorModeResolver.effectiveMode, profilesRepo.profiles, ) { args -> val device = args[1] as PodDevice? @@ -142,7 +145,7 @@ class DeviceSettingsViewModel @Inject constructor( device = device, now = timeSource.now(), isPro = upgrade.isPro, - isNudgeAvailable = bluetoothManager.isNudgeAvailable, + isNudgeAvailable = nudgeCapabilityStore.availability.value != NudgeAvailability.BROKEN, isForceConnecting = forcing, isClassicallyConnected = device?.address?.let { it in connectedAddresses } == true, monitorMode = monitorMode, @@ -206,18 +209,19 @@ class DeviceSettingsViewModel @Inject constructor( events.tryEmit(Event.OpenBluetoothSettings) return@launch } - if (!bluetoothManager.isNudgeAvailable) { + if (nudgeCapabilityStore.availability.value == NudgeAvailability.BROKEN) { events.tryEmit(Event.OpenBluetoothSettings) return@launch } - val accepted = try { + val result = try { bluetoothManager.nudgeConnection(bonded) } catch (e: Exception) { log(TAG, WARN) { "nudgeConnection threw: ${e.message}" } - false + NudgeAttemptResult.Rejected } - log(TAG, INFO) { "nudgeConnection($bonded) accepted=$accepted" } - if (!accepted) { + log(TAG, INFO) { "nudgeConnection($bonded) result=$result" } + nudgeCapabilityStore.record(result) + if (result != NudgeAttemptResult.Accepted) { events.tryEmit(Event.OpenBluetoothSettings) } } finally { @@ -414,15 +418,6 @@ class DeviceSettingsViewModel @Inject constructor( fun setAutoConnect(enabled: Boolean) = launch { log(TAG, INFO) { "setAutoConnect($enabled)" } updateProfileNow { it.copy(autoConnect = enabled) } - if (enabled) { - // Auto-connect requires ALWAYS mode to react to BLE/case/ear events when - // nothing is connected. We intentionally do NOT revert on disable — the user - // may have set ALWAYS manually, or another profile may still need it. - if (generalSettings.monitorMode.value() != MonitorMode.ALWAYS) { - log(TAG, INFO) { "Forcing monitorMode to ALWAYS because autoConnect was enabled" } - generalSettings.monitorMode.value(MonitorMode.ALWAYS) - } - } } fun setAutoConnectCondition(condition: AutoConnectCondition) = launch { @@ -440,10 +435,6 @@ class DeviceSettingsViewModel @Inject constructor( proGatedReaction(enabled) { it.copy(showPopUpOnConnection = enabled) } } - fun setMonitorModeAutomatic() = launch { - log(TAG, INFO) { "setMonitorModeAutomatic()" } - generalSettings.monitorMode.value(MonitorMode.AUTOMATIC) - } fun navToPressControls() = launch { log(TAG, INFO) { "navToPressControls()" } diff --git a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ReactionsCard.kt b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ReactionsCard.kt index 154fc01e..dd94b420 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ReactionsCard.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ReactionsCard.kt @@ -32,7 +32,6 @@ import eu.darken.capod.common.settings.SettingsBaseItem import eu.darken.capod.common.settings.SettingsInfoBox import eu.darken.capod.common.settings.SettingsSection import eu.darken.capod.common.settings.SettingsSwitchItem -import eu.darken.capod.main.core.MonitorMode import eu.darken.capod.main.ui.devicesettings.dialogs.AutoConnectConditionDialog import eu.darken.capod.main.ui.devicesettings.previewFullState import eu.darken.capod.monitor.core.PodDevice @@ -45,7 +44,6 @@ internal fun ReactionsCard( device: PodDevice, features: PodModel.Features, isPro: Boolean, - monitorMode: MonitorMode, onAutoPlayChange: (Boolean) -> Unit = {}, onAutoPauseChange: (Boolean) -> Unit = {}, onStartMusicOnWearChange: (Boolean) -> Unit = {}, @@ -56,7 +54,6 @@ internal fun ReactionsCard( onAutoConnectConditionChange: (AutoConnectCondition) -> Unit = {}, onShowPopUpOnCaseOpenChange: (Boolean) -> Unit = {}, onShowPopUpOnConnectionChange: (Boolean) -> Unit = {}, - onFixMonitorMode: () -> Unit = {}, onOpenIssueTracker: () -> Unit = {}, ) { val reactions = device.reactions @@ -209,17 +206,7 @@ internal fun ReactionsCard( requiresUpgrade = !isPro, ) val anyPopupEnabled = reactions.showPopUpOnCaseOpen || reactions.showPopUpOnConnection - if (anyPopupEnabled && monitorMode == MonitorMode.MANUAL) { - SettingsInfoBox( - text = stringResource(R.string.settings_popup_warning_manual_mode), - type = InfoBoxType.WARNING, - action = { - TextButton(onClick = onFixMonitorMode) { - Text(stringResource(R.string.general_fix_it_action)) - } - }, - ) - } else if (anyPopupEnabled) { + if (anyPopupEnabled) { SettingsInfoBox( text = stringResource(R.string.settings_popup_info_not_in_app), ) @@ -257,7 +244,6 @@ private fun ReactionsCardPreview() = PreviewWrapper { device = device, features = device.model.features, isPro = state.isPro, - monitorMode = state.monitorMode, ) } @@ -270,6 +256,5 @@ private fun ReactionsCardNonProPreview() = PreviewWrapper { device = device, features = device.model.features, isPro = state.isPro, - monitorMode = state.monitorMode, ) } diff --git a/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewViewModel.kt b/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewViewModel.kt index e7076d02..0b0324ae 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewViewModel.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewViewModel.kt @@ -5,7 +5,6 @@ import eu.darken.capod.common.TimeSource import eu.darken.capod.common.bluetooth.BluetoothManager2 import eu.darken.capod.common.coroutine.DispatcherProvider import eu.darken.capod.common.datastore.value -import eu.darken.capod.common.datastore.valueBlocking import eu.darken.capod.common.debug.DebugSettings import eu.darken.capod.common.debug.logging.Logging.Priority.INFO import eu.darken.capod.common.debug.logging.Logging.Priority.WARN @@ -22,6 +21,7 @@ import eu.darken.capod.main.core.GeneralSettings import eu.darken.capod.main.core.MonitorMode import eu.darken.capod.main.core.PermissionTool import eu.darken.capod.monitor.core.DeviceMonitor +import eu.darken.capod.monitor.core.MonitorModeResolver import eu.darken.capod.monitor.core.PodDevice import eu.darken.capod.monitor.core.tierRank import eu.darken.capod.monitor.core.worker.MonitorControl @@ -34,12 +34,10 @@ import kotlinx.coroutines.delay import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.catch import kotlinx.coroutines.flow.channelFlow -import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.flatMapLatest import kotlinx.coroutines.flow.flowOf import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.isActive -import kotlinx.coroutines.withTimeoutOrNull import java.time.Instant import javax.inject.Inject @@ -55,6 +53,7 @@ class OverviewViewModel @Inject constructor( private val bluetoothManager: BluetoothManager2, private val profilesRepo: DeviceProfilesRepo, private val aapManager: AapConnectionManager, + private val monitorModeResolver: MonitorModeResolver, private val timeSource: TimeSource, ) : ViewModel4(dispatcherProvider) { @@ -77,29 +76,23 @@ class OverviewViewModel @Inject constructor( private val showUnmatchedDevices = MutableStateFlow(false) private val userExpansionOverrides = MutableStateFlow>(emptySet()) - val workerAutolaunch = permissionTool.missingScanPermissions - .onEach { permissions -> - if (permissions.isNotEmpty()) { - log(TAG) { "Missing scan permissions: $permissions" } + val workerAutolaunch = combine( + permissionTool.missingScanPermissions, + monitorModeResolver.effectiveMode, + bluetoothManager.connectedDevices, + ) { missing, mode, connected -> Triple(missing, mode, connected) } + .onEach { (missing, mode, connected) -> + if (missing.isNotEmpty()) { + log(TAG) { "Missing scan permissions: $missing" } return@onEach } - - val shouldStart = when (generalSettings.monitorMode.valueBlocking) { + val shouldStart = when (mode) { MonitorMode.MANUAL -> false - MonitorMode.AUTOMATIC -> { - try { - val devices = withTimeoutOrNull(5_000) { bluetoothManager.connectedDevices.first() } - devices?.isNotEmpty() == true - } catch (e: SecurityException) { - log(TAG) { "Can't check connected devices without BLUETOOTH_CONNECT: ${e.message}" } - false - } - } - + MonitorMode.AUTOMATIC -> connected.isNotEmpty() MonitorMode.ALWAYS -> true } if (shouldStart) { - log(TAG) { "Starting monitor" } + log(TAG) { "Starting monitor (mode=$mode)" } monitorControl.startMonitor() } } diff --git a/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsScreen.kt b/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsScreen.kt index 4b806c9c..04dbda03 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsScreen.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsScreen.kt @@ -1,44 +1,32 @@ package eu.darken.capod.main.ui.settings.general import android.os.Build -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Row -import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.LazyColumn -import androidx.compose.foundation.selection.selectable -import androidx.compose.foundation.selection.selectableGroup import androidx.compose.material.icons.Icons import androidx.compose.material.icons.automirrored.twotone.ArrowBack import androidx.compose.material.icons.twotone.AccountTree import androidx.compose.material.icons.twotone.BugReport import androidx.compose.material.icons.twotone.Contrast import androidx.compose.material.icons.twotone.DarkMode -import androidx.compose.material.icons.twotone.DisabledVisible import androidx.compose.material.icons.twotone.FilterList import androidx.compose.material.icons.automirrored.twotone.Message import androidx.compose.material.icons.twotone.Notifications import androidx.compose.material.icons.twotone.Palette import androidx.compose.material.icons.automirrored.twotone.ViewList -import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.IconButton -import androidx.compose.material3.MaterialTheme -import androidx.compose.material3.RadioButton import androidx.compose.material3.Scaffold import androidx.compose.material3.Switch import androidx.compose.material3.Text -import androidx.compose.material3.TextButton import androidx.compose.material3.TopAppBar import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue -import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource -import androidx.compose.ui.semantics.Role import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import eu.darken.capod.R @@ -55,7 +43,6 @@ import eu.darken.capod.common.theming.ThemeColor import eu.darken.capod.common.theming.ThemeMode import eu.darken.capod.common.theming.ThemeState import eu.darken.capod.common.theming.ThemeStyle -import eu.darken.capod.main.core.MonitorMode @Composable fun GeneralSettingsScreenHost(vm: GeneralSettingsViewModel = hiltViewModel()) { @@ -67,7 +54,6 @@ fun GeneralSettingsScreenHost(vm: GeneralSettingsViewModel = hiltViewModel()) { GeneralSettingsScreen( state = it, onNavigateUp = { vm.navUp() }, - onMonitorModeSelected = { mode -> vm.setMonitorMode(mode) }, onShowConnectedNotificationChanged = { enabled -> vm.setShowConnectedNotification(enabled) }, onKeepNotificationAfterDisconnectChanged = { enabled -> vm.setKeepNotificationAfterDisconnect(enabled) }, onDebugSettings = { vm.goToDebugSettings() }, @@ -86,7 +72,6 @@ fun GeneralSettingsScreenHost(vm: GeneralSettingsViewModel = hiltViewModel()) { fun GeneralSettingsScreen( state: GeneralSettingsViewModel.State, onNavigateUp: () -> Unit, - onMonitorModeSelected: (MonitorMode) -> Unit, onShowConnectedNotificationChanged: (Boolean) -> Unit, onKeepNotificationAfterDisconnectChanged: (Boolean) -> Unit, onDebugSettings: () -> Unit, @@ -99,7 +84,6 @@ fun GeneralSettingsScreen( onUpgrade: () -> Unit = {}, modifier: Modifier = Modifier, ) { - var showMonitorModeDialog by remember { mutableStateOf(false) } var showColorDialog by remember { mutableStateOf(false) } val isMaterialYouActive = state.themeState.style == ThemeStyle.MATERIAL_YOU && @@ -122,17 +106,6 @@ fun GeneralSettingsScreen( }, ) { innerPadding -> LazyColumn(modifier = Modifier.padding(innerPadding)) { - item { - SettingsCategoryHeader(text = stringResource(R.string.settings_category_monitoring_label)) - } - item { - SettingsBaseItem( - title = stringResource(R.string.settings_monitor_mode_label), - subtitle = stringResource(state.monitorMode.labelRes), - icon = Icons.TwoTone.DisabledVisible, - onClick = { showMonitorModeDialog = true }, - ) - } item { SettingsCategoryHeader(text = stringResource(R.string.settings_category_appearance_label)) } @@ -286,20 +259,6 @@ fun GeneralSettingsScreen( } } - if (showMonitorModeDialog) { - ListPreferenceDialog( - title = stringResource(R.string.settings_monitor_mode_label), - entries = MonitorMode.entries, - selectedEntry = state.monitorMode, - onEntrySelected = { - onMonitorModeSelected(it) - showMonitorModeDialog = false - }, - entryLabel = { stringResource(it.labelRes) }, - onDismiss = { showMonitorModeDialog = false }, - ) - } - if (showColorDialog) { ThemeColorSelectorDialog( selectedColor = state.themeState.color, @@ -314,7 +273,6 @@ fun GeneralSettingsScreen( private fun previewGeneralState(isPro: Boolean) = GeneralSettingsViewModel.State( isPro = isPro, - monitorMode = MonitorMode.AUTOMATIC, showConnectedNotification = true, keepNotificationAfterDisconnect = false, isOffloadedFilteringDisabled = false, @@ -329,7 +287,6 @@ private fun GeneralSettingsScreenProPreview() = PreviewWrapper { GeneralSettingsScreen( state = previewGeneralState(isPro = true), onNavigateUp = {}, - onMonitorModeSelected = {}, onShowConnectedNotificationChanged = {}, onKeepNotificationAfterDisconnectChanged = {}, onDebugSettings = {}, @@ -345,7 +302,6 @@ private fun GeneralSettingsScreenNonProPreview() = PreviewWrapper { GeneralSettingsScreen( state = previewGeneralState(isPro = false), onNavigateUp = {}, - onMonitorModeSelected = {}, onShowConnectedNotificationChanged = {}, onKeepNotificationAfterDisconnectChanged = {}, onDebugSettings = {}, @@ -354,51 +310,3 @@ private fun GeneralSettingsScreenNonProPreview() = PreviewWrapper { onUseIndirectScanResultCallbackChanged = {}, ) } - -@Composable -private fun ListPreferenceDialog( - title: String, - entries: List, - selectedEntry: T, - onEntrySelected: (T) -> Unit, - entryLabel: @Composable (T) -> String, - onDismiss: () -> Unit, -) { - AlertDialog( - onDismissRequest = onDismiss, - title = { Text(text = title) }, - text = { - Column(Modifier.selectableGroup()) { - entries.forEach { entry -> - val isSelected = entry == selectedEntry - Row( - modifier = Modifier - .fillMaxWidth() - .selectable( - selected = isSelected, - onClick = { onEntrySelected(entry) }, - role = Role.RadioButton, - ) - .padding(vertical = 12.dp, horizontal = 8.dp), - verticalAlignment = Alignment.CenterVertically, - ) { - RadioButton( - selected = isSelected, - onClick = null, - ) - Text( - text = entryLabel(entry), - style = MaterialTheme.typography.bodyLarge, - modifier = Modifier.padding(start = 16.dp), - ) - } - } - } - }, - confirmButton = { - TextButton(onClick = onDismiss) { - Text(text = stringResource(android.R.string.cancel)) - } - }, - ) -} diff --git a/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsViewModel.kt b/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsViewModel.kt index 1d2560ea..44337056 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsViewModel.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/settings/general/GeneralSettingsViewModel.kt @@ -13,7 +13,6 @@ import eu.darken.capod.common.theming.ThemeStyle import eu.darken.capod.common.uix.ViewModel4 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.themeState import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.first @@ -30,7 +29,6 @@ class GeneralSettingsViewModel @Inject constructor( data class State( val isPro: Boolean, - val monitorMode: MonitorMode, val showConnectedNotification: Boolean, val keepNotificationAfterDisconnect: Boolean, val isOffloadedFilteringDisabled: Boolean, @@ -43,12 +41,11 @@ class GeneralSettingsViewModel @Inject constructor( val state = combine( combine( - generalSettings.monitorMode.flow, generalSettings.useExtraMonitorNotification.flow, generalSettings.keepConnectedNotificationAfterDisconnect.flow, - ) { monitorMode, showNotif, keepNotif -> + ) { showNotif, keepNotif -> @Suppress("USELESS_CAST") - arrayOf(monitorMode as Any, showNotif as Any, keepNotif as Any) + arrayOf(showNotif as Any, keepNotif as Any) }, combine( generalSettings.isOffloadedFilteringDisabled.flow, @@ -63,9 +60,8 @@ class GeneralSettingsViewModel @Inject constructor( ) { general, compat, themeState, isPro -> State( isPro = isPro, - monitorMode = general[0] as MonitorMode, - showConnectedNotification = general[1] as Boolean, - keepNotificationAfterDisconnect = general[2] as Boolean, + showConnectedNotification = general[0] as Boolean, + keepNotificationAfterDisconnect = general[1] as Boolean, isOffloadedFilteringDisabled = compat[0] as Boolean, isOffloadedBatchingDisabled = compat[1] as Boolean, useIndirectScanResultCallback = compat[2] as Boolean, @@ -73,11 +69,6 @@ class GeneralSettingsViewModel @Inject constructor( ) }.asLiveState() - fun setMonitorMode(mode: MonitorMode) { - log(TAG, INFO) { "setMonitorMode($mode)" } - generalSettings.monitorMode.valueBlocking = mode - } - fun setShowConnectedNotification(enabled: Boolean) { log(TAG, INFO) { "setShowConnectedNotification($enabled)" } generalSettings.useExtraMonitorNotification.valueBlocking = enabled diff --git a/app/src/main/java/eu/darken/capod/monitor/core/MonitorModeResolver.kt b/app/src/main/java/eu/darken/capod/monitor/core/MonitorModeResolver.kt new file mode 100644 index 00000000..3e6e1fcd --- /dev/null +++ b/app/src/main/java/eu/darken/capod/monitor/core/MonitorModeResolver.kt @@ -0,0 +1,44 @@ +package eu.darken.capod.monitor.core + +import eu.darken.capod.common.bluetooth.NudgeAvailability +import eu.darken.capod.common.bluetooth.NudgeCapabilityStore +import eu.darken.capod.common.debug.logging.Logging.Priority.VERBOSE +import eu.darken.capod.common.debug.logging.log +import eu.darken.capod.common.debug.logging.logTag +import eu.darken.capod.main.core.MonitorMode +import eu.darken.capod.profiles.core.DeviceProfile +import eu.darken.capod.profiles.core.DeviceProfilesRepo +import eu.darken.capod.profiles.core.toReactionConfig +import kotlinx.coroutines.flow.Flow +import kotlinx.coroutines.flow.combine +import kotlinx.coroutines.flow.distinctUntilChanged +import kotlinx.coroutines.flow.onEach +import javax.inject.Inject +import javax.inject.Singleton + +@Singleton +class MonitorModeResolver @Inject constructor( + private val profilesRepo: DeviceProfilesRepo, + private val nudgeCapabilityStore: NudgeCapabilityStore, +) { + + val effectiveMode: Flow = combine( + profilesRepo.profiles, + nudgeCapabilityStore.availability, + ) { profiles, nudge -> + val primary = profiles.firstOrNull() ?: return@combine MonitorMode.MANUAL + primary.requiredMode(nudge) + } + .distinctUntilChanged() + .onEach { log(TAG, VERBOSE) { "effectiveMode = $it" } } + + private fun DeviceProfile.requiredMode(nudge: NudgeAvailability): MonitorMode = when { + address == null -> MonitorMode.MANUAL + toReactionConfig().autoConnect && nudge != NudgeAvailability.BROKEN -> MonitorMode.ALWAYS + else -> MonitorMode.AUTOMATIC + } + + companion object { + private val TAG = logTag("Monitor", "ModeResolver") + } +} diff --git a/app/src/main/java/eu/darken/capod/monitor/core/worker/MonitorService.kt b/app/src/main/java/eu/darken/capod/monitor/core/worker/MonitorService.kt index e5cfe4a0..69f116b3 100644 --- a/app/src/main/java/eu/darken/capod/monitor/core/worker/MonitorService.kt +++ b/app/src/main/java/eu/darken/capod/monitor/core/worker/MonitorService.kt @@ -30,6 +30,7 @@ import eu.darken.capod.main.core.MonitorMode import eu.darken.capod.main.core.PermissionTool import eu.darken.capod.monitor.core.DeviceMonitor import eu.darken.capod.monitor.core.MonitorCoroutineScope +import eu.darken.capod.monitor.core.MonitorModeResolver import eu.darken.capod.monitor.core.PodDevice import eu.darken.capod.monitor.core.ble.BlePodMonitor import eu.darken.capod.monitor.core.primaryDevice @@ -81,6 +82,7 @@ class MonitorService : Service() { @Inject lateinit var popUpWindow: PopUpWindow @Inject lateinit var profilesRepo: DeviceProfilesRepo @Inject lateinit var aapConnectionManager: AapConnectionManager + @Inject lateinit var monitorModeResolver: MonitorModeResolver private val monitorScope = MonitorCoroutineScope() private var monitoringJob: Job? = null @@ -224,7 +226,7 @@ class MonitorService : Service() { emptyFlow() } else { combine( - generalSettings.monitorMode.flow, + monitorModeResolver.effectiveMode, profilesRepo.profiles, bluetoothManager.connectedDevices, aapConnectionManager.allStates, diff --git a/app/src/main/java/eu/darken/capod/reaction/core/autoconnect/AutoConnect.kt b/app/src/main/java/eu/darken/capod/reaction/core/autoconnect/AutoConnect.kt index 49b25361..d8ce7c69 100644 --- a/app/src/main/java/eu/darken/capod/reaction/core/autoconnect/AutoConnect.kt +++ b/app/src/main/java/eu/darken/capod/reaction/core/autoconnect/AutoConnect.kt @@ -1,6 +1,8 @@ package eu.darken.capod.reaction.core.autoconnect import eu.darken.capod.common.bluetooth.BluetoothManager2 +import eu.darken.capod.common.bluetooth.NudgeAvailability +import eu.darken.capod.common.bluetooth.NudgeCapabilityStore import eu.darken.capod.common.debug.logging.Logging.Priority.VERBOSE import eu.darken.capod.common.debug.logging.Logging.Priority.WARN import eu.darken.capod.common.debug.logging.log @@ -26,6 +28,7 @@ import javax.inject.Singleton class AutoConnect @Inject constructor( private val bluetoothManager: BluetoothManager2, private val deviceMonitor: DeviceMonitor, + private val nudgeCapabilityStore: NudgeCapabilityStore, ) { fun monitor(): Flow = deviceMonitor.primaryDevice() @@ -98,13 +101,14 @@ class AutoConnect @Inject constructor( return@map } - if (!bluetoothManager.isNudgeAvailable) { - log(TAG, WARN) { "nudgeConnection is not available on this device, skipping" } + if (nudgeCapabilityStore.availability.value == NudgeAvailability.BROKEN) { + log(TAG, WARN) { "nudgeConnection is known broken on this device, skipping" } return@map } val result = bluetoothManager.nudgeConnection(bondedDevice) log(TAG) { "nudgeConnection($bondedDevice) returned $result" } + nudgeCapabilityStore.record(result) } .setupCommonEventHandlers(TAG) { "monitor" } diff --git a/app/src/main/res/values-af-rZA/strings.xml b/app/src/main/res/values-af-rZA/strings.xml index 2fd80cbd..de7b461f 100644 --- a/app/src/main/res/values-af-rZA/strings.xml +++ b/app/src/main/res/values-af-rZA/strings.xml @@ -40,8 +40,6 @@ As u onlangs gekoop het, kan dit \'n oomblik neem vir Google Play om te sinkroniseer. Probeer weer oor \'n paar minute as u aankoop nie verskyn nie. Maak seker dat u met dieselfde Google-rekening aangemeld is wat vir die aankoop gebruik is. - Monitormodus - Onder watter omstandighede hierdie toepassing Bluetooth-data monitor. Ekstra kennisgewing Wys \'n ekstra kennisgewing wanneer \'n toestel gekoppel is. Dit laat jou toe om die permanente \"Geen toestelle\" kennisgewing te versteek deur die \"Toestelstatus\" kanaal te deaktiveer. Hou kennisgewing ná ontkoppeling @@ -80,8 +78,6 @@ Wys verbindingsopspringer Wys \'n opspringer wanneer die toestel vir die eerste keer koppel. Opspringvensters word slegs gewys as jy nie in die program is nie. - Opspringvensters benodig die monitor om te loop. Jou monitormodus is ingestel op \"Wanneer program oop is\", wat die monitor stop wanneer jy die program verlaat. - Herstel dit Eksperimentele kenmerk Hierdie kenmerk is nog nie op alle toestelle getoets nie. As iets nie korrek werk nie, open asseblief \'n kwessie met \'n foutopsporingsloglêer. Open Kwessiespoorder @@ -220,9 +216,6 @@ Die volgende toestemming is vereis: Stelselwaarskuwingsvenster Laat CAPod toe om oor ander toepassings te teken om die kenmerk Wys opspringer moontlik te maak. - Wanneer toepassing oop is - Wanneer toestel gekoppel is - Altyd Wanneer gesien Kassie is oop In oor @@ -322,7 +315,6 @@ Amber Gebruik muurpapierkleure - Monitering Voorkoms Ongestoorde veranderinge diff --git a/app/src/main/res/values-am/strings.xml b/app/src/main/res/values-am/strings.xml index 33e1ad2a..7286b583 100644 --- a/app/src/main/res/values-am/strings.xml +++ b/app/src/main/res/values-am/strings.xml @@ -40,8 +40,6 @@ በቅርቡ ካዘዙ፣ Google Play ለማመሳሰል ትንሽ ጊዜ ሊወስድ ይችላል። ግዢዎ ካልታየ ከጥቂት ደቂቃዎች በኋላ እንደገና ሞክር። ለግዢው ጥቅም ላይ ከዋለው ጋር ተመሳሳይ Google መለያ ተጠቅመህ ገብተሃል ወይም ብለህ አረጋግጥ። - የክትትል ሁነታ - ይህ መተግበሪያ የብሉቱዝ መረጃን የሚከታተልበት ሁኔታዎች። ተጨማሪ ማሳወቂያ አንድ መሣሪያ ሲገናኝ ተጨማሪ ማሳወቂያ ያሳያል። ይህ የ \"የመሣሪያ ሁኔታ\" ቻናልን በማሰናከል ቋሚውን \"ምንም መሣሪያዎች የሉም\" የሚለውን ማሳወቂያ እንዲደብቁ ያስችልዎታል። ከተነተቀ በኋላ ማሳወቂያውን ይያዙ @@ -80,8 +78,6 @@ የግንኙነት ብቅ-ባይ አሳይ መሳሪያው ለመጀመሪያ ጊዜ ሲገናኝ ብቅ-ባይ አሳይ። ፖፕ-አፕ መልዕክቶች በፕሮግራሙ ውስጥ ሳታሉ ብቻ ይታያሉ። - ፖፕ-አፕ መልዕክቶች ሞኒተሩ እየሮጠ እንዲሆን ይፈልጋሉ። የሞኒተር ሁነታዎ \"ፕሮግራሙ ሲከፈት\" ተዘጋጅቷል፣ ይህም ፕሮግራሙን ሲለቁ ሞኒተሩን ያቆማል። - አስተካክለው ሙከራዊ ባህሪ ይህ ባህሪ በሁሉም መሳሪያዎች ላይ ገና አልተሞከረም። ሆኖም ካልሰራ፣ እባክዎ የዲበግ ምዝግብ ማስታወሻ ጨምረው ጉዳዩን ይክፈቱ። የጉዳይ መከታተያ ክፈት @@ -220,9 +216,6 @@ የሚከተለው ፈቃድ ያስፈልጋል: የስርዓት ማስጠንቀቂያ መስኮት \"ብቅ-ባይ አሳይ\" ባህሪውን ለማስቻል CAPod በሌሎች መተግበሪያዎች ላይ እንዲሳል ፍቀድ። - መተግበሪያው ሲከፈት - መሣሪያ ሲገናኝ - ሁልጊዜ ሲታይ ኬዝ ክፍት ነው በጆሮ ውስጥ @@ -322,7 +315,6 @@ ህብረ-ቀለማዊ የዳሰሳ ምስል ቀለሞችን ይጠቀማል - ክትትል ገጽታ ያልተቀመጡ ለውጦች diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index e6b2a3db..30f00298 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -40,8 +40,6 @@ إذا اشتريت مؤخراً، قد يستغرق Google Play لحظة للمزامنة. حاول مرة أخرى بعد بضع دقائق إذا لم يظهر شراؤك. تأكد من تسجيل دخولك بنفس حساب Google المستخدم للشراء. - وضع المراقبة - تحت أي ظروف يراقب هذا التطبيق بيانات البلوتوث. إشعار إضافي يعرض إشعارًا إضافيًا عند توصيل جهاز. يتيح لك هذا إخفاء الإشعار الدائم \"لا توجد أجهزة\" عن طريق تعطيل قناة \"حالة الجهاز\". الاحتفاظ بالإشعار بعد قطع الاتصال @@ -80,8 +78,6 @@ إظهار نافذة منبثقة للاتصال إظهار نافذة منبثقة عند اتصال الجهاز لأول مرة. تظهر النوافذ المنبثقة فقط عندما لا تكون داخل التطبيق. - تتطلب النوافذ المنبثقة تشغيل المراقب. وضع المراقبة الخاص بك مضبوط على \"عند فتح التطبيق\"، مما يوقف المراقب عند مغادرة التطبيق. - إصلاحه ميزة تجريبية لم يتم اختبار هذه الميزة على جميع الأجهزة بعد. إذا كان هناك شيء لا يعمل بشكل صحيح، يرجى فتح تقرير مشكلة مع سجل تصحيح. فتح متتبع المشكلات @@ -228,9 +224,6 @@ الإذن التالي مطلوب: نافذة تنبيه النظام السماح لـ CAPod بالرسم فوق التطبيقات الأخرى لتمكين ميزة \"إظهار النافذة المنبثقة\". - عند فتح التطبيق - عند اتصال الجهاز - دائمًا عند الرؤية العلبة مفتوحة في الأذن @@ -330,7 +323,6 @@ كهرماني يستخدم ألوان الخلفية - المراقبة المظهر تغييرات غير محفوظة diff --git a/app/src/main/res/values-az/strings.xml b/app/src/main/res/values-az/strings.xml index e9833f7f..ffb26373 100644 --- a/app/src/main/res/values-az/strings.xml +++ b/app/src/main/res/values-az/strings.xml @@ -40,8 +40,6 @@ Əgər bu yaxınlarda satın almısınızsa, Google Play-in sinxronlaşması bir az vaxt ala bilər. Alışınız görünmürsə bir neçə dəqiqədən sonra yenidən cəhd edin. Alış üçün istifadə edilmiş eyni Google hesabı ilə daxil olduğunuzu yoxlayın. - İzləmə rejimi - Bu tətbiqin Bluetooth məlumatlarını hansı şəraitdə izlədiyi. Əlavə bildiriş Cihaz qoşulduqda əlavə bildiriş göstərir. Bu, \"Cihaz statusu\" kanalını deaktiv etməklə daimi \"Cihaz yoxdur\" bildirişini gizlətməyə imkan verir. Ayrıldıqdan sonra bildirişi saxla @@ -80,8 +78,6 @@ Qoşulma pop-up-ını göstər Cihaz ilk dəfə qoşulduqda pop-up göstər. Açılan pəncərələr yalnız tətbiqdə olmadığınız zaman göstərilir. - Açılan pəncərələr monitorun işləməsini tələb edir. Monitor rejiminizdə \"Tətbiq açıq olduqda\" seçilmişdir — bu, tətbiqdən çıxdığınız zaman monitoru dayandırır. - Düzəlt Eksperimental funksiya Bu funksiya hələ bütün cihazlarda sınaqdan keçirilməyib. Bir şey düzgün işləmirsə, debug loqu ilə problem bildirin. Problem İzləyicisini Aç @@ -220,9 +216,6 @@ Aşağıdakı icazə tələb olunur: Sistem xəbərdarlıq pəncərəsi \"Pop-up göstər\" xüsusiyyətini mümkün etmək üçün CAPod-a digər tətbiqlərin üzərində çəkməyə icazə verin. - Tətbiq açıq olduqda - Cihaz qoşulduqda - Həmişə Görüldüyündə Qutu açıqdır Qulaqda @@ -322,7 +315,6 @@ Kəhrəba Divar kăğizi rənglərini istifadə edir - Monitorinq Görünüş Saxlanmamış dəyişikliklər diff --git a/app/src/main/res/values-be/strings.xml b/app/src/main/res/values-be/strings.xml index 23d72e1d..c558cd0d 100644 --- a/app/src/main/res/values-be/strings.xml +++ b/app/src/main/res/values-be/strings.xml @@ -40,8 +40,6 @@ Калі вы нядаўна зрабілі пакупку, Google Play можа спатрэбіцца некаторы час для сінхранізацыі. Паспрабуйце яшчэ раз праз некалькі хвілін, калі ваша пакупка не з\'яўляецца. Пераканайцеся, што вы ўвайшлі ў той самы акаўнт Google, які быў выкарыстаны для пакупкі. - Рэжым маніторынгу - Пры якіх абставінах гэта праграма сочыць за данымі Bluetooth. Дадатковае апавяшчэнне Паказвае дадатковае апавяшчэнне пры падключэнні прылады. Гэта дазваляе схаваць пастаяннае апавяшчэнне \"Няма прылад\" шляхам адключэння канала \"Стан прылады\". Захаваць апавяшчэнне пасля адключэння @@ -80,8 +78,6 @@ Паказаць усплывальнае акно падключэння Паказваць усплывальнае акно пры першым падключэнні прылады. Усплывальныя вокны паказваюцца толькі тады, калі вы не знаходзіцеся ў прыкладанні. - Усплывальныя вокны патрабуюць працы манітора. Рэжым манітора ўсталяваны на «Калі прыкладанне адкрыта», які спыняе маніторынг пры выхадзе з прыкладання. - Выправіць Эксперыментальная функцыя Гэта функцыя яшчэ не была праверана на ўсіх прыладах. Калі нешта не працуе правільна, калі ласка, стварыце запыт з журналам адладкі. Адкрыць трэкер задач @@ -224,9 +220,6 @@ Патрабуецца наступны дазвол: Сістэмнае акно папярэджання Дазвольце CAPod маляваць паверх іншых праграм, каб зрабіць магчымай функцыю \"Паказаць усплывальнае акно\". - Калі праграма адкрыта - Калі прылада падключана - Заўсёды Калі бачна Корпус адкрыты У вуху @@ -326,7 +319,6 @@ Бурштынавы Выкарыстоўвае колеры шпалеры - Маніторынг Знешні выгляд Незахаваныя змены diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml index f0a83bde..126b2af7 100644 --- a/app/src/main/res/values-bg/strings.xml +++ b/app/src/main/res/values-bg/strings.xml @@ -40,8 +40,6 @@ Ако наскоро сте направили покупка, може да отнеме малко, докато Google Play синхронизира. Опитайте отново след няколко минути, ако покупката ви не се появи. Уверете се, че сте влезли с акаунта в Google, използван за покупката. - Режим на наблюдение - При какви обстоятелства това приложение следи Bluetooth данните. Допълнително известие Показва допълнително известие, когато устройство е свързано. Това ви позволява да скриете постоянното известие \"Няма устройства\" чрез деактивиране на канала \"Състояние на устройството\". Запази известието след прекъсване @@ -80,8 +78,6 @@ Показване на изскачащ прозорец за връзка Показване на изскачащ прозорец, когато устройството се свърже за първи път. Изскачащите прозорци се показват само когато не сте в приложението. - Изскачащите прозорци изискват мониторът да работи. Режимът на монитора е зададен на „Когато приложението е отворено“, което спира монитора, когато напуснете приложението. - Поправи го Експериментална функция Тази функция все още не е тествана на всички устройства. Ако нещо не работи правилно, моля отворете проблем с дневник за отстраняване на грешки. Отвори проследявач на проблеми @@ -220,9 +216,6 @@ Необходимо е следното разрешение: Системен изскачащ прозорец Позволете на CAPod да рисува върху други приложения, за да направи функцията \"Покажи изскачащ прозорец\" възможна. - Когато приложението е отворено - Когато устройството е свързано - Винаги Когато е видяно Калъфът е отворен В ухото @@ -322,7 +315,6 @@ Къхъленожълт Използва цветовете на тапета - Мониторинг Изглед Незапазени промени diff --git a/app/src/main/res/values-bn-rBD/strings.xml b/app/src/main/res/values-bn-rBD/strings.xml index 54641a76..4562272f 100644 --- a/app/src/main/res/values-bn-rBD/strings.xml +++ b/app/src/main/res/values-bn-rBD/strings.xml @@ -40,8 +40,6 @@ আপনি সম্প্রতি কিনে থাকলে, Google Play সিঙ্ক করতে কিছু সময় লাগতে পারে। কয়েক মিনিট পরে আবার চেষ্টা করুন যদি আপনার ক্রয় না দেখায়। নিশ্চিত করুন যে আপনি ক্রয়ের জন্য ব্যবহৃত একই Google অ্যাকাউন্ট দিয়ে সাইন ইন করেছেন। - মনিটর মোড - এই অ্যাপটি কোন পরিস্থিতিতে ব্লুটুথ ডেটা পর্যবেক্ষণ করবে। অতিরিক্ত বিজ্ঞপ্তি একটি ডিভাইস সংযুক্ত হলে একটি অতিরিক্ত বিজ্ঞপ্তি দেখায়। এটি আপনাকে \"ডিভাইস স্ট্যাটাস\" চ্যানেল নিষ্ক্রিয় করে স্থায়ী \"কোনো ডিভাইস নেই\" বিজ্ঞপ্তি লুকাতে দেয়। সংযোগ বিচ্ছিন্নের পরে বিজ্ঞপ্তি রাখুন @@ -80,8 +78,6 @@ সংযোগ পপআপ দেখান ডিভাইস প্রথমবার সংযুক্ত হলে একটি পপআপ দেখান। পপআপগুলি শুধুমাত্র তখনই দেখানো হয় যখন আপনি অ্যাপে থাকেন না। - পপআপের জন্য মনিটর চালু থাকা প্রয়োজন। আপনার মনিটর মোড \"যখন অ্যাপ খোলা থাকে\" তে সেট করা আছে, যা আপনি অ্যাপ ছেড়ে গেলে মনিটর বন্ধ করে দেয়। - ঠিক করুন পরীক্ষামূলক ফিচার এই ফিচারটি এখনো সব ডিভাইসে পরীক্ষা করা হয়নি। যদি কিছু সঠিকভাবে কাজ না করে, দয়া করে একটি ডিবাগ লগ সহ একটি ইস্যু খুলুন। ইস্যু ট্র্যাকার খুলুন @@ -220,9 +216,6 @@ নিম্নলিখিত অনুমতি প্রয়োজন: সিস্টেম অ্যালার্ট উইন্ডো \"পপআপ দেখান\" বৈশিষ্ট্যটি সম্ভব করতে CAPod-কে অন্যান্য অ্যাপের উপরে আঁকতে অনুমতি দিন। - অ্যাপ খোলা থাকলে - ডিভাইস সংযুক্ত থাকলে - সর্বদা দেখা গেলে কেস খোলা কানে @@ -322,7 +315,6 @@ অ্যাম্বার ওয়ালপেপার রঙ ব্যবহার করে - মনিটরিং উপস্থিতি অসংরক্ষিত পরিবর্তন diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index f03acbba..234e025a 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -40,8 +40,6 @@ Si heu comprat alguna cosa recentment, és possible que el Google Play trigui una estona a sincronitzar-se. Torneu-ho a provar en uns minuts si la vostra compra no apareix. Assegureu-vos d\'haver iniciat la sessió amb el mateix compte de Google que heu utilitzat per a la compra. - Mode monitor - En quines circumstàncies aquesta aplicació supervisa les dades Bluetooth. Notificació addicional Mostra una notificació addicional quan hi ha un dispositiu connectat. Això permet ocultar la notificació permanent «Sense dispositius» desactivant el canal «Estat del dispositiu». Mantén les notificacions després de la desconnexió @@ -80,8 +78,6 @@ Mostra la finestra emergent de connexió Mostra una finestra emergent quan el dispositiu es connecti per primera vegada. Les finestres emergents només es mostren quan no esteu a l\'aplicació. - Les finestres emergents requereixen que el monitor estigui en execució. El mode del monitor està configurat com a «quan l\'aplicació és oberta», que atura el monitor quan sortiu de l\'aplicació. - Corregeix-ho Funció experimental Aquesta funció encara no s\'ha provat a tots els dispositius. Si alguna cosa no funciona correctament, obriu una incidència amb un registre de depuració. Obre el seguidor d\'incidències @@ -220,9 +216,6 @@ Cal el permís següent: Finestra d\'alerta del sistema Permet que el CAPod dibuixi sobre altres aplicacions per fer possible la característica «Mostra emergent». - Quan l\'aplicació està oberta - Quan el dispositiu està connectat - Sempre Quan es veu La funda està oberta A l\'orella @@ -322,7 +315,6 @@ Ambre Utilitza els colors del fons de pantalla - Monitoratge Aparença Canvis no desats diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 986e7a05..1ead7a1d 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -40,8 +40,6 @@ Pokud jste produkt zakoupili nedávno, synchronizace Google Play může chvíli trvat. Pokud se váš nákup nezobrazí, zkuste to znovu za několik minut. Ujistěte se, že jste přihlášeni ke stejnému účtu Google, který jste použili při nákupu. - Režim monitorování - Za jakých okolností tato aplikace monitoruje data Bluetooth. Dodatečné oznámení Zobrazí dodatečné oznámení, když je zařízení připojeno. To umožňuje skrýt trvalé oznámení \"Žádné zařízení\" vypnutím kanálu \"Stav zařízení\". Uchovat oznámení po odpojení @@ -80,8 +78,6 @@ Zobrazit vyskakovací okno při připojení Zobrazit vyskakovací okno při prvním připojení zařízení. Vyskakovací okna jsou zobrazována pouze tehdy, když nejste v aplikaci. - Vyskakovací okna vyžadují, aby monitor běžel. Váš režim monitoru je nastaven na \"Když je aplikace otevřena\", což zastaví monitor, když aplikaci opustíte. - Opravit Experimentální funkce Tato funkce ještě nebyla testována na všech zařízeních. Pokud něco nefunguje správně, nahlaste problém s logem ladění. Otevřít sledovač problémů @@ -224,9 +220,6 @@ Je vyžadováno následující oprávnění: Okno systémových upozornění Aby bylo možné použít unkci \"Zobrazit vyskakovací okno\", je nutné umožnit aplikaci CAPod vykreslení přes jiné aplikace. - Při otevření aplikace - Při připojení zařízení - Vždy Když je vidět Pouzdro je otevřeno V uchu @@ -326,7 +319,6 @@ Jantarová Používá barvy tapety - Monitorování Vzhled Neuložené změny diff --git a/app/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml index 68966d2d..72e58aff 100644 --- a/app/src/main/res/values-da/strings.xml +++ b/app/src/main/res/values-da/strings.xml @@ -40,8 +40,6 @@ Hvis du for nylig har købt, kan det tage et øjeblik for Google Play at synkronisere. Prøv igen om et par minutter, hvis dit køb ikke vises. Sørg for, at du er logget ind med den samme Google-konto, der blev brugt til købet. - Overvågningstilstand - Under hvilke omstændigheder denne app overvåger Bluetooth-data. Ekstra notifikation Viser en ekstra notifikation, når en enhed er tilsluttet. Dette lader dig skjule den permanente \"Ingen enheder\"-notifikation ved at deaktivere \"Enhedsstatus\"-kanalen. Behold notifikation efter afbrydelse @@ -80,8 +78,6 @@ Vis forbindelses-pop op Vis en pop op, når enheden tilsluttes for første gang. Pop-ups vises kun, når du ikke er i appen. - Pop-ups kræver, at monitoren kører. Din monitortilstand er indstillet til \"Når appen er åben\", som stopper monitoren, når du forlader appen. - Ret det Eksperimentel funktion Denne funktion er endnu ikke testet på alle enheder. Hvis noget ikke fungerer korrekt, bedes du åbne en sag med en fejlretningslog. Åbn fejlsporer @@ -220,9 +216,6 @@ Følgende tilladelse er påkrævet: Systemalarmvindue Tillad CAPod at tegne over andre apps for at gøre funktionen \"Vis pop op\" mulig. - Når appen er åben - Når enheden er tilsluttet - Altid Når den ses Etui er åbent I øret @@ -322,7 +315,6 @@ Rav Bruger tapetkfarver - Overvågning Udseende Ikke-gemte ændringer diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 93e270f6..aaf2df08 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -40,8 +40,6 @@ Wenn du kürzlich gekauft hast, kann es einen Moment dauern, bis Google Play synchronisiert. Versuche es in wenigen Minuten erneut, falls dein Kauf nicht erscheint. Stelle sicher, dass du mit demselben Google-Konto angemeldet bist, das für den Kauf verwendet wurde. - Überwachungsmodus - Unter welchen Umständen überwacht diese App Bluetooth-Daten. Zusätzliche Benachrichtigung Zeigt eine zusätzliche Benachrichtigung an, wenn ein Gerät verbunden ist. Dadurch kannst du die permanente Benachrichtigung „Keine Geräte“ ausblenden, indem du den Kanal „Gerätestatus“ deaktivierst. Benachrichtigung nach Trennung beibehalten @@ -80,8 +78,6 @@ Verbindungs-Popup anzeigen Zeigt ein Popup an, wenn das Gerät zum ersten Mal eine Verbindung herstellt. Popups werden nur angezeigt, wenn du nicht in der App bist. - Popups erfordern, dass der Monitor läuft. Dein Monitor-Modus ist auf \"Wenn App geöffnet\" eingestellt, was den Monitor stoppt, wenn du die App verlässt. - Beheben Experimentelle Funktion Diese Funktion wurde noch nicht auf allen Geräten getestet. Wenn etwas nicht korrekt funktioniert, öffne bitte ein Issue mit einem Debug-Log. Issue-Tracker öffnen @@ -220,9 +216,6 @@ Die folgende Genehmigung ist erforderlich: Systemwarnungsfenster Erlaube CAPod, PopUp Benachrichtigungen über anderen Apps anzuzeigen. - Wenn die App geöffnet ist - Wenn das Gerät verbunden ist - Immer Wann gesehen Ladecase ist offen Im Ohr @@ -322,7 +315,6 @@ Bernstein Verwendet Hintergrundbildfarben - Überwachung Erscheinungsbild Nicht gespeicherte Änderungen diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 851fdf52..02d2c1d3 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -40,8 +40,6 @@ Εάν έχετε αγοράσει πρόσφατα, ενδέχεται να χρειαστεί λίγος χρόνος για συγχρονισμό με το Google Play. Δοκιμάστε ξανά σε λίγα λεπτά αν η αγορά σας δεν εμφανιστεί. Βεβαιωθείτε ότι έχετε συνδεθεί με τον ίδιο λογαριασμό Google που χρησιμοποιήσατε για την αγορά. - Λειτουργία παρακολούθησης - Υπό ποιες συνθήκες αυτή η εφαρμογή παρακολουθεί δεδομένα Bluetooth. Επιπλέον ειδοποίηση Εμφανίζει μια επιπλέον ειδοποίηση όταν μια συσκευή είναι συνδεδεμένη. Αυτό σας επιτρέπει να αποκρύψετε τη μόνιμη ειδοποίηση \"Δεν υπάρχουν συσκευές\" απενεργοποιώντας το κανάλι \"Κατάσταση συσκευής\". Διατήρηση ειδοποίησης μετά την αποσύνδεση @@ -80,8 +78,6 @@ Εμφάνιση αναδυόμενου παραθύρου σύνδεσης Εμφάνιση αναδυόμενου παραθύρου όταν η συσκευή συνδέεται για πρώτη φορά. Τα αναδυόμενα παράθυρα εμφανίζονται μόνο όταν δεν βρίσκεστε στην εφαρμογή. - Τα αναδυόμενα παράθυρα απαιτούν η παρακολούθηση να εκτελείται. Η λειτουργία παρακολούθησης έχει οριστεί σε «Όταν η εφαρμογή είναι ανοιχτή», η οποία διακόπτει την παρακολούθηση όταν φεύγετε από την εφαρμογή. - Διόρθωση Πειραματική λειτουργία Αυτή η λειτουργία δεν έχει δοκιμαστεί ακόμα σε όλες τις συσκευές. Αν κάτι δεν λειτουργεί σωστά, παρακαλώ ανοίξτε ένα ζήτημα με ένα αρχείο καταγραφής εντοπισμού σφαλμάτων. Άνοιγμα Παρακολούθησης Ζητημάτων @@ -220,9 +216,6 @@ Απαιτείται η ακόλουθη άδεια: Παράθυρο ειδοποίησης συστήματος Επιτρέψτε στο CAPod να σχεδιάζει πάνω από άλλες εφαρμογές για να καταστεί δυνατή η λειτουργία \"Εμφάνιση αναδυόμενου\". - Όταν η εφαρμογή είναι ανοιχτή - Όταν η συσκευή είναι συνδεδεμένη - Πάντα Όταν εντοπιστεί Η θήκη είναι ανοιχτή Στο αυτί @@ -322,7 +315,6 @@ Κεχριμπάρι Χρησιμοποιεί χρώματα ταπετσαρίας - Παρακολούθηση Εμφάνιση Μη αποθηκευμένες αλλαγές diff --git a/app/src/main/res/values-es-rAR/strings.xml b/app/src/main/res/values-es-rAR/strings.xml index 5a87bbf9..5381674a 100644 --- a/app/src/main/res/values-es-rAR/strings.xml +++ b/app/src/main/res/values-es-rAR/strings.xml @@ -40,8 +40,6 @@ Si compraste recientemente, puede demorar un momento para que Google Play sincronice. Intentá de nuevo en unos minutos si tu compra no aparece. Asegurate de haber iniciado sesión con la misma cuenta de Google usada para la compra. - Modo monitor - Bajo qué circunstancias esta app monitorea los datos de Bluetooth. Notificación extra Muestra una notificación extra cuando un dispositivo está conectado. Esto te permite ocultar la notificación permanente \"Sin dispositivos\" desactivando el canal \"Estado del dispositivo\". Mantener la notificación después de la desconexión @@ -80,8 +78,6 @@ Mostrar pop-up de conexión Mostrar un pop-up cuando el dispositivo se conecta por primera vez. Los popups solo se muestran cuando no estás en la app. - Los popups requieren que el monitor esté en ejecución. El modo de monitor está configurado como \"Cuando la app está abierta\", lo que detiene el monitor cuando salís de la app. - Corregirlo Función experimental Esta función aún no se ha probado en todos los dispositivos. Si algo no funciona correctamente, por favor abrí un problema con un registro de depuración. Abrir seguimiento de problemas @@ -220,9 +216,6 @@ Se requiere el siguiente permiso: Ventana emergente Permite que CAPod se superponga a otras aplicaciones para que la función «Mostrar ventana emergente». - Cuando la aplicación está abierta - Cuando el dispositivo está conectado - Siempre Cuando está visible El estuche está abierto En el oído @@ -322,7 +315,6 @@ Ámbar Usa los colores del fondo de pantalla - Monitoreo Apariencia Cambios sin guardar diff --git a/app/src/main/res/values-es-rMX/strings.xml b/app/src/main/res/values-es-rMX/strings.xml index 8cee7d52..ee78f415 100644 --- a/app/src/main/res/values-es-rMX/strings.xml +++ b/app/src/main/res/values-es-rMX/strings.xml @@ -40,8 +40,6 @@ Si has comprado recientemente, puede tardar un momento para que Google Play sincronice. Intenta de nuevo en unos minutos si tu compra no aparece. Asegúrate de haber iniciado sesión con la misma cuenta de Google utilizada para la compra. - Modo monitor - Bajo qué circunstancias esta aplicación monitorea los datos de Bluetooth. Notificación adicional Muestra una notificación adicional cuando un dispositivo está conectado. Esto te permite ocultar la notificación permanente \"Sin dispositivos\" desactivando el canal \"Estado del dispositivo\". Mantener la notificación después de la desconexión @@ -80,8 +78,6 @@ Mostrar pop-up de conexión Mostrar un pop-up cuando el dispositivo se conecta por primera vez. Las ventanas emergentes solo se muestran cuando no estás en la aplicación. - Las ventanas emergentes requieren que el monitor esté en ejecución. Tu modo de monitor está configurado en \"Cuando la aplicación está abierta\", lo que detiene el monitor cuando sales de la aplicación. - Corregir Función experimental Esta función aún no ha sido probada en todos los dispositivos. Si algo no funciona correctamente, por favor abre un problema con un registro de depuración. Abrir rastreador de problemas @@ -220,9 +216,6 @@ Se requiere el siguiente permiso: Ventana emergente Permite que CAPod se superponga a otras aplicaciones para que la función «Mostrar ventana emergente». - Cuando la aplicación está abierta - Cuando el dispositivo está conectado - Siempre Cuando está visible El estuche está abierto En el oído @@ -322,7 +315,6 @@ Ámbar Usa los colores del fondo de pantalla - Monitoreo Apariencia Cambios sin guardar diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index bac14caf..beaa3828 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -40,8 +40,6 @@ Si has comprado recientemente, puede tardar un momento para que Google Play sincronice. Inténtalo de nuevo en unos minutos si tu compra no aparece. Asegúrate de haber iniciado sesión con la misma cuenta de Google utilizada para la compra. - Modo monitor - Bajo qué circunstancias esta aplicación supervisa los datos de Bluetooth. Notificación adicional Muestra una notificación adicional cuando un dispositivo está conectado. Esto le permite ocultar la notificación permanente \"Sin dispositivos\" deshabilitando el canal \"Estado del dispositivo\". Mantener la notificación después de la desconexión @@ -80,8 +78,6 @@ Mostrar ventana emergente de conexión Mostrar una ventana emergente cuando el dispositivo se conecta por primera vez. Los popups solo se muestran cuando no estás en la aplicación. - Los popups requieren que el monitor esté en ejecución. El modo de monitor está configurado en \"Cuando la app está abierta\", lo que detiene el monitor cuando sales de la aplicación. - Corregirlo Función experimental Esta función aún no se ha probado en todos los dispositivos. Si algo no funciona correctamente, por favor abre una incidencia con un registro de depuración. Abrir rastreador de incidencias @@ -220,9 +216,6 @@ Se requiere el siguiente permiso: Ventana emergente Permite que CAPod se superponga a otras aplicaciones para que la función «Mostrar ventana emergente». - Cuando la aplicación está abierta - Cuando el dispositivo está conectado - Siempre Cuando está visible El estuche está abierto En el oído @@ -322,7 +315,6 @@ Ámbar Usa colores del fondo de pantalla - Monitorización Apariencia Cambios sin guardar diff --git a/app/src/main/res/values-et-rEE/strings.xml b/app/src/main/res/values-et-rEE/strings.xml index 47fd4b70..809c09ad 100644 --- a/app/src/main/res/values-et-rEE/strings.xml +++ b/app/src/main/res/values-et-rEE/strings.xml @@ -40,8 +40,6 @@ Kui olete hiljuti ostnud, võib Google Playl kuluda ajakohastamiseks hetk. Proovige mõne minuti pärast uuesti, kui teie ost ei ilmu. Veenduge, et olete sisse logitud sama Google\'i kontoga, mida kasutasite ostu sooritamiseks. - Jälgimisrežiim - Mis olukordades jälgib see rakendus Bluetooth andmeid. Lisateavitus Kuvab seadme ühendumisel lisateavituse. See peidab pidevalt nähtava „Seadmed puuduvad“ teate, selleks keelates „Seadme olek“ kanali. Kuva teadet ka pärast eemaldamist @@ -80,8 +78,6 @@ Näita ühenduse hüpikakent Näita seadme esmaühendumisel hüpikakent. Hüpikaknad kuvatakse ainult siis, kui sa pole rakenduses. - Hüpikaknad nõuavad monitori töötamist. Monitori režiim on seatud „Kui rakendus on avatud“, mis peatab monitori, kui rakendusest lahkud. - Paranda Katsetamisel Seda pole kõigil seadmetel veel katsetatud. Kui midagi ei toimi õigesti, avage probleem koos silumislogi failiga. Ava probleemide jälgija @@ -220,9 +216,6 @@ Vaja on järgmist luba: Süsteemi teate aken Luba CAPodil toimetada teiste rakenduste kohal, et näha hüpikaknaid. - Kui rakendus on avatud - Kui seade on ühendatud - Alati Kui nähtaval Kaas on avatud Kõrvas @@ -322,7 +315,6 @@ Merevaik Kasutab taustapildi värve - Jälgimine Välimus Salvestamata muudatused diff --git a/app/src/main/res/values-eu-rES/strings.xml b/app/src/main/res/values-eu-rES/strings.xml index bf905c58..a1d02941 100644 --- a/app/src/main/res/values-eu-rES/strings.xml +++ b/app/src/main/res/values-eu-rES/strings.xml @@ -40,8 +40,6 @@ Duela gutxi erosi baduzu, baliteke Google Play-k sinkronizatzeko une bat behar izatea. Saiatu berriro minutu batzuen buruan zure erosketa agertzen ez bada. Ziurtatu erosketan erabilitako Google kontu berarekin saioa hasita daudela. - Monitorizazio modua - Zein egoeratan monitorizatzen ditu aplikazio honek Bluetooth datuak. Jakinarazpen gehigarria Gailu bat konektatuta dagoenean jakinarazpen gehigarri bat erakusten du. Honek \"Gailurik ez\" jakinarazpen iraunkorra ezkutatzeko aukera ematen dizu \"Gailuaren egoera\" kanala desgaituz. Mantendu jakinarazpena deskonektatu ondoren @@ -80,8 +78,6 @@ Erakutsi konexioaren pop-up-a Erakutsi pop-up bat gailua lehen aldiz konektatzen denean. Leiho gainerakorrak soilik erakusten dira aplikazioan ez zaudenerako. - Leiho gainerakorrek monitorea martxan egotea behar dute. Zure monitor modua \"Aplikazioa irekita dagoenean\" ezarrita dago, eta horrek monitorea gelditzen du aplikaziotik irteten zarenean. - Konpondu Funtzio esperimentala Funtzio hau oraindik ez da gailu guztietan probatu. Zerbait ondo funtzionatzen ez badu, mesedez ireki arazo bat arazketa-erregistroarekin. Ireki arazo-jarraipena @@ -220,9 +216,6 @@ Hurrengo baimena beharrezkoa da: Sistemaren alerta-leihoa Baimendu CAPod-i beste aplikazioen gainean marraztea \"Erakutsi pop-up-a\" ezaugarria posible egiteko. - Aplikazioa irekita dagoenean - Gailua konektatuta dagoenean - Beti Ikusten denean Kaxa irekita dago Belarrian @@ -322,7 +315,6 @@ Anbarra Horma-papereko koloreak erabiltzen ditu - Monitorizazioa Itxura Gorde gabeko aldaketak diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml index d82a40d0..97e346ed 100644 --- a/app/src/main/res/values-fa/strings.xml +++ b/app/src/main/res/values-fa/strings.xml @@ -40,8 +40,6 @@ اگر اخیراً خرید کرده‌اید، ممکن است چند لحظه طول بکشد تا Google Play همگام‌سازی شود. اگر خرید شما نمایش داده نشد، چند دقیقه دیگر دوباره امتحان کنید. مطمئن شوید با همان حساب Google که برای خرید استفاده کردید وارد شده‌اید. - حالت نظارت - این برنامه تحت چه شرایطی داده‌های بلوتوث را نظارت می‌کند. اعلان اضافی هنگامی که یک دستگاه متصل است، یک اعلان اضافی نشان می‌دهد. این به شما امکان می‌دهد اعلان دائمی \"بدون دستگاه\" را با غیرفعال کردن کانال \"وضعیت دستگاه\" پنهان کنید. حفظ اعلان پس از قطع اتصال @@ -80,8 +78,6 @@ نمایش پاپ‌آپ اتصال هنگام اتصال دستگاه برای اولین بار، یک پاپ‌آپ نشان داده شود. پنجره‌های بازشو فقط زمانی نشان داده می‌شوند که در برنامه نباشید. - پنجره‌های بازشو نیاز دارند که مانیتور در حال اجرا باشد. حالت مانیتور شما روی «وقتی برنامه باز است» تنظیم شده که هنگام خروج از برنامه، مانیتور را متوقف می‌کند. - رفع مشکل ویژگی آزمایشی این ویژگی هنوز روی همه دستگاه‌ها آزمایش نشده است. اگر چیزی درست کار نمی‌کند، لطفاً یک گزارش خطا با لاگ دیباگ باز کنید. باز کردن ردیاب مشکلات @@ -220,9 +216,6 @@ مجوز زیر مورد نیاز است: پنجره هشدار سیستم به CAPod اجازه دهید روی سایر برنامه‌ها نمایش دهد تا ویژگی \"نمایش پاپ‌آپ\" ممکن شود. - وقتی برنامه باز است - وقتی دستگاه متصل است - همیشه وقتی دیده شود کیس باز است در گوش @@ -322,7 +315,6 @@ کهربی از رنگ‌های تصویر پس‌زمینه استفاده می‌کند - پایش ظاهر تغییرات ذخیره‌نشده diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index f919b2e6..fb880e9a 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -40,8 +40,6 @@ Jos olet hiljattain ostanut, Google Playn synkronointi saattaa kestää hetken. Yritä uudelleen muutaman minuutin kuluttua, jos ostoksesi ei näy. Varmista, että olet kirjautunut sisään samalla Google-tilillä, jolla teit ostoksen. - Valvontatila - Missä olosuhteissa tämä sovellus valvoo Bluetooth-tietoja. Lisäilmoitus Näyttää lisäilmoituksen, kun laite on yhdistetty. Tämä antaa sinun piilottaa pysyvän \"Ei laitteita\" -ilmoituksen poistamalla \"Laitteen tila\" -kanavan käytöstä. Säilytä ilmoitus yhteyden katkaisun jälkeen @@ -80,8 +78,6 @@ Näytä yhteyden ponnahdusikkuna Näytä ponnahdusikkuna, kun laite yhdistetään ensimmäisen kerran. Ponnahdusikkunat näytetään vain, kun et ole sovelluksessa. - Ponnahdusikkunat vaativat monitorin toimiakseen. Monitorintilaksesi on asetettu \"Kun sovellus on auki\", joka pysäyttää monitorin, kun poistut sovelluksesta. - Korjaa se Kokeellinen ominaisuus Tätä ominaisuutta ei ole vielä testattu kaikilla laitteilla. Jos jokin ei toimi oikein, avaa ongelmaraportti virheenkorjauslokilla. Avaa ongelmaseuranta @@ -220,9 +216,6 @@ Seuraava lupa vaaditaan: Järjestelmän hälytysikkuna Salli CAPod-sovelluksen piirtää muiden sovellusten päälle mahdollistaakseen \"Näytä ponnahdusikkuna\" -ominaisuuden. - Kun sovellus on auki - Kun laite on yhdistetty - Aina Kun havaitaan Kotelo on auki Korvassa @@ -322,7 +315,6 @@ Ambra Käyttää taustakuvan värejä - Valvonta Ulkoasu Tallentamattomat muutokset diff --git a/app/src/main/res/values-fil/strings.xml b/app/src/main/res/values-fil/strings.xml index 8d092124..6b368c43 100644 --- a/app/src/main/res/values-fil/strings.xml +++ b/app/src/main/res/values-fil/strings.xml @@ -40,8 +40,6 @@ Kung nabili mo kamakailan, maaaring tumagal ng ilang sandali para ma-sync ng Google Play. Subukang muli pagkatapos ng ilang minuto kung hindi lumabas ang iyong pagbili. Tiyaking naka-sign in ka sa parehong Google account na ginamit sa pagbili. - Mode ng monitor - Sa ilalim ng anong mga pangyayari mino-monitor ng app na ito ang data ng Bluetooth. Karagdagang notipikasyon Nagpapakita ng karagdagang notipikasyon kapag konektado ang isang device. Pinapayagan ka nitong itago ang permanenteng \"Walang mga device\" na notipikasyon sa pamamagitan ng pag-disable sa \"Katayuan ng device\" na channel. Panatilihin ang notipikasyon pagkatapos mag-disconnect @@ -80,8 +78,6 @@ Ipakita ang connection popup Magpakita ng popup kapag unang kumonekta ang device. Ang mga popup ay ipinapakita lamang kapag wala ka sa app. - Ang mga popup ay nangangailangan ng monitor na tumatakbo. Ang iyong monitor mode ay nakatakda sa \"When app is open\", na nagpapatigil ng monitor kapag umalis ka sa app. - Ayusin ito Pang-eksperimentong tampok Ang tampok na ito ay hindi pa nasubok sa lahat ng device. Kung may hindi gumagana nang tama, mangyaring magbukas ng isyu na may debug log. Buksan ang Issue Tracker @@ -220,9 +216,6 @@ Kailangan ang sumusunod na pahintulot: System Alert Window Payagan ang CAPod na mag-draw sa ibabaw ng ibang mga app para maging posible ang feature na \"Ipakita ang PopUp\". - Kapag bukas ang app - Kapag konektado ang device - Palagi Kapag nakita Bukas ang case Nasa tainga @@ -322,7 +315,6 @@ Amber Gumagamit ng mga kulay ng wallpaper - Pagmo-monitor Hitsura Mga Hindi Na-save na Pagbabago diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index c7b4eccd..40968f6e 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -40,8 +40,6 @@ Si l’achat est récent, Google Play peut mettre du temps à synchroniser. Si votre achat n’apparaît pas, réessayez dans quelques minutes. Le même compte Google doit être utilisé pour l’achat et la connexion. - Mode surveillance - Les circonstances de surveillance des données Bluetooth par l’appli. Notification supplémentaire Affiche une notification supplémentaire si un appareil est connecté. Cela vous permet de masquer la notification permanente « Aucun appareil » en désactivant le canal « État de l’appareil ». Garder la notification après déconnexion @@ -80,8 +78,6 @@ Afficher une fenêtre de connection Afficher une fenêtre contextuelle quand l’appareil se connecte pour la première fois. Les popups ne sont affichées que lorsque vous n\'êtes pas dans l\'application. - Les popups nécessitent que le moniteur soit en cours d\'exécution. Votre mode moniteur est réglé sur « Quand l\'application est ouverte », ce qui arrête le moniteur lorsque vous quittez l\'application. - Corriger Fonctionnalité expérimentale Cette fonctionnalité n\'a pas encore été testée sur tous les appareils. Si quelque chose ne fonctionne pas correctement, veuillez ouvrir un ticket avec un journal de débogage. Ouvrir le suivi des problèmes @@ -220,9 +216,6 @@ L’autorisation suivante est nécessaire : Fenêtre d’alerte système Permettre à CAPod d’apparaître par-dessus les autres applis pour rendre la fonction « Afficher une fenêtre contextuelle » possible. - Si l’appli est ouverte - Si l’appareil est connecté - Toujours S’il est visible Si l’étui est ouvert S’il est porté @@ -322,7 +315,6 @@ Ambre Utilise les couleurs du fond d’écran - Surveillance Apparence Des changements ne sont pas enregistrés diff --git a/app/src/main/res/values-gl-rES/strings.xml b/app/src/main/res/values-gl-rES/strings.xml index 41415a98..ffbd031f 100644 --- a/app/src/main/res/values-gl-rES/strings.xml +++ b/app/src/main/res/values-gl-rES/strings.xml @@ -40,8 +40,6 @@ Se compraches recentemente, pode tardar un momento en que Google Play sincronice. Téntao de novo en poucos minutos se a túa compra non aparece. Asegúrate de ter iniciado sesión coa mesma conta de Google usada para a compra. - Modo de supervisión - Baixo que circunstancias esta aplicación supervisa os datos Bluetooth. Notificación adicional Mostra unha notificación adicional cando un dispositivo está conectado. Isto permíteche ocultar a notificación permanente de \"Sen dispositivos\" desactivando a canle \"Estado do dispositivo\". Manter notificación tras desconexión @@ -80,8 +78,6 @@ Mostrar ventá emerxente de conexión Mostrar unha ventá emerxente cando o dispositivo se conecta por primeira vez. As ventás emerxentes só se mostran cando non estás na aplicación. - As ventás emerxentes requiren que o monitor estea en execución. O teu modo de monitor está configurado como \"Cando a aplicación está aberta\", o que detén o monitor cando saes da aplicación. - Arranxalo Función experimental Esta función aínda non foi probada en todos os dispositivos. Se algo non funciona correctamente, abre un problema co rexistro de depuración. Abrir o rastreador de problemas @@ -220,9 +216,6 @@ É necesario o seguinte permiso: Xanela de alerta do sistema Permitir que CAPod debuxe sobre outras aplicacións para facer posible a función \"Mostrar PopUp\". - Cando a aplicación está aberta - Cando o dispositivo está conectado - Sempre Cando se ve A funda está aberta No oído @@ -322,7 +315,6 @@ Ámbar Usa as cores do fondo de pantalla - Monitorización Aparencia Cambios sen gardar diff --git a/app/src/main/res/values-hi-rIN/strings.xml b/app/src/main/res/values-hi-rIN/strings.xml index 531b5a81..c9c1582c 100644 --- a/app/src/main/res/values-hi-rIN/strings.xml +++ b/app/src/main/res/values-hi-rIN/strings.xml @@ -40,8 +40,6 @@ यदि आपने हाल ही में खरीदारी की है, तो Google Play को सिंक करने में कुछ समय लग सकता है। यदि आपकी खरीद दिखाई नहीं दे रही है, तो कुछ मिनट बाद पुनः प्रयास करें। सुनिश्चित करें कि आप उसी Google खाते से साइन इन हैं जिससे खरीदारी की गई थी। - मॉनिटर मोड - यह ऐप किन परिस्थितियों में ब्लूटूथ डेटा की निगरानी करता है। अतिरिक्त सूचना जब कोई डिवाइस कनेक्ट होता है तो एक अतिरिक्त सूचना दिखाता है। यह आपको \"डिवाइस स्थिति\" चैनल को अक्षम करके स्थायी \"कोई डिवाइस नहीं\" सूचना को छिपाने की अनुमति देता है। डिस्कनेक्ट होने के बाद सूचना बनाए रखें @@ -80,8 +78,6 @@ कनेक्शन पॉपअप दिखाएं डिवाइस पहली बार कनेक्ट होने पर एक पॉपअप दिखाएं। पॉपअप केवल तब दिखाए जाते हैं जब आप ऐप में नहीं होते। - पॉपअप के लिए मॉनिटर का चलना आवश्यक है। आपका मॉनिटर मोड \"जब ऐप खुला हो\" पर सेट है, जो ऐप छोड़ने पर मॉनिटर बंद कर देता है। - इसे ठीक करें प्रयोगात्मक फ़ीचर इस फ़ीचर को अभी सभी डिवाइस पर नहीं परखा गया है। यदि कुछ सही तरह से काम नहीं कर रहा, तो कृपया डीबग लॉग के साथ एक समस्या खोलें। इश्यू ट्रैकर खोलें @@ -220,9 +216,6 @@ निम्नलिखित अनुमति आवश्यक है: सिस्टम अलर्ट विंडो CAPod को अन्य ऐप्स के ऊपर ड्रॉ करने की अनुमति दें ताकि \"पॉपअप दिखाएं\" सुविधा संभव हो सके। - जब ऐप खुला हो - जब डिवाइस कनेक्ट हो - हमेशा जब देखा जाए केस खुला है कान में @@ -322,7 +315,6 @@ एम्बर वॉलपेपर रंगों का उपयोग करता है - मॉनिटरिंग दिखावट असहेजे परिवर्तन diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml index a5bc7c4d..1b053ccf 100644 --- a/app/src/main/res/values-hr/strings.xml +++ b/app/src/main/res/values-hr/strings.xml @@ -40,8 +40,6 @@ Ako ste nedavno kupili, može potrajati trenutak dok Google Play sinkronizira. Pokušajte ponovo za nekoliko minuta ako vaša kupnja nije prikazana. Provjerite jeste li prijavljeni s istim Google računom koji ste koristili za kupnju. - Način praćenja - Pod kojim okolnostima ova aplikacija prati Bluetooth podatke. Dodatna obavijest Prikazuje dodatnu obavijest kada je uređaj povezan. To vam omogućuje da sakrijete trajnu obavijest \"Nema uređaja\" onemogućavanjem kanala \"Status uređaja\". Zadrži obavijest nakon prekida veze @@ -80,8 +78,6 @@ Prikaži skočni prozor veze Prikaži skočni prozor kada se uređaj prvi put poveže. Skočni prozori prikazuju se samo kada niste u aplikaciji. - Skočni prozori zahtijevaju pokrenuti monitor. Vaš način rada monitora postavljen je na \"Kada je aplikacija otvorena\", što zaustavlja monitor kada napustite aplikaciju. - Popravi Eksperimentalna značajka Ova značajka još nije testirana na svim uređajima. Ako nešto ne radi ispravno, molimo otvorite prijavu s debug zapisnikom. Otvori praćenje problema @@ -222,9 +218,6 @@ Sljedeća dozvola je potrebna: Prozor sistemskog upozorenja Dopustite CAPod-u crtanje preko drugih aplikacija kako bi omogućili značajku \"Prikaži skočni prozor\". - Kada je aplikacija otvorena - Kada je uređaj povezan - Uvijek Kada je viđen Kućište je otvoreno U uhu @@ -324,7 +317,6 @@ Jantar Koristi boje pozadine - Praćenje Izgled Nespremljene promjene diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml index 840bef69..6f1b27be 100644 --- a/app/src/main/res/values-hu/strings.xml +++ b/app/src/main/res/values-hu/strings.xml @@ -40,8 +40,6 @@ Ha nemrég vásároltál, a Google Play-nek egy pillanatra szüksége lehet a szinkronizáláshoz. Próbálkozz újra néhány perc múlva, ha a vásárlás nem jelenik meg. Győződj meg róla, hogy ugyanazzal a Google-fiókkal vagy bejelentkezve, amellyel a vásárlást végezted. - Monitor mód - Milyen körülmények között figyelje az alkalmazás a Bluetooth-adatokat. Extra értesítés Extra értesítést jelenít meg, amikor egy eszköz csatlakozik. Ez lehetővé teszi az állandó \"Nincs eszköz\" értesítés elrejtését az \"Eszköz állapota\" csatorna letiltásával. Értesítés megőrzése lecsatlakozás után @@ -80,8 +78,6 @@ Előugró ablak csatlakozáskor Előugró ablak megjelenítése, amikor az eszköz először csatlakozik. Az előugró ablakok csak akkor jelennek meg, ha nem tartózkodik az alkalmazásban. - Az előugró ablakokhoz futnia kell a monitornak. A monitor módja „Amikor az alkalmazás nyitva van”, ami leállítja a monitort, amikor elhagyja az alkalmazást. - Javítás Kísérleti funkció Ezt a funkciót még nem tesztelték minden eszközön. Ha valami nem működik megfelelően, kérjük, nyiss egy hibajegyet hibakeresési naplóval. Hibajegykövetős megnyitása @@ -220,9 +216,6 @@ A következő engedély szükséges: Rendszer figyelmeztető ablak Engedélyezze a CAPod-nak, hogy más alkalmazások fölé rajzoljon az \"Előugró ablak megjelenítése\" funkció lehetővé tételéhez. - Amikor az alkalmazás nyitva van - Amikor az eszköz csatlakozik - Mindig Amikor észlelhető A tok nyitva van Fülben @@ -322,7 +315,6 @@ Borostyán Háttérkép színeit használja - Figyelés Megjelenés Nem mentett változtatások diff --git a/app/src/main/res/values-hy-rAM/strings.xml b/app/src/main/res/values-hy-rAM/strings.xml index dfe6c69d..1e0f77ea 100644 --- a/app/src/main/res/values-hy-rAM/strings.xml +++ b/app/src/main/res/values-hy-rAM/strings.xml @@ -40,8 +40,6 @@ Եթե վերջերս գնել եք, Google Play-ի համաժամացմանը կարող է մի փոքր ժամանակ պահանջվել: Մի քանի րոպե հետո կրկին փորձեք, եթե ձեր գնումը չի երևում: Համոզվեք, որ մուտք եք գործել գնման համար օգտագործված Google հաշվով: - Մոնիթորինգի ռեժիմ - Ինչ պայմաններում է այս հավելվածը վերահսկում Bluetooth-ի տվյալները։ Լրացուցիչ ծանուցում Ցուցադրում է լրացուցիչ ծանուցում, երբ սարքը միացված է։ Սա թույլ է տալիս թաքցնել մշտական \"Սարքեր չկան\" ծանուցումը՝ անջատելով \"Սարքի կարգավիճակը\" ալիքը։ Պահել ծանուցումը անջատումից հետո @@ -80,8 +78,6 @@ Ցուցադրել միացման բացվող պատուհանը Ցուցադրել բացվող պատուհան, երբ սարքն առաջին անգամ է միանում։ Ելնող պատուհանները ցուցադրվում են միայն այն ժամանակ, երբ դուք հավելվածում չեք: - Ելնող պատուհանները պահանջում են, որ մոնիտորը աշխատի: Մոնիտորի ռեժիմն սահմանված է «Հավելվածը բաց է», ինչը կանգնեցնում է մոնիտորը, երբ դուք լքում եք հավելվածը: - Շտկել Փորձնական հատկություն Այս հատկությունը դեռ չի փորձարկվել բոլոր սարքերում: Եթե ինչ-որ բան ճիշտ չի աշխատում, խնդրում ենք բացել հարց՝ կազմաբերման մատյանով: Բացել հարցերի հետևիչը @@ -220,9 +216,6 @@ Հետևյալ թույլտվությունն անհրաժեշտ է՝ Համակարգային զգուշացման պատուհան Թույլ տվեք CAPod-ին նկարել այլ հավելվածների վերևում՝ \"Ցուցադրել բացվող պատուհան\" գործառույթը հնարավոր դարձնելու համար։ - Երբ հավելվածը բաց է - Երբ սարքը միացված է - Միշտ Երբ տեսնվում է Պատյանը բաց է Ականջում է @@ -322,7 +315,6 @@ Ծիրանագույն Պատկերի գույները - Մոնիտորինգ Արտաքին տեսք Չպահպանված փոփոխություններ diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml index b59a0601..bae0e83e 100644 --- a/app/src/main/res/values-in/strings.xml +++ b/app/src/main/res/values-in/strings.xml @@ -40,8 +40,6 @@ Jika Anda baru saja melakukan pembelian, mungkin butuh beberapa saat agar Google Play dapat menyinkronkan. Coba lagi dalam beberapa menit jika pembelian Anda belum muncul. Pastikan Anda masuk dengan akun Google yang sama yang digunakan untuk pembelian. - Mode pantau - Dalam kondisi apa aplikasi ini memantau data Bluetooth. Notifikasi tambahan Menampilkan notifikasi tambahan ketika perangkat terhubung. Ini memungkinkan Anda menyembunyikan notifikasi permanen \"Tidak ada perangkat\" dengan menonaktifkan saluran \"Status perangkat\". Pertahankan notifikasi setelah terputus @@ -80,8 +78,6 @@ Tampilkan pop-up koneksi Tampilkan pop-up saat perangkat pertama kali terhubung. Popup hanya ditampilkan saat Anda tidak berada di aplikasi. - Popup memerlukan monitor yang sedang berjalan. Mode monitor Anda diatur ke \"Saat aplikasi terbuka\", yang menghentikan monitor saat Anda meninggalkan aplikasi. - Perbaiki Fitur eksperimental Fitur ini belum diuji di semua perangkat. Jika ada yang tidak berfungsi dengan benar, silakan buka laporan masalah beserta log debug. Buka Pelacak Masalah @@ -218,9 +214,6 @@ Izin berikut diperlukan: Jendela Peringatan Sistem Izinkan CAPod menggambar di atas aplikasi lain untuk memungkinkan fitur \"Tampilkan PopUp\". - Saat aplikasi terbuka - Saat perangkat terhubung - Selalu Saat terlihat Casing terbuka Di telinga @@ -320,7 +313,6 @@ Kuning keemasan Menggunakan warna wallpaper - Pemantauan Tampilan Perubahan Belum Disimpan diff --git a/app/src/main/res/values-is/strings.xml b/app/src/main/res/values-is/strings.xml index 4a037c01..faa3da61 100644 --- a/app/src/main/res/values-is/strings.xml +++ b/app/src/main/res/values-is/strings.xml @@ -40,8 +40,6 @@ Ef þú keyptir nýlega gæti það tekið smá tíma fyrir Google Play að samstilla. Reyndu aftur eftir nokkrar mínútur ef kaupin þín birtast ekki. Gakktu úr skugga um að þú sért skráður inn með sama Google-reikninginn sem notaður var við kaupin. - Vöktunarstilling - Undir hvaða kringumstæðum þetta forrit fylgist með Bluetooth gögnum. Auka tilkynning Sýnir auka tilkynningu þegar tæki er tengt. Þetta gerir þér kleift að fela varanlega \"Engin tæki\" tilkynninguna með því að slökkva á \"Staða tækis\" rásinni. Halda tilkynningu eftir aftengi @@ -80,8 +78,6 @@ Sýna upplýsingaglugga tengingar Sýna upplýsingaglugga þegar tækið tengist í fyrsta skipti. Sprettigluggar eru aðeins sýndir þegar þú ert ekki í forritinu. - Sprettigluggar krefjast þess að vaktarinn sé í gangi. Vaktagreiningin þín er stillt á \"Þegar forrit er opið\", sem stöðvar vaktarann þegar þú yfirgefur forritið. - Laga það Tilraunaeiginleiki Þessi eiginleiki hefur ekki verið prófaður á öllum tækjum enn. Ef eitthvað virkar ekki rétt skaltu opna málskrá með kembikladda. Opna málaskráreftirlit @@ -220,9 +216,6 @@ Eftirfarandi heimild er nauðsynleg: Kerfisviðvörunargluggi Leyfðu CAPod að teikna yfir önnur forrit til að gera eiginleikann \"Sýna upplýsingaglugga\" mögulegan. - Þegar forrit er opið - Þegar tæki er tengt - Alltaf Þegar séð Hulstur opið Í eyra @@ -322,7 +315,6 @@ Gulrauður Notar liti bakgrunnsmyndar - Eftirlit Utsýni Óvistaðar breytingar diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index cdc28d07..0e3b5357 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -40,8 +40,6 @@ Se hai acquistato di recente, potrebbe volerci un momento affinché Google Play si sincronizzi. Riprova tra qualche minuto se il tuo acquisto non appare. Assicurati di essere connesso con lo stesso account Google utilizzato per l\'acquisto. - Modalità di monitoraggio - In quali circostanze questa applicazione monitora i dati Bluetooth. Notifica aggiuntiva Mostra una notifica aggiuntiva quando un dispositivo è connesso. Ciò consente di nascondere la notifica permanente \"Nessun dispositivo\" disabilitando il canale \"Stato del dispositivo\". Mantieni notifica dopo la disconnessione @@ -80,8 +78,6 @@ Mostra pop-up connessione Mostra un pop-up quando il dispositivo si connette per la prima volta. I popup vengono mostrati solo quando non sei nell\'app. - I popup richiedono che il monitor sia in esecuzione. La modalità monitor è impostata su \"Quando l\'app è aperta\", che interrompe il monitor quando esci dall\'app. - Correggi Funzione sperimentale Questa funzione non è stata ancora testata su tutti i dispositivi. Se qualcosa non funziona correttamente, apri una segnalazione con un log di debug. Apri il tracker dei problemi @@ -220,9 +216,6 @@ È richiesto il seguente permesso: Finestra di avviso di sistema Consenti a CAPod di disegnare sopra altre app per rendere possibile la funzionalità \"Mostra pop-up\". - Quando l\'app è aperta - Quando il dispositivo è connesso - Sempre Quando rilevato Custodia aperta Nell\'orecchio @@ -322,7 +315,6 @@ Ambra Utilizza i colori dello sfondo - Monitoraggio Aspetto Modifiche non salvate diff --git a/app/src/main/res/values-iw/strings.xml b/app/src/main/res/values-iw/strings.xml index 259bb8ef..81e2a202 100644 --- a/app/src/main/res/values-iw/strings.xml +++ b/app/src/main/res/values-iw/strings.xml @@ -40,8 +40,6 @@ אם רכשת לאחרונה, ייתכן שיידרש זמן מה כדי ש-Google Play יסתנכרן. נסה שוב בעוד כמה דקות אם הרכישה שלך לא מופיעה. ודא שאתה מחובר עם אותו חשבון Google שבו השתמשת לרכישה. - מצב מוניטור - באילו נסיבות אפליקציה זו עוקבת אחר נתוני Bluetooth. התראה נוספת מציג התראה נוספת כאשר מכשיר מחובר. זה מאפשר לך להסתיר את ההתראה הקבועה \"אין מכשירים\" על ידי השבתת הערוץ \"סטטוס מכשיר\". שמור התראה לאחר ניתוק @@ -80,8 +78,6 @@ הצג חלון קופץ של חיבור הצג חלון קופץ כאשר המכשיר מתחבר בפעם הראשונה. חלונות קופצים מוצגים רק כשאינך בתוך האפליקציה. - חלונות קופצים דורשים שהמנטור יפעל. מצב המנטור שלך מוגדר ל-\"כשהאפליקציה פתוחה\", מה שעוצר את המנטור כשאתה עוזב את האפליקציה. - תקן זאת תכונה ניסיונית תכונה זו טרם נבדקה על כל המכשירים. אם משהו אינו פועל כראוי, אנא פתח בקשת תמיכה עם יומן ניפוי שגיאות. פתח מעקב בעיות @@ -224,9 +220,6 @@ ההרשאה הבאה נדרשת: חלון התראת מערכת אפשר ל-CAPod לצייר מעל אפליקציות אחרות כדי לאפשר את תכונת \"הצג חלון קופץ\". - כשהאפליקציה פתוחה - כשמכשיר מחובר - תמיד כשנראה מארז פתוח באוזן @@ -326,7 +319,6 @@ ענבר משתמש בצבעי טפט השולחן - ניטור מראה שינויים שלא נשמרו diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 03a9963d..676bf07b 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -40,8 +40,6 @@ 最近購入した場合、Google Playが同期するまで少し時間がかかる場合があります。 購入が表示されない場合は、数分後に再度お試しください。 購入に使用したGoogleアカウントでサインインしていることを確認してください。 - モニターモード - このアプリがBluetoothデータを監視する状況。 追加通知 デバイスが接続されると追加の通知を表示します。これにより、「デバイスステータス」チャネルを無効にすることで、永続的な「デバイスなし」通知を非表示にできます。 切断後も通知を維持 @@ -80,8 +78,6 @@ 接続ポップアップを表示 デバイスが初めて接続されたときにポップアップを表示します。 ポップアップはアプリを使用していない時のみ表示されます。 - ポップアップにはモニターが実行中である必要があります。モニターモードが「アプリが開いている時」に設定されており、アプリを離れるとモニターが停止します。 - 修正する 実験的機能 この機能はまだすべてのデバイスでテストされていません。正しく動作しない場合は、デバッグログを添えてイシューを開いてください。 イシュートラッカーを開く @@ -218,9 +214,6 @@ 次の権限が必要です: システムアラートウィンドウ 「ポップアップを表示」機能を有効にするため、CAPodが他のアプリの上に表示できるようにします。 - アプリを開いているとき - デバイス接続時 - 常に 検出時 ケースが開いているとき 装着時 @@ -320,7 +313,6 @@ アンバー 壁紙の色を使用 - モニタリング 外観 未保存の変更 diff --git a/app/src/main/res/values-ka-rGE/strings.xml b/app/src/main/res/values-ka-rGE/strings.xml index 2cdc9bee..d9fac47e 100644 --- a/app/src/main/res/values-ka-rGE/strings.xml +++ b/app/src/main/res/values-ka-rGE/strings.xml @@ -40,8 +40,6 @@ თუ ახლახანს შეიძინეთ, Google Play-ს სინქრონიზაციას შეიძლება გარკვეული დრო დასჭირდეს. რამდენიმე წუთში სცადეთ თავიდან, თუ თქვენი შეძენა არ ჩანს. დარწმუნდით, რომ შესულა ხართ იმავე Google ანგარიშით, რომელიც გამოიყენეთ შეძენისას. - მონიტორინგის რეჟიმი - რა გარემოებებში აკონტროლებს ეს აპლიკაცია Bluetooth-ის მონაცემებს. დამატებითი შეტყობინება აჩვენებს დამატებით შეტყობინებას, როდესაც მოწყობილობა დაკავშირებულია. ეს საშუალებას გაძლევთ დამალოთ მუდმივი \"მოწყობილობები არ არის\" შეტყობინება \"მოწყობილობის სტატუსის\" არხის გამორთვით. შეტყობინების შენარჩუნება გათიშვის შემდეგ @@ -80,8 +78,6 @@ დაკავშირების ამომხტარი ფანჯრის ჩვენება აჩვენეთ ამომხტარი ფანჯარა მოწყობილობის პირველად დაკავშირებისას. პოპ-აპები მხოლოდ მაშინ ჩანს, როცა არ ხართ აპლიკაციაში. - პოპ-აპებისთვის საჭიროა მონიტორის გაშვება. თქვენი მონიტორის რეჟიმი დაყენებულია \"აპლიკაცია ღიაა\"-ზე, რაც მონიტორს აჩერებს, როცა აპლიკაციას ტოვებთ. - გამოსწორება ექსპერიმენტული ფუნქცია ეს ფუნქცია ჯერ ყველა მოწყობილობაზე გამოცდილი არ არის. თუ რამე სწორად არ მუშაობს, გთხოვთ გახსნათ ხარვეზი debug ლოგთან ერთად. ხარვეზების ტრეკერის გახსნა @@ -220,9 +216,6 @@ საჭიროა შემდეგი ნებართვა: სისტემური გამაფრთხილებელი ფანჯარა დაუშვით, რომ CAPod სხვა აპებზე ზემოდან გამოჩნდეს, რათა \"Show PopUp\" ფუნქცია შესაძლებელი გახდეს. - როცა აპი ღიაა - როცა მოწყობილობა დაკავშირებულია - ყოველთვის როცა გამოჩნდება ქეისი ღიაა ყურშია @@ -322,7 +315,6 @@ ყვითელი იყენებს ფონის ფერებს - მონიტორინგი გარეგნობა შეუნახავი ცვლილებები diff --git a/app/src/main/res/values-km-rKH/strings.xml b/app/src/main/res/values-km-rKH/strings.xml index 86354c26..71cba320 100644 --- a/app/src/main/res/values-km-rKH/strings.xml +++ b/app/src/main/res/values-km-rKH/strings.xml @@ -40,8 +40,6 @@ ប្រសិនបើអ្នកបានតិញថ្មី៦ វាអាចចំណាយពេលបន្តិចដើម្បីឥយ្វ Google Play ធ្វើការធ្វើឥ្ស្របគ្នា។ ព្យាយាមម្តងតិឡតក្នុងរយែពេលប៉ុន្មានាតិប្រសិនបើការតិញរបស់អ្នកមិនបានបង្ហាញ។ ត្រូវប្រាកតថ្លៃអ្នកបានចូលដោយប្រើកគណនី Google ដូចគ្នាដែលប្រើសម្រាប់ការតិញ។ - របៀបតាមដាន - នៅក្រោមលក្ខខណ្ឌអ្វីខ្លះដែលកម្មវិធីនេះតាមដានទិន្នន័យ Bluetooth។ ការជូនដំណឹងបន្ថែម បង្ហាញការជូនដំណឹងបន្ថែមនៅពេលឧបករណ៍ត្រូវបានភ្ជាប់។ វាអនុញ្ញាតឱ្យអ្នកលាក់ការជូនដំណឹងអចិន្ត្រៃយ៍ \"គ្មានឧបករណ៍\" ដោយបិទឆានែល \"ស្ថានភាពឧបករណ៍\"។ រក្សាការជូនដំណឹងបន្ទាប់ពីផ្តាច់ @@ -80,8 +78,6 @@ បង្ហាញផ្ទាំងលោតការភ្ជាប់ បង្ហាញផ្ទាំងលោតនៅពេលឧបករណ៍ភ្ជាប់ជាលើកដំបូង។ ការបង្ហាញលេចឡើងត្រូវបានបង្ហាញតែពេលអ្នកមិននៅក្នុងកម្មវិធីប៉ុណ្ណោះ។ - ការបង្ហាញលេចឡើងតម្រូវឱ្យម៉ូនីទ័រដំណើរការ។ របៀបម៉ូនីទ័ររបស់អ្នកត្រូវបានកំណត់ជា \"នៅពេលកម្មវិធីបើក\" ដែលបញ្ឈប់ម៉ូនីទ័រពេលអ្នកចាកចេញពីកម្មវិធី។ - កែប្រែ មុខងារពិសោធន៍ មុខងារនេះមិនទាន់ត្រូវបានសាកល្បងនៅលើឧបករណ៍ទាំងអស់នៅឡើយទេ។ ប្រសិនបើអ្វីមួយមិនដំណើរការត្រឹមត្រូវ សូមបើកបញ្ហាជាមួយកំណត់ហេតុ debug។ បើក Issue Tracker @@ -218,9 +214,6 @@ ការអនុញ្ញាតខាងក្រោមត្រូវបានទាមទារ: បង្អួចជូនដំណឹងប្រព័ន្ធ អនុញ្ញាតឱ្យ CAPod គូរពីលើកម្មវិធីផ្សេងទៀតដើម្បីធ្វើឱ្យមុខងារ \"បង្ហាញផ្ទាំងលោត\" អាចធ្វើទៅបាន។ - នៅពេលកម្មវិធីបើក - នៅពេលឧបករណ៍បានភ្ជាប់ - ជានិច្ច នៅពេលឃើញ ប្រអប់បើក ក្នុងត្រចៀក @@ -320,7 +313,6 @@ ពណ៌លើងតឹកក្រូច ប្រើពណ៌ wallpaper - ការត្រួតពិនិត្យ រូបរាង ការផ្លាស់ប្តូរមិនបានរក្សាទុក diff --git a/app/src/main/res/values-kmr-rTR/strings.xml b/app/src/main/res/values-kmr-rTR/strings.xml index 2864df7f..b71767d5 100644 --- a/app/src/main/res/values-kmr-rTR/strings.xml +++ b/app/src/main/res/values-kmr-rTR/strings.xml @@ -40,8 +40,6 @@ Heke hûn vê dawiyê kirînek kirin, dibe ku hinek dem bigire ku Google Play hevdem bibe. Heke kirîna we xuya nebe, çend xulekan şûnda dîsa biceribîne. Pê ewle be ku hûn bi heman hesabê Google yê ku ji bo kirînê hatiye bikaranîn ketine hundur. - Moda çavdêriyê - Di kîjan şert û mercan de ev sepan daneyên Bluetooth dişopîne. Agahdariya zêde Dema ku amûrek girêdayî ye agahdariyek zêde nîşan dide. Ev dihêle hûn agahdariya daîmî ya \"Amûr tune\" bi neçalakkirina kanala \"Rewşa amûrê\" veşêrin. Piştî qutbûnê agahdariyê biparêze @@ -80,8 +78,6 @@ Pop-upa girêdanê nîşan bide Dema ku amûr cara yekem girêdide pop-upek nîşan bide. Pencereyên daqurtandinê tenê dema tu di serîlêdanê de nî nîn in tên nîşandan. - Pencereyên daqurtandinê hewce ne ku çavdêr bixebite. Moda çavdêriya te li ser \"Dema serîlêdan vekirî ye\" hatiye danîn, ku çavdêr dema tu serîlêdanê dihêlî radiweste. - Rast bike Taybetmendiya ezmûnî Ev taybetmendî hê li ser hemî amûran nehatiye ceribandin. Eger tiştek rast nexebite, ji kerema xwe pirsgirêkek bi têkelbûnek debug vekin. Şopînerê Pirsgirêkê Veke @@ -220,9 +216,6 @@ Destûra jêrîn hewce ye: Pencereya Hişyariya Pergalê Destûrê bidin CAPod ku li ser sepanên din xêz bike da ku taybetmendiya \"Pop-Up Nîşan Bide\" gengaz bike. - Dema sepan vekirî ye - Dema amûr girêdayî ye - Herdem Dema tê dîtin Qapax vekirî ye Di guhê de @@ -322,7 +315,6 @@ Amber Rengên dîwarê bikartîne - Çavdêrî Xuyang Guhertinên netomarkirî diff --git a/app/src/main/res/values-kn-rIN/strings.xml b/app/src/main/res/values-kn-rIN/strings.xml index 7dbd6cff..aa1ae331 100644 --- a/app/src/main/res/values-kn-rIN/strings.xml +++ b/app/src/main/res/values-kn-rIN/strings.xml @@ -40,8 +40,6 @@ ನೀವು ಇತ್ತೀಚೆಗೆ ಖರೀದಿಸಿದ್ದರೆ, Google Play ಸಿಂಕ್ ಆಗಲು ಸ್ವಲ್ಪ ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಬಹುದು. ನಿಮ್ಮ ಖರೀದಿ ಕಾಣಿಸದಿದ್ದರೆ ಕೆಲವು ನಿಮಿಷಗಳ ನಂತರ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ಖರೀದಿಗೆ ಬಳಸಿದ ಅದೇ Google ಖಾತೆಯಿಂದ ಸೈನ್ ಇನ್ ಮಾಡಿರುವಿರಿ ಎಂದು ಖಚಿತಪಡಿಸಿ. - ಮಾನಿಟರ್ ಮೋಡ್ - ಯಾವ ಸಂದರ್ಭಗಳಲ್ಲಿ ಈ ಅಪ್ಲಿಕೇಶನ್ ಬ್ಲೂಟೂತ್ ಡೇಟಾವನ್ನು ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡುತ್ತದೆ. ಹೆಚ್ಚುವರಿ ಅಧಿಸೂಚನೆ ಸಾಧನ ಸಂಪರ್ಕಗೊಂಡಾಗ ಹೆಚ್ಚುವರಿ ಅಧಿಸೂಚನೆಯನ್ನು ತೋರಿಸುತ್ತದೆ. ಇದು \"ಸಾಧನ ಸ್ಥಿತಿ\" ಚಾನಲ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುವ ಮೂಲಕ ಶಾಶ್ವತ \"ಯಾವುದೇ ಸಾಧನಗಳಿಲ್ಲ\" ಅಧಿಸೂಚನೆಯನ್ನು ಮರೆಮಾಡಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಸಂಪರ್ಕ ಕಡಿತದ ನಂತರ ಅಧಿಸೂಚನೆ ಇರಿಸಿ @@ -80,8 +78,6 @@ ಸಂಪರ್ಕ ಪಾಪ್‌ಅಪ್ ತೋರಿಸಿ ಸಾಧನವು ಮೊದಲ ಬಾರಿಗೆ ಸಂಪರ್ಕಗೊಂಡಾಗ ಪಾಪ್‌ಅಪ್ ತೋರಿಸಿ. ನೀವು ಅಪ್ಲಿಕೇಶನ್‌ನಲ್ಲಿ ಇಲ್ಲದಿರುವಾಗ ಮಾತ್ರ ಪಾಪ್‌ಅಪ್‌ಗಳನ್ನು ತೋರಿಸಲಾಗುತ್ತದೆ. - ಪಾಪ್‌ಅಪ್‌ಗಳಿಗೆ ಮಾನಿಟರ್ ಚಾಲನೆಯಲ್ಲಿರಬೇಕು. ನಿಮ್ಮ ಮಾನಿಟರ್ ಮೋಡ್ \"ಅಪ್ಲಿಕೇಶನ್ ತೆರೆದಿರುವಾಗ\" ಎಂದು ಹೊಂದಿಸಲಾಗಿದೆ, ಇದು ನೀವು ಅಪ್ಲಿಕೇಶನ್ ಬಿಟ್ಟು ಹೋದಾಗ ಮಾನಿಟರ್ ಅನ್ನು ನಿಲ್ಲಿಸುತ್ತದೆ. - ಸರಿಪಡಿಸಿ ಪ್ರಯೋಗಾತ್ಮಕ ವೈಶಿಷ್ಟ್ಯ ಈ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಇನ್ನೂ ಎಲ್ಲಾ ಸಾಧನಗಳಲ್ಲಿ ಪರೀಕ್ಷಿಸಲಾಗಿಲ್ಲ. ಏನಾದರೂ ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡದಿದ್ದರೆ, ದಯವಿಟ್ಟು ಡಿಬಗ್ ಲಾಗ್‌ನೊಂದಿಗೆ ಸಮಸ್ಯೆ ತೆರೆಯಿರಿ. ಸಮಸ್ಯೆ ಟ್ರ್ಯಾಕರ್ ತೆರೆಯಿರಿ @@ -220,9 +216,6 @@ ಕೆಳಗಿನ ಅನುಮತಿ ಅಗತ್ಯವಿದೆ: ಸಿಸ್ಟಮ್ ಅಲರ್ಟ್ ವಿಂಡೋ \"ಪಾಪ್‌ಅಪ್ ತೋರಿಸಿ\" ವೈಶಿಷ್ಟ್ಯವನ್ನು ಸಾಧ್ಯವಾಗಿಸಲು CAPod ಇತರ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಮೇಲೆ ಚಿತ್ರಿಸಲು ಅನುಮತಿಸಿ. - ಅಪ್ಲಿಕೇಶನ್ ತೆರೆದಿರುವಾಗ - ಸಾಧನ ಸಂಪರ್ಕಗೊಂಡಾಗ - ಯಾವಾಗಲೂ ಕಂಡಾಗ ಕೇಸ್ ತೆರೆದಿದೆ ಕಿವಿಯಲ್ಲಿ @@ -322,7 +315,6 @@ ಆಂಬರ್ ವೊಯಲ್ಪೇಪರ್ ಬಣ್ಣಗಳನ್ನು ಬಳಸುತ್ತದೆ - ಮೇಲ್ವಳಿಕೆ ನೋಟರೂಪ ಉಳಿಸದ ಬದಲಾವಣೆಗಳು diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 99773be2..dbe9d862 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -40,8 +40,6 @@ 최근에 구매하셨다면 Google Play가 동기화하는 데 잠시 시간이 걸릴 수 있습니다. 구매 내역이 표시되지 않으면 몇 분 후 다시 시도해 주세요. 구매에 사용한 Google 계정으로 로그인되어 있는지 확인해 주세요. - 모니터링 모드 - 이 앱이 Bluetooth 데이터를 모니터링하는 상황입니다. 추가 알림 기기가 연결되면 추가 알림을 표시합니다. 이렇게 하면 \"기기 상태\" 채널을 비활성화하여 영구적인 \"기기 없음\" 알림을 숨길 수 있습니다. 연결 해제 후에도 알림 유지하기 @@ -80,8 +78,6 @@ 연결 팝업 표시 기기가 처음 연결될 때 팝업을 표시합니다. 팝업은 앱 내에 있지 않을 때만 표시됩니다. - 팝업을 사용하려면 모니터가 실행 중이어야 합니다. 현재 모니터 모드가 \"앱을 열었을 때\"로 설정되어 있어 앱을 벗어나면 모니터가 중지됩니다. - 수정하기 실험적 기능 이 기능은 아직 모든 기기에서 테스트되지 않았습니다. 제대로 작동하지 않는 경우 디버그 로그와 함께 이슈를 열어주세요. 이슈 트래커 열기 @@ -218,9 +214,6 @@ 다음과 같은 권한이 필요합니다: 시스템 알림창 \"팝업 표시\" 기능을 사용하려면 다른 앱 위에 그리기를 허용해야 합니다. - 앱이 열려있을때 - 장치가 연결되었을때 - 항상 앱이 장치를 찾았을때 케이스가 열렸을때 귀에 착용했을 때 @@ -322,7 +315,6 @@ 호박색 바탕화면 색상 사용 - 모니터링 외관 저장되지 않은 변경 사항 diff --git a/app/src/main/res/values-ky-rKG/strings.xml b/app/src/main/res/values-ky-rKG/strings.xml index 54f49f78..79393a5d 100644 --- a/app/src/main/res/values-ky-rKG/strings.xml +++ b/app/src/main/res/values-ky-rKG/strings.xml @@ -40,8 +40,6 @@ Эгер жакында сатып алган болсоңуз, Google Play синхрондоо үчүн бир аз убакыт кетиши мүмкүн. Сатып алуу чагылдырылбаса, бир нече мүнөттөн кийин кайра аракет кылыңыз. Сатып алуу үчүн колдонулган Google аккаунтуна кирип турганыңызды текшериңиз. - Мониторинг режими - Бул колдонмо Bluetooth маалыматтарын кайсы шарттарда көзөмөлдөйт. Кошумча билдирүү Түзмөк туташканда кошумча билдирүү көрсөтүлөт. Бул \"Түзмөктүн абалы\" каналын өчүрүү менен туруктуу \"Түзмөктөр жок\" билдирүүсүн жашырууга мүмкүндүк берет. Ажыратылгандан кийин билдирүүнү сактоо @@ -80,8 +78,6 @@ Туташуу калкыма терезесин көрсөтүү Түзмөк биринчи жолу туташканда калкыма терезени көрсөтүү. Калкыма терезелер колдонмодо болбогондо гана көрсөтүлөт. - Калкыма терезелер мониторду иштетүүнү талап кылат. Монитор режими \"Колдонмо ачык болгондо\" деп коюлган, бул колдонмодон чыкканда мониторду токтотот. - Оңдоо Эксперименталдык функция Бул функция азырынча бардык түзмөктөрдө сыналган жок. Эгер бир нерсе туура иштебесе, отладка журналы менен маселе ачыңыз. Маселе трекерин ачуу @@ -220,9 +216,6 @@ Төмөнкү уруксат талап кылынат: Тутум эскертүү терезеси \"Калкыма терезе көрсөтүү\" функциясын мүмкүн кылуу үчүн CAPod\'го башка колдонмолордун үстүнөн тартууга уруксат бериңиз. - Колдонмо ачык болгондо - Түзмөк туташканда - Ар дайым Көрүнгөндө Кап ачык Кулакта @@ -322,7 +315,6 @@ Сары Түсказгын түсүн пайдаланат - Мониторинг Көрүнүш Сакталбаган өзгөртүүлөр diff --git a/app/src/main/res/values-lo-rLA/strings.xml b/app/src/main/res/values-lo-rLA/strings.xml index 6e0c7160..645ea062 100644 --- a/app/src/main/res/values-lo-rLA/strings.xml +++ b/app/src/main/res/values-lo-rLA/strings.xml @@ -40,8 +40,6 @@ ຖ້າທ່ານຊື້ຜ່ານມາບໍ່ດົນ, ອາດໃຊ້ເວລາໜ້ອຍໜຶ່ງສຳລັບ Google Play ໃນການຊິ້ງຂໍ້ມູນ. ລອງໃໝ່ຫຼັງຈາກສອງສາມນາທີ ຖ້າການຊື້ຂອງທ່ານຍັງບໍ່ສະແດງ. ໃຫ້ແນ່ໃຈວ່າທ່ານໄດ້ລ໋ອກອິນດ້ວຍບັນຊີ Google ດຽວກັນກັບທີ່ໃຊ້ຊື້. - ໂໝດຕິດຕາມ - ແອັບນີ້ຕິດຕາມຂໍ້ມູນ Bluetooth ພາຍໃຕ້ສະຖານະການໃດ. ການແຈ້ງເຕືອນເພີ່ມເຕີມ ສະແດງການແຈ້ງເຕືອນເພີ່ມເຕີມເມື່ອອຸປະກອນເຊື່ອມຕໍ່ແລ້ວ. ນີ້ຊ່ວຍໃຫ້ທ່ານສາມາດເຊື່ອງການແຈ້ງເຕືອນຖາວອນ \"ບໍ່ມີອຸປະກອນ\" ໂດຍການປິດຊ່ອງ \"ສະຖານະອຸປະກອນ\" . ຮັກສາການແຈ້ງເຕືອນຫຼັງຈາກຕັດການເຊື່ອມຕໍ່ @@ -80,8 +78,6 @@ ສະແດງປັອບອັບການເຊື່ອມຕໍ່ ສະແດງປັອບອັບເມື່ອອຸປະກອນເຊື່ອມຕໍ່ຄັ້ງທຳອິດ. ປ໋ອບອັບຈະສະແດງໃຫ້ເຫັນສະເພາະເມື່ອທ່ານບໍ່ຢູ່ໃນແອັບ. - ປ໋ອບອັບຕ້ອງການໃຫ້ຕົວຕິດຕາມເຮັດວຽກຢູ່. ໂໝດຕິດຕາມຂອງທ່ານຖືກຕັ້ງເປັນ \"ເມື່ອແອັບເປີດ\" ເຊິ່ງຈະຢຸດຕົວຕິດຕາມເມື່ອທ່ານອອກຈາກແອັບ. - ແກ້ໄຂ ຟີເຈີທົດລອງ ຟີເຈີນີ້ຍັງບໍ່ໄດ້ຮັບການທົດສອບໃນທຸກອຸປະກອນ. ຖ້າມີບາງຢ່າງທີ່ບໍ່ເຮັດວຽກຢ່າງຖືກຕ້ອງ, ກະລຸນາເປີດ issue ພ້ອມ debug log. ເປີດ Issue Tracker @@ -218,9 +214,6 @@ ຕ້ອງການການອະນຸຍາດຕໍ່ໄປນີ້: ໜ້າຕ່າງການແຈ້ງເຕືອນລະບົບ ອະນຸຍາດໃຫ້ CAPod ແຕ້ມທັບແອັບອື່ນເພື່ອໃຫ້ຄຸນສົມບັດ \"ສະແດງປັອບອັບ\" ເປັນໄປໄດ້. - ເມື່ອແອັບເປີດ - ເມື່ອອຸປະກອນເຊື່ອມຕໍ່ - ສະເໝີ ເມື່ອເຫັນ ເຄສເປີດ ໃນຫູ @@ -319,7 +312,6 @@ ສີເຫຼືອງອຳ ໃຊ້ສີຮູບພາບພື້ນຫຼັງ - ການຕິດຕາມ ຮູບລັກສະນະ ການປ່ຽນແປງທີ່ບໍ່ໄດ້ບັນທຶກ diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml index 28ae8b13..97fe78aa 100644 --- a/app/src/main/res/values-lt/strings.xml +++ b/app/src/main/res/values-lt/strings.xml @@ -40,8 +40,6 @@ Jei neseniai įsigįjote, gali užtrukti kol „Google Play“ sinchronizuosis. Pabandykite dar kartą po kelių minučių, jei jūsų pirkimas neatsiranda. Patikrinkite, ar esate prisijungę ta pačia „Google“ paskyra, kuri buvo naudota pirkiniui. - Stebėjimo režimas - Kokiomis aplinkybėmis ši programa stebi „Bluetooth\" duomenis. Papildomas pranešimas Rodo papildomą pranešimą, kai prijungiamas įrenginys. Tai leidžia paslėpti nuolatinį pranešimą \"Nėra įrenginių\" išjungiant kanalą \"Įrenginio būsena\". Palikti pranešimą atjungus @@ -80,7 +78,6 @@ Rodyti prisijungimo iškylantįjį langą Rodyti iškylantįjį langą, kai įrenginys prisijungia pirmą kartą. Iskylantieji langai rodomi tik tada, kai nesate programoje. - Sutaisyti Eksperimentinė funkcija Ši funkcija dar neišbandyta visuose įrenginiuose. Jei kažkas neveikia tinkamai, atidarykite problemų sąrašą su derinimo žurnalu. Atidaryti problemų sąrašą @@ -223,9 +220,6 @@ Reikalingas šis leidimas: Sistemos perspėjimo langas Leiskite CAPod piešti virš kitų programų, kad būtų galima naudoti funkciją „Rodyti iškylantįjį langą\". - Kai programa atidaryta - Kai įrenginys prijungtas - Visada Kai pastebėtas Dėklas atidarytas Ausyje @@ -325,7 +319,6 @@ Gintarinė Naudoja fono paveikslėlio spalvas - Stebėjimas Išvaizda Neišsaugoti pakeitimai diff --git a/app/src/main/res/values-lv/strings.xml b/app/src/main/res/values-lv/strings.xml index 423c2574..637bd412 100644 --- a/app/src/main/res/values-lv/strings.xml +++ b/app/src/main/res/values-lv/strings.xml @@ -40,8 +40,6 @@ Ja esat nesen iegādājies, Google Play var aizņemt brīdi, lai sinhronizētu. Mēģiniet vēlreiz pēc dažām minūtēm, ja jūsu pirkums neparādās. Pārliecinieties, ka esat pieteicies ar to pašu Google kontu, kas izmantots pirkumam. - Monitorēšanas režīms - Kādos apstākļos šī lietotne monitorē Bluetooth datus. Papildu paziņojums Rāda papildu paziņojumu, kad ierīce ir pievienota. Tas ļauj paslēpt pastāvīgo paziņojumu \"Nav ierīču\", atspējojot kanālu \"Ierīces statuss\". Saglabāt paziņojumu pēc atvienošanas @@ -80,8 +78,6 @@ Rādīt savienojuma uznirstošo logu Rādīt uznirstošo logu, kad ierīce pirmo reizi izveido savienojumu. Uznirstošie logi tiek rādīti tikai tad, kad neatrodaties lietotnē. - Uznirstošajiem logiem nepieciešams, lai monitors darbotos. Monitora režīms ir iestatīts uz \"Kad lietotne ir atvērta\", kas aptur monitoru, kad izejat no lietotnes. - Labot Eksperimentāla funkcija Šī funkcija vēl nav pārbaudīta visās ierīcēs. Ja kaut kas nedarbojas pareizi, lūdzu atveriet problēmziņojumu ar atkļūdošanas žurnālu. Atvērt problēmu izsekotāju @@ -222,9 +218,6 @@ Nepieciešama šāda atļauja: Sistēmas brīdinājuma logs Atļaujiet CAPod zīmēt virs citām lietotnēm, lai iespējotu funkciju \"Rādīt uznirstošo logu\". - Kad lietotne ir atvērta - Kad ierīce ir savienota - Vienmēr Kad redzēta Korpuss ir atvērts Ausī @@ -324,7 +317,6 @@ Dzintara Izmanto tapetes krāsas - Uzraudzība Izskats Nesaglabātas izmaiņas diff --git a/app/src/main/res/values-mk-rMK/strings.xml b/app/src/main/res/values-mk-rMK/strings.xml index b7c933f9..14e18b5b 100644 --- a/app/src/main/res/values-mk-rMK/strings.xml +++ b/app/src/main/res/values-mk-rMK/strings.xml @@ -40,8 +40,6 @@ Ако неодамна сте купиле, можно е да поминат неколку моменти додека Google Play не се синхронизира. Обидете се повторно за неколку минути ако купувачката не се прикажува. Проверете дали сте најавени со истата сметка на Google која е употребена за купувачката. - Режим на мониторинг - Под кои околности оваа апликација ги следи податоците од Bluetooth. Дополнително известување Прикажува дополнително известување кога уредот е поврзан. Ова ви овозможува да го скриете трајното известување \"Нема уреди\" со оневозможување на каналот \"Статус на уредот\". Задржи го известувањето по прекинување @@ -80,8 +78,6 @@ Прикажи скокачки прозорец за поврзување Прикажи скокачки прозорец кога уредот се поврзува за прв пат. Скокачките прозорци се прикажуваат само кога не сте во апликацијата. - Скокачките прозорци бараат мониторот да работи. Вашиот режим на мониторирање е поставен на „Кога апликацијата е отворена“, што го запира мониторот кога ќе ја напуштите апликацијата. - Поправи го Експериментална функција Оваа функција сè уште не е тестирана на сите уреди. Ако нешто не работи правилно, ве молиме отворете проблем со дневник за дебагирање. Отвори следач на проблеми @@ -220,9 +216,6 @@ Потребна е следната дозвола: Системски прозорец за предупредување Дозволете CAPod да црта преку други апликации за да ја овозможи функцијата \"Прикажи попап\". - Кога апликацијата е отворена - Кога уредот е поврзан - Секогаш Кога е забележан Куќиштето е отворено Во уво @@ -322,7 +315,6 @@ Килибара Користи бои од тапетот - Мониторинг Изглед Незачувани промени diff --git a/app/src/main/res/values-ml-rIN/strings.xml b/app/src/main/res/values-ml-rIN/strings.xml index d33ac35e..6dfcfd63 100644 --- a/app/src/main/res/values-ml-rIN/strings.xml +++ b/app/src/main/res/values-ml-rIN/strings.xml @@ -40,8 +40,6 @@ നിങ്ങൾ അടുത്തിടെ വാങ്ങിയിട്ടുണ്ടെങ്കിൽ, Google Play സമന്വയിക്കാൻ കുറച്ച് സമയമെടുക്കാം. നിങ്ങളുടെ വാങ്ങൽ ദൃശ്യമാകുന്നില്ലെങ്കിൽ കുറച്ച് മിനിറ്റുകൾക്ക് ശേഷം വീണ്ടും ശ്രമിക്കുക. വാങ്ങലിനായി ഉപയോഗിച്ച അതേ Google അക്കൗണ്ടിൽ സൈൻ ഇൻ ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക. - മോണിറ്റർ മോഡ് - ഈ ആപ്പ് ഏത് സാഹചര്യത്തിലാണ് ബ്ലൂടൂത്ത് ഡാറ്റ നിരീക്ഷിക്കുന്നത്. അധിക അറിയിപ്പ് ഒരു ഉപകരണം കണക്റ്റുചെയ്യുമ്പോൾ ഒരു അധിക അറിയിപ്പ് കാണിക്കുന്നു. \"ഉപകരണ നില\" ചാനൽ പ്രവർത്തനരഹിതമാക്കി സ്ഥിരമായ \"ഉപകരണങ്ങളൊന്നുമില്ല\" അറിയിപ്പ് മറയ്ക്കാൻ ഇത് നിങ്ങളെ അനുവദിക്കുന്നു. വിച്ഛേദിച്ച ശേഷം അറിയിപ്പ് നിലനിർത്തുക @@ -80,8 +78,6 @@ കണക്ഷൻ പോപ്പ്അപ്പ് കാണിക്കുക ഉപകരണം ആദ്യമായി കണക്റ്റുചെയ്യുമ്പോൾ ഒരു പോപ്പ്അപ്പ് കാണിക്കുക. നിങ്ങൾ ആപ്പിൽ ഇല്ലാത്തപ്പോൾ മാത്രം പോപ്പപ്പുകൾ കാണിക്കും. - പോപ്പപ്പുകൾക്ക് മോണിറ്റർ പ്രവർത്തിക്കേണ്ടതുണ്ട്. നിങ്ങളുടെ മോണിറ്റർ മോഡ് \"ആപ്പ് തുറന്നിരിക്കുമ്പോൾ\" എന്നതിലേക്ക് സജ്ജീകരിച്ചിരിക്കുന്നു, ഇത് നിങ്ങൾ ആപ്പ് വിടുമ്പോൾ മോണിറ്റർ നിർത്തും. - ശരിയാക്കുക പരീക്ഷണ സവിശേഷത ഈ സവിശേഷത ഇതുവരെ എല്ലാ ഡിവൈസുകളിലും പരീക്ഷിച്ചിട്ടില്ല. എന്തെങ്കിലും ശരിയായി പ്രവർത്തിക്കുന്നില്ലെങ്കിൽ, ദയവായി ഒരു ഡീബഗ് ലോഗ് സഹിതം ഒരു ഇഷ്യൂ തുറക്കുക. ഇഷ്യൂ ട്രാക്കർ തുറക്കുക @@ -220,9 +216,6 @@ ഇനിപ്പറയുന്ന അനുമതി ആവശ്യമാണ്: സിസ്റ്റം അലേർട്ട് വിൻഡോ \"പോപ്പ്അപ്പ് കാണിക്കുക\" സവിശേഷത സാധ്യമാക്കാൻ മറ്റ് ആപ്പുകളുടെ മുകളിൽ വരയ്ക്കാൻ CAPod-നെ അനുവദിക്കുക. - ആപ്പ് തുറന്നിരിക്കുമ്പോൾ - ഉപകരണം കണക്റ്റുചെയ്യുമ്പോൾ - എപ്പോഴും കാണുമ്പോൾ കേസ് തുറന്നിരിക്കുന്നു ചെവിയിൽ @@ -322,7 +315,6 @@ ആംബർ വാൾപ്പേപർ നിറങ്ങൾ ഉപയോഗിക്കുന്നു - നിരീക്ഷണം രൂപഭാവം സേവ് ചെയ്യാത്ത മാറ്റങ്ങൾ diff --git a/app/src/main/res/values-mn-rMN/strings.xml b/app/src/main/res/values-mn-rMN/strings.xml index 7186c1e8..59c5adf5 100644 --- a/app/src/main/res/values-mn-rMN/strings.xml +++ b/app/src/main/res/values-mn-rMN/strings.xml @@ -40,8 +40,6 @@ Хэрэв та саяхан худалдан авсан бол Google Play синхрончлоход хэдэн мөч зарцуулж магадгүй. Худалдан авалт таны дансанд харагдахгүй байвал хэдэн минутын дараа дахин оролдоно уу. Худалдан авалтад ашигласан Google аккаунтаараа нэвтэрсэн эсэхийг шалгаарай. - Хяналтын горим - Энэ апп Bluetooth-н өгөгдлийг ямар нөхцөлд хянадаг. Нэмэлт мэдэгдэл Төхөөрөмж холбогдсон үед нэмэлт мэдэгдэл харуулна. Энэ нь \"Төхөөрөмжийн төлөв\" сувгийг идэвхгүй болгосноор \"Төхөөрөмж алга\" гэсэн байнгын мэдэгдлийг нуух боломжийг олгоно. Салсны дараа мэдэгдлийг хадгалах @@ -80,8 +78,6 @@ Холболтын попап цонхыг харуулах Төхөөрөмж анх удаа холбогдоход попап цонхыг харуулна. Попап нь зөвхөн та аппликейшнд байхгүй үед харагдана. - Попап нь монитор ажиллаж байхыг шаарддаг. Таны монитор горим \"Апп нээлттэй үед\" гэж тохируулагдсан бөгөөд энэ нь аппликейшнаас гарахад мониторыг зогсооно. - Засах Туршилтын онцлог Энэ функцийг бүх төхөөрөмж дээр туршиж үзээгүй байна. Хэрэв ямар нэг зүйл буруу ажиллаж байвал debug лог хавсаргаж асуудал нээнэ үү. Асуудлын жагсаалт нээх @@ -220,9 +216,6 @@ Дараах зөвшөөрөл шаардлагатай: Системийн анхааруулгын цонх CAPod-д \"Попап харуулах\" боломжийг ажиллуулахын тулд бусад апп-уудын дээр зурах зөвшөөрөл олгоно уу. - Апп нээлттэй үед - Төхөөрөмж холбогдсон үед - Үргэлж Харагдах үед Кейс нээлттэй Чихэнд @@ -322,7 +315,6 @@ Хув Ханын цаасны өнгийг ашиглана - Хяналт Гадаад төрх Хадгалаагүй өөрчлөлтүүд diff --git a/app/src/main/res/values-mr-rIN/strings.xml b/app/src/main/res/values-mr-rIN/strings.xml index 72a9df80..57e28cfb 100644 --- a/app/src/main/res/values-mr-rIN/strings.xml +++ b/app/src/main/res/values-mr-rIN/strings.xml @@ -40,8 +40,6 @@ जर तुम्ही नुकतीच खरेदी केली असेल, तर Google Play ला समक्रमित होण्यास थोडा वेळ लागू शकतो. जर तुमची खरेदी दिसत नसेल, तर काही मिनिटांनी पुन्हा प्रयत्न करा. खरेदीसाठी वापरलेल्या त्याच Google खात्याने साइन इन असल्याची खात्री करा. - मॉनिटर मोड - हे अॅप कोणत्या परिस्थितीत ब्लूटूथ डेटाचे निरीक्षण करते. अतिरिक्त सूचना जेव्हा एखादे डिव्हाइस कनेक्ट केलेले असते तेव्हा अतिरिक्त सूचना दर्शविते. हे आपल्याला \"डिव्हाइस स्थिती\" चॅनेल अक्षम करून कायमस्वरूपी \"कोणतेही डिव्हाइस नाही\" सूचना लपविण्यास अनुमती देते. डिस्कनेक्ट झाल्यानंतर सूचना ठेवा @@ -80,8 +78,6 @@ कनेक्शन पॉपअप दर्शवा डिव्हाइस पहिल्यांदा कनेक्ट झाल्यावर पॉपअप दर्शवा. पॉपअप केवळ तेव्हा दाखवले जातात जेव्हा तुम्ही अॅपमध्ये नसता. - पॉपअपसाठी मॉनिटर चालू असणे आवश्यक आहे. तुमचा मॉनिटर मोड \"अॅप उघडे असताना\" असा सेट केला आहे, जो तुम्ही अॅप सोडल्यावर मॉनिटर बंद करतो. - दुरुस्त करा प्रयोगात्मक वैशिष्ट्य हे वैशिष्ट्य अद्याप सर्व डिव्हाइसवर तपासले गेले नाही. जर काही योग्यरित्या काम करत नसेल, तर कृपया डीबग लॉगसह एक समस्या उघडा. समस्या ट्रॅकर उघडा @@ -220,9 +216,6 @@ खालील परवानगी आवश्यक आहे: सिस्टम अलर्ट विंडो \"पॉपअप दर्शवा\" वैशिष्ट्य शक्य करण्यासाठी CAPod ला इतर अॅप्सवर चित्रे काढण्याची अनुमती द्या. - अॅप उघडे असताना - डिव्हाइस कनेक्ट असताना - नेहमी दिसल्यावर केस उघडे कानात @@ -322,7 +315,6 @@ अंबर वॉलपेपर रंग वापरतो - मॉनिटरिंग स्वरूप सेव्ह न केलेले बदल diff --git a/app/src/main/res/values-ms/strings.xml b/app/src/main/res/values-ms/strings.xml index 3ddbb66a..69b83680 100644 --- a/app/src/main/res/values-ms/strings.xml +++ b/app/src/main/res/values-ms/strings.xml @@ -40,8 +40,6 @@ Jika anda baru membeli, Google Play mungkin mengambil sedikit masa untuk menyegerakkan. Cuba semula dalam beberapa minit jika pembelian anda tidak muncul. Pastikan anda log masuk dengan akaun Google yang sama yang digunakan untuk pembelian. - Mod monitor - Dalam keadaan apa aplikasi ini memantau data Bluetooth. Pemberitahuan tambahan Memaparkan pemberitahuan tambahan apabila peranti disambungkan. Ini membolehkan anda menyembunyikan pemberitahuan kekal \"Tiada peranti\" dengan melumpuhkan saluran \"Status peranti\". Kekalkan pemberitahuan selepas nyahsambung @@ -80,8 +78,6 @@ Tunjukkan pop timbul sambungan Tunjukkan pop timbul apabila peranti disambungkan buat kali pertama. Pop timbul hanya ditunjukkan apabila anda tidak berada dalam aplikasi. - Pop timbul memerlukan monitor sedang berjalan. Mod monitor anda ditetapkan kepada \"Apabila aplikasi dibuka\", yang menghentikan monitor apabila anda meninggalkan aplikasi. - Betulkan Ciri eksperimental Ciri ini belum diuji pada semua peranti lagi. Jika sesuatu tidak berfungsi dengan betul, sila buka isu dengan log nyahpepijat. Buka Penjejak Isu @@ -218,9 +214,6 @@ Kebenaran berikut diperlukan: Tetingkap Amaran Sistem Benarkan CAPod melukis di atas apl lain untuk membolehkan ciri \"Tunjukkan pop timbul\". - Apabila apl dibuka - Apabila peranti disambungkan - Sentiasa Apabila dilihat Bekas dibuka Dalam telinga @@ -320,7 +313,6 @@ Amber Menggunakan warna kertas dinding - Pemantauan Penampilan Perubahan Tidak Disimpan diff --git a/app/src/main/res/values-my-rMM/strings.xml b/app/src/main/res/values-my-rMM/strings.xml index fec96ad5..de00b27c 100644 --- a/app/src/main/res/values-my-rMM/strings.xml +++ b/app/src/main/res/values-my-rMM/strings.xml @@ -40,8 +40,6 @@ မကြာသေးမီက ဝယ်ယူခဲ့လျှင် Google Play တွင် ချိန်ကိုက်ရန် အချိန်အနည်းငယ် ကြာနိုင်သည်။ သင်၏ ဝယ်ယူမှု မပေါ်လာပါက မိနစ်အနည်းငယ်အကြာ တဖန်ကြိုးစားပါ။ ဝယ်ယူမှုအတွက် အသုံးပြုခဲ့သော Google အကောင့်တူညီသည်ဖြင့် ဝင်ရောက်ထားကြောင်း သေချာပါစေ။ - စောင့်ကြည့်မုဒ် - ဤအက်ပ်က Bluetooth ဒေတာကို မည်သည့်အခြေအနေတွင် စောင့်ကြည့်သနည်း။ အပိုအသိပေးချက် စက်ပစ္စည်းတစ်ခုချိတ်ဆက်သောအခါ အပိုအသိပေးချက်တစ်ခုပြသသည်။ ၎င်းသည် \"စက်ပစ္စည်းအခြေအနေ\" ချန်နယ်ကို ပိတ်ခြင်းဖြင့် အမြဲတမ်း \"စက်ပစ္စည်းမရှိပါ\" အသိပေးချက်ကို ဝှက်ထားနိုင်စေသည်။ ချိတ်ဆက်မှုပြတ်ပြီးနောက် အသိပေးချက်ကိုထားရှိပါ @@ -80,8 +78,6 @@ ချိတ်ဆက်မှုပြတင်းပေါက်ပြသရန် စက်ပစ္စည်းပထမဆုံးချိတ်ဆက်သည့်အခါ ပြတင်းပေါက်တစ်ခုပြသပါ။ သင် အပ်ငယ်ထဲ မရှိသောအခါတွင်သာ ပေါ့အပ်ဝင်းများ ပြသသည်။ - ပေါ့အပ်ဝင်းများအတွက် မော်နီတာ လည်ပတ်နေရန် လိုအပ်သည်။ သင်၏ မော်နီတာမုဒ်ကို \"အပ်ငယ်ဖွင့်ထားစဉ်\" ဟု သတ်မှတ်ထားပြီး အပ်ငယ်မှ ထွက်သောအခါ မော်နီတာကို ရပ်တန့်သည်။ - ပြင်ဆင်ရန် စမ်းသပ်ဆဲ လုပ်ဆောင်ချက် ဤလုပ်ဆောင်ချက်ကို ကိရိယာအားလုံးတွင် မစစ်ဆေးရသေးပါ။ မှားယွင်းနေသည့် အရာတစ်ခုခုရှိပါက debug log ပါသော ပြဿနာတစ်ခု ဖွင့်ပေးပါ။ ပြဿနာ ခြေရာခံမှုကို ဖွင့်ရန် @@ -218,9 +214,6 @@ အောက်ပါခွင့်ပြုချက်လိုအပ်သည်: စနစ်သတိပေးချက်ပြတင်းပေါက် \"ပြတင်းပေါက်ပြသခြင်း\" အင်္ဂါရပ်ကိုဖြစ်နိုင်စေရန် CAPod အား အခြားအက်ပ်များပေါ်တွင် ပုံဆွဲခွင့်ပြုပါ။ - အက်ပ်ဖွင့်ထားသောအခါ - စက်ပစ္စည်းချိတ်ဆက်ထားသောအခါ - အမြဲတမ်း တွေ့မြင်သောအခါ အိတ်ဖွင့်ထားသောအခါ နားထဲတွင် @@ -320,7 +313,6 @@ အဝါ နောခံပုံ အရောင်များ သုံးသည် - စောင့်ကြည့်မှု ပုံစံ မသိမ်းဆည်းရသေးသော ပြောင်းလဲမှုများ diff --git a/app/src/main/res/values-nb/strings.xml b/app/src/main/res/values-nb/strings.xml index 67cc893c..45c8de68 100644 --- a/app/src/main/res/values-nb/strings.xml +++ b/app/src/main/res/values-nb/strings.xml @@ -40,8 +40,6 @@ Hvis du nylig har kjøpt, kan det ta et øyeblikk før Google Play synkroniserer. Prøv igjen om noen minutter hvis kjøpet ditt ikke vises. Sørg for at du er logget inn med den samme Google-kontoen som ble brukt til kjøpet. - Overvåkingsmodus - Under hvilke omstendigheter denne appen skal overvåke Bluetooth-data. Ekstra varsling Viser en ekstra varsling når en enhet er tilkoblet. Dette lar deg skjule det permanente varselet \"Ingen enheter\" ved å deaktivere kanalen \"Enhetsstatus\". Behold varsling etter frakobling @@ -80,8 +78,6 @@ Vis tilkoblings-popup Vis en popup første gang enheten kobles til. Popup-vinduer vises bare når du ikke er i appen. - Popup-vinduer krever at monitoren kjører. Monitormodusen din er satt til «Når appen er åpen», som stopper monitoren når du forlater appen. - Fiks det Eksperimentell funksjon Denne funksjonen er ikke testet på alle enheter ennå. Hvis noe ikke fungerer som det skal, kan du åpne en sak med en feilsøkingslogg. Åpne sporing av saker @@ -220,9 +216,6 @@ Følgende tillatelse er påkrevd: Systemvarslingsvindu Tillat CAPod å tegne over andre apper for å gjøre funksjonen \"Vis popup\" mulig. - Når appen er åpen - Når enheten er tilkoblet - Alltid Når sett Etuiet er åpent I øret @@ -322,7 +315,6 @@ Rav Bruker bakgrunnsfarger - Overvåkning Utseende Ulagrede endringer diff --git a/app/src/main/res/values-ne-rNP/strings.xml b/app/src/main/res/values-ne-rNP/strings.xml index 0f3eb310..33e7799f 100644 --- a/app/src/main/res/values-ne-rNP/strings.xml +++ b/app/src/main/res/values-ne-rNP/strings.xml @@ -40,8 +40,6 @@ यदि तपाईंले भर्खरै खरिद गर्नुभएको छ भने, Google Play लाई सिङ्क गर्न केही समय लाग्न सक्छ। तपाईंको खरिद देखिएन भने केही मिनेटमा फेरि प्रयास गर्नुहोस्। खरिदमा प्रयोग गरिएको Google खाताबाट साइन इन गर्नुभएको छ भनी निश्चित गर्नुहोस्। - मोनिटर मोड - यो एपले कुन परिस्थितिमा ब्लुटुथ डाटा निगरानी गर्छ। अतिरिक्त सूचना उपकरण जडान हुँदा अतिरिक्त सूचना देखाउँछ। यसले तपाईंलाई \"उपकरण स्थिति\" च्यानल असक्षम गरेर स्थायी \"कुनै उपकरण छैन\" सूचना लुकाउन अनुमति दिन्छ। विच्छेद पछि सूचना राख्नुहोस् @@ -80,8 +78,6 @@ कनेक्सन पपअप देखाउनुहोस् उपकरण पहिलो पटक जडान हुँदा पपअप देखाउनुहोस्। पप-अपहरू केवल तब देखाइन्छन् जब तपाईं एप्लिकेसनमा हुनुहुन्न। - पप-अपहरूका लागि मनिटर चलिरहेको हुनुपर्छ। तपाईंको मनिटर मोड \"एप खुला हुँदा\" मा सेट गरिएको छ, जसले एप बाहिर जाँदा मनिटर बन्द गर्छ। - ठीक गर्नुहोस् प्रयोगात्मक सुविधा यो सुविधा अझै सबै उपकरणहरूमा परीक्षण गरिएको छैन। यदि केही सही काम गरिरहेको छैन भने, कृपया डिबग लगसहित एउटा समस्या खोल्नुहोस्। समस्या ट्र्याकर खोल्नुहोस् @@ -220,9 +216,6 @@ निम्न अनुमति आवश्यक छ: प्रणाली अलर्ट विन्डो \"पपअप देखाउनुहोस्\" सुविधा सम्भव बनाउन CAPod लाई अन्य एपहरूमाथि कोर्न अनुमति दिनुहोस्। - एप खुला हुँदा - उपकरण जडान हुँदा - सधैं देखिएमा केस खुला छ कानमा @@ -322,7 +315,6 @@ एम्बर वालपेपर रङ्गहरू प्रयोग गर्छ - निगरानी देखावट नसुरक्षित परिवर्तनहरू diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 21c9d55b..5f7ac6a7 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -40,8 +40,6 @@ Als je de app onlangs hebt gekocht, kan het even duren voordat Google Play de gegevens synchroniseert. Probeer het over een paar minuten opnieuw als je aankoop niet verschijnt. Zorg ervoor dat je bent aangemeld met hetzelfde Google-account dat is gebruikt voor de aankoop. - Monitor modus - Onder welke omstandigheden monitort deze app Bluetooth-gegevens. Extra melding Toont een extra melding wanneer een apparaat is verbonden. Hiermee kun je de permanente melding \"Geen apparaten\" verbergen door het kanaal \"Apparaatstatus\" uit te schakelen. Melding behouden na verbreken verbinding @@ -80,8 +78,6 @@ Verbindingspop-up weergeven Toon een pop-up wanneer het apparaat voor de eerste keer verbinding maakt. Pop-ups worden alleen weergegeven wanneer je de app niet gebruikt. - Pop-ups vereisen dat de monitor actief is. Je monitormodus is ingesteld op \"Wanneer app geopend is\", waardoor de monitor stopt wanneer je de app verlaat. - Herstel het Experimentele functie Deze functie is nog niet op alle apparaten getest. Als er iets niet correct werkt, open dan een probleem met een foutopsporingslogboek. Probleemtracker openen @@ -220,9 +216,6 @@ De volgende toestemming is vereist: Systeemwaarschuwingsvenster Geef CAPod de mogelijkheid om over andere apps heen te tekenen, zodat de functie \"Pop-up weergeven\" mogelijk is. - Wanneer de app geopend is - Wanneer het apparaat is aangesloten - Altijd Wanneer gezien Zaak is geopend In oor @@ -322,7 +315,6 @@ Amber Gebruikt achtergrondkleuren - Monitoring Uiterlijk Niet-opgeslagen Wijzigingen diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 6207f0e4..98c8f3cd 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -40,8 +40,6 @@ Jeśli niedawno dokonałeś zakupu, synchronizacja z Google Play może chwilę potrwać. Spróbuj ponownie za kilka minut, jeśli twój zakup się nie pojawi. Upewnij się, że jesteś zalogowany na to samo konto Google, które zostało użyte do zakupu. - Tryb monitorowania - W pewnych okolicznościach aplikacja może monitorować dane Bluetooth. Dodatkowe powiadomienie Wyświetl dodatkowe powiadomienie, gdy urządzenie jest podłączone. Pozwala to ukryć stałe powiadomienie \"Brak urządzeń\", wyłączając kanał \"Status urządzenia\". Zachowaj powiadomienie po rozłączeniu @@ -80,8 +78,6 @@ Wyświetl okienko połączenia Wyświetla okienko, gdy urządzenie łączy się po raz pierwszy. Wyskakujące okienka są wyświetlane tylko wtedy, gdy nie jesteś w aplikacji. - Wyskakujące okienka wymagają uruchomionego monitora. Tryb monitora jest ustawiony na „Gdy aplikacja jest otwarta”, co zatrzymuje monitor po opuszczeniu aplikacji. - Napraw to Funkcja eksperymentalna Ta funkcja nie została jeszcze przetestowana na wszystkich urządzeniach. Jeśli coś nie działa poprawnie, otwórz zgłoszenie z dziennikiem debugowania. Otwórz śledzenie problemów @@ -226,9 +222,6 @@ K4r0lSz; Następujące uprawnienie jest wymagane: Okna alertów systemowych Zezwól na wyświetlanie CAPod nad innymi aplikacjami, aby aktywować funkcję \"Wyświetlanie informacji\". - Gdy aplikacja jest uruchomiona - Gdy urządzenie jest podłączone - Zawsze Kiedy widoczne Etui jest otwarte W uszach @@ -328,7 +321,6 @@ K4r0lSz; Bursztynowy Używaj kolorów tapety - Monitorowanie Wygląd Niezapisane zmiany diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 9c6f030c..63db9ba7 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -40,8 +40,6 @@ Se você comprou recentemente, pode demorar um momento para o Google Play sincronizar. Tente novamente em alguns minutos se a sua compra não aparecer. Certifique-se de estar conectado com a mesma conta Google usada para a compra. - Modo de monitoramento - Em quais circunstâncias este aplicativo monitora os dados do Bluetooth. Notificação extra Mostra uma notificação extra quando um dispositivo está conectado. Isso permite que você oculte a notificação permanente \"Nenhum dispositivo\" desativando o canal \"Status do dispositivo\". Manter notificação após desconectar @@ -80,8 +78,6 @@ Mostrar pop-up de conexão Mostrar um pop-up quando o dispositivo se conectar pela primeira vez. Os popups são exibidos somente quando você não está no aplicativo. - Os popups exigem que o monitor esteja em execução. O modo do monitor está definido como \"Quando o aplicativo está aberto\", que interrompe o monitor quando você sai do aplicativo. - Corrigir Recurso experimental Este recurso ainda não foi testado em todos os dispositivos. Se algo não estiver funcionando corretamente, abra um problema com um registro de depuração. Abrir Rastreador de Problemas @@ -220,9 +216,6 @@ A seguinte permissão é necessária: Janela de Alerta do Sistema Permitir que o CAPod desenhe sobre outros aplicativos para tornar possível o recurso \"Mostrar PopUp\". - Quando o aplicativo está aberto - Quando o dispositivo está conectado - Sempre Quando visto Estojo aberto No ouvido @@ -322,7 +315,6 @@ Âmbar Usa cores do papel de parede - Monitoramento Aparência Alterações Não Salvas diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index 039a8ecf..d98f1781 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -40,8 +40,6 @@ Se comprou recentemente, pode demorar um momento até o Google Play sincronizar. Tente novamente em alguns minutos se a sua compra não aparecer. Certifique-se de que está com sessão iniciada na mesma conta Google usada para a compra. - Modo de monitorização - Em que circunstâncias esta aplicação monitoriza os dados Bluetooth. Notificação extra Mostra uma notificação extra quando um dispositivo está ligado. Isto permite-lhe ocultar a notificação permanente \"Sem dispositivos\" desativando o canal \"Estado do dispositivo\". Manter notificação após desligar @@ -80,8 +78,6 @@ Mostrar pop-up de ligação Mostrar um pop-up quando o dispositivo se liga pela primeira vez. Os popups só são mostrados quando não está na aplicação. - Os popups requerem que o monitor esteja em execução. O seu modo de monitor está definido como \"Quando a aplicação está aberta\", o que para o monitor quando sai da aplicação. - Corrigir Funcionalidade experimental Esta funcionalidade ainda não foi testada em todos os dispositivos. Se algo não estiver a funcionar corretamente, por favor abra um problema com um registo de depuração. Abrir Rastreador de Problemas @@ -220,9 +216,6 @@ A seguinte permissão é necessária: Janela de alerta do sistema Permitir que o CAPod desenhe sobre outras aplicações para tornar possível a funcionalidade \"Mostrar PopUp\". - Quando a aplicação está aberta - Quando o dispositivo está ligado - Sempre Quando visto Caixa aberta No ouvido @@ -322,7 +315,6 @@ Âmbar Usa as cores do fundo de ecrã - Monitorização Aparência Alterações Não Guardadas diff --git a/app/src/main/res/values-rm/strings.xml b/app/src/main/res/values-rm/strings.xml index dac2f5e2..669c2ba0 100644 --- a/app/src/main/res/values-rm/strings.xml +++ b/app/src/main/res/values-rm/strings.xml @@ -40,8 +40,6 @@ Sche vus avais cumprà dacurt, po dar ina muntada avantgut che Google Play sincronisescha. Empruva anc ina giada suenter intgins minutas sche la cumpra n\'appara betg. Controllai che vus seis connectà cun il medem conto Google duvrà per la cumpra. - Modus da surveglianza - Sut tge circumstanzas surveglia questa app datas da Bluetooth. Notificaziun supplementara Mussa ina notificaziun supplementara cura ch\'in apparat è connectà. Quai permetta da zoppar la notificaziun permanenta \"Nagins apparats\" cun deactivar il chanal \"Stadi da l\'apparat\". Mantegnair la notificaziun suenter la deconnexiun @@ -80,8 +78,6 @@ Mussar il popup da connexiun Mussar in popup cura che l\'apparat sa connecta per l\'emprima giada. Fenestras da popup vegnan mo mussadas cura ch\'i na sei betg en l\'app. - Fenestras da popup dovran il monitor activ. Voss modus da monitor è fixà sin \"Cura ch\'il app è avert\", che stoppa il monitor cura ch\'i lascha l\'app. - Correger Funcziun experimentala Questa funcziun n\'è anc betg vegnida testada sin tuts apparats. Sch\'insatge na funcziuna betg correctamain, vegnì plais avrir ina dumonda cun in protocol da debug. Avrir il tractur da dumondas @@ -220,9 +216,6 @@ La suandanta permissiun è necessaria: Fanestra d\'avis dal sistem Permetter a CAPod da dessegnar sur autras apps per render pussaivla la funcziun \"Mussar PopUp\". - Cura che l\'app è averta - Cura che l\'apparat è connectà - Adina Cura che vis Scatla averta En l\'ureglia @@ -322,7 +315,6 @@ Ambra Utilisescha ils colurs dal fund da visur - Surveglianza Apparenza Midadas betg memorisadas diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml index b624d80c..268b9d35 100644 --- a/app/src/main/res/values-ro/strings.xml +++ b/app/src/main/res/values-ro/strings.xml @@ -40,8 +40,6 @@ Dacă ați cumpărat recent, poate dura câteva momente până când Google Play sincronizează. Înercați din nou în câteva minute dacă achiziția nu apare. Asigurați-vă că sunteți conectat cu același cont Google utilizat pentru achiziție. - Modul monitorizare - În ce circumstanțe această aplicație monitorizează datele Bluetooth. Notificare suplimentară Afișează o notificare suplimentară atunci când un dispozitiv este conectat. Acest lucru vă permite să ascundeți notificarea permanentă \"Niciun dispozitiv\" prin dezactivarea canalului \"Stare dispozitiv\". Păstrează notificarea după deconectare @@ -80,8 +78,6 @@ Afișați pop-upul conexiunii Afișați un pop-up când dispozitivul se conectează pentru prima dată. Ferestrele pop-up sunt afișate doar când nu ești în aplicație. - Ferestrele pop-up necesită ca monitorul să ruleze. Modul de monitor este setat la „Când aplicația este deschisă”, ceea ce oprește monitorul când ieși din aplicație. - Remediază Funcție experimentală Această funcție nu a fost testată pe toate dispozitivele. Dacă ceva nu funcționează corect, te rugăm să deschizi un raport cu un jurnal de depanare. Deschide Issue Tracker @@ -222,9 +218,6 @@ Următoarea permisiune este necesară: Fereastră alertă sistem Permiteți CAPod să deseneze peste alte aplicații pentru a face posibilă funcția \"Afișare PopUp\". - Când aplicația este deschisă - Când dispozitivul este conectat - Întotdeauna Când este detectat Carcasa este deschisă În ureche @@ -324,7 +317,6 @@ Chihlimbar Folosește culorile fundalului - Monitorizare Aspect Modificări Nesalvate diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 3f9de523..9b247575 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -40,8 +40,6 @@ Если Вы недавно совершили покупку, Google Play может потребоваться некоторое время для синхронизации. Попробуйте снова через несколько минут, если Ваша покупка не отображается. Убедитесь, что Вы вошли в ту же учётную запись Google, которая использовалась при покупке. - Режим мониторинга - При каких условиях приложение отслеживает данные Bluetooth. Дополнительное уведомление Показывать дополнительное уведомление, когда устройство подключено. Это позволяет скрыть постоянное уведомление «Нет устройств», отключая канал «Статус устройства». Оставить уведомление после отключения @@ -80,8 +78,6 @@ Показать соединение Показывать окно при первом подключении. Всплывающие окна отображаются только когда Вы не находитесь в приложении. - Для всплывающих окон необходимо, чтобы монитор был запущен. Режим монитора установлен на «Когда приложение открыто», что останавливает монитор при выходе из приложения. - Исправить Экспериментальная функция Эта функция ещё не протестирована на всех устройствах. Если что-то работает неправильно, пожалуйста, создайте обращение с журналом отладки. Открыть трекер проблем @@ -225,9 +221,6 @@ AL_Cool_T Требуется следующее разрешение: Окно системных предупреждений Позволить CAPod наложение поверх других приложений для работы функции \"Всплывающие сообщения\". - Когда приложение открыто - Когда устройство подключено - Всегда При обнаружении Футляр открыт В ухе @@ -327,7 +320,6 @@ AL_Cool_T Янтарный Использовать цвета обоев - Мониторинг Внешний вид Несохранённые изменения diff --git a/app/src/main/res/values-sc-rIT/strings.xml b/app/src/main/res/values-sc-rIT/strings.xml index 45f043c0..6e0629b0 100644 --- a/app/src/main/res/values-sc-rIT/strings.xml +++ b/app/src/main/res/values-sc-rIT/strings.xml @@ -40,8 +40,6 @@ Si as cumporadu recentemente, podet tocare un momentu pro Google Play a sincronizare. Proa a torrare in pagas minutos si sa compora tua no cumparit. Asegurade-bos de èssere intradu cun su matessi contu Google usadu pro sa compora. - Modalidade de monitoràgiu - In cales tzircustàntzias custa app monitorat datos Bluetooth. Notìfica extra Mustrat una notìfica extra cando unu dispositivu est cullegadu. Custu ti permitit de cuare sa notìfica permanente \"Perunu dispositivu\" disativende su canale \"Istadu de su dispositivu\". Mantene sa notìfica a pustis de sa disconnexione @@ -80,8 +78,6 @@ Mustra popup de cullegamentu Mustra unu popup cando su dispositivu si cullegat sa prima borta. Sos popup si morant solu cando non ses in s\'app. - Sos popup rechiren chi su monitor siat in esecuziione. Sa modalidade monitor est impostada a \"Cando s\'app est aberta\", chi bloccat su monitor cando baddas dae s\'app. - Corrègelo Funzionalidade esperimentale Custa funzionalidade non est ancora istada testada in totu sos dispositivos. Si calicosa non funtzionat bene, abre un\'issue cun unu log de debug. Abri su Segugi de Issues @@ -220,9 +216,6 @@ Su permissu in fata est netzessàriu: Ventana de alerta de su sistema Permiti a CAPod de disegnare subra àteras apps pro rèndere possìbile sa funtzione \"Mustra PopUp\". - Cando s\'app est aberta - Cando su dispositivu est cullegadu - Sèmper Cando est bidu Sa càscia est aberta In s\'origra @@ -322,7 +315,6 @@ Ambra Usat is colores de su sfundu - Monitoraduru Aparentzia Modìficas non sarvadas diff --git a/app/src/main/res/values-si-rLK/strings.xml b/app/src/main/res/values-si-rLK/strings.xml index 87323a2c..fc8c4f19 100644 --- a/app/src/main/res/values-si-rLK/strings.xml +++ b/app/src/main/res/values-si-rLK/strings.xml @@ -40,8 +40,6 @@ ඔබ මෑතකදී මිලදී ගත්නේ නම්, Google Play සමමුහුර්ත කිරීමට මොහොතක් ගත විය හැක. ඔබේ මිලදී ගැනීම දිස් නොවේ නම් මිනිත්තු කිහිපයකින් නැවත උත්සාහ කරන්න. මිලදී ගැනීම සඳහා භාවිතා කළ එකම Google ගිණුමෙන් ඔබ පුරනය වී ඇති බවට සහතික වන්න. - නිරීක්ෂණ ප්‍රකාරය - මෙම යෙදුම කුමන තත්වයන් යටතේ Bluetooth දත්ත නිරීක්ෂණය කරයිද යන්න. අමතර දැනුම්දීම උපාංගයක් සම්බන්ධ වූ විට අමතර දැනුම්දීමක් පෙන්වයි. \"උපාංග තත්ත්වය\" නාලිකාව අක්‍රීය කිරීමෙන් \"උපාංග නොමැත\" ස්ථිර දැනුම්දීම සැඟවීමට මෙය ඔබට ඉඩ සලසයි. විසන්ධි වූ පසු දැනුම්දීම තබන්න @@ -80,8 +78,6 @@ සම්බන්ධතා පොප්-අප් පෙන්වන්න උපාංගය පළමු වරට සම්බන්ධ වූ විට පොප්-අප් එකක් පෙන්වන්න. ඔබ යෙදුම තුළ නොසිටින විට පමණක් පොප්අප් දර්ශනය වේ. - පොප්අප් සඳහා නිරීක්ෂකය ක්‍රියාත්මක විය යුතුය. ඔබේ නිරීක්ෂක ප්‍රකාරය \"යෙදුම විවෘතව ඇති විට\" ලෙස සකසා ඇති අතර, ඔබ යෙදුම හැර ගිය විට නිරීක්ෂකය නවතා ලයි. - නිවැරදි කරන්න අත්හදා බැලීමේ ලක්ෂණය මෙම ලක්ෂණය තවම සියලු උපකරණවල පරීක්ෂා කර නොමැත. යමක් නිවැරදිව ක්‍රියා නොකරන්නේ නම්, කරුණාකර debug log එකක් සමඟ ගැටළුවක් විවෘත කරන්න. Issue Tracker විවෘත කරන්න @@ -220,9 +216,6 @@ පහත අවසරය අවශ්‍ය වේ: පද්ධති ඇඟවුම් කවුළුව \"පොප්-අප් පෙන්වන්න\" විශේෂාංගය හැකි කිරීමට CAPod හට වෙනත් යෙදුම් මත අඳින්නට ඉඩ දෙන්න. - යෙදුම විවෘතව ඇති විට - උපාංගය සම්බන්ධ වූ විට - සෑමවිටම දුටු විට කවරය විවෘතයි කනේ @@ -322,7 +315,6 @@ ඇම්බර් වලාකුළිත් වර්ණ භාවිත කරයි - පරිශීලනය පෙනුම සුරැකීමට අවශ්‍ය වෙනස්කම් diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index f6448ade..8f7c5cc8 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -40,8 +40,6 @@ Ak ste nedávno nakúpili, môže chvíľu trvať, kým Google Play synchronizuje. Skúste to znova o niekoľko minút, ak sa váš nákup nezobrazí. Uistite sa, že ste prihlásení rovnakým účtom Google, ktorý ste použili pri nákupe. - Režim monitorovania - Za akých okolností táto aplikácia monitoruje údaje Bluetooth. Dodatočné oznámenie Zobrazí dodatočné oznámenie keď je zariadenie pripojené. To umožňuje skryť trvalé oznámenie \"Žiadne zariadenia\" vypnutím kanálu \"Stav zariadenia\". Ponechať oznámenie po odpojení @@ -80,8 +78,6 @@ Zobraziť vyskakovacie okno pri pripojení Pri prvom pripojení zariadenia zobraziť vyskakovacie okno. Vyskakovacie okná sa zobrazujú iba keď nie ste v aplikácii. - Vyskakovacie okná vyžadujú, aby monitor bol spustený. Váš režim monitora je nastavený na Keď je aplikácia otvorená, čo zastaví monitor po opustení aplikácie. - Opraviť Experimentálna funkcia Táto funkcia ešte nebola otestovaná na všetkých zariadeniach. Ak niečo nefunguje správne, otvorte prosím chybové hlásenie s protokolom ladenia. Otvoriť sledovač problémov @@ -224,9 +220,6 @@ Je vyžadované nasledujúce povolenie: Systémové výstražné okno Povoľte CAPodu kresliť cez iné aplikácie, aby bola možná funkcia \"Zobraziť vyskakovacie okno\". - Keď je aplikácia otvorená - Keď je zariadenie pripojené - Vždy Keď je videné Puzdro je otvorené V uchu @@ -326,7 +319,6 @@ Jantárová Používa farby tapety - Monitorovanie Vzhľad Neuložené zmeny diff --git a/app/src/main/res/values-sl/strings.xml b/app/src/main/res/values-sl/strings.xml index 79837a1c..5ebd368a 100644 --- a/app/src/main/res/values-sl/strings.xml +++ b/app/src/main/res/values-sl/strings.xml @@ -40,8 +40,6 @@ Če ste pred kratkim opravili nakup, lahko traja nekaj trenutkov, da Google Play sinhronizira. Če nakup ni viden, poskusite znova čez nekaj minut. Prepričajte se, da ste prijavljeni z istim računom Google, ki ste ga uporabili za nakup. - Način spremljanja - Pod kakšnimi pogoji ta aplikacija spremlja podatke Bluetooth. Dodatno obvestilo Prikaže dodatno obvestilo, ko je naprava povezana. To vam omogoča, da skrijete trajno obvestilo \"Ni naprav\" tako, da onemogočite kanal \"Stanje naprave\". Ohrani obvestilo po prekinitvi povezave @@ -80,8 +78,6 @@ Pokaži pojavno okno povezave Pokaži pojavno okno, ko se naprava prvič poveže. Pojavna okna so prikazana samo, ko niste v aplikaciji. - Pojavna okna zahtevajo, da monitor deluje. Način monitorja je nastavljen na »Ko je aplikacija odprta«, ki ustavi monitor, ko zapustite aplikacijo. - Popravi Eksperimentalna funkcija Ta funkcija še ni bila preizkušena na vseh napravah. Če kaj ne deluje pravilno, odprite poročilo o težavi z dnevnikom za odpravljanje napak. Odpri sledilnik težav @@ -224,9 +220,6 @@ Zahtevano je naslednje dovoljenje: Sistemsko opozorilno okno Dovolite CAPod risanje čez druge aplikacije, da omogočite funkcijo \"Pokaži pojavno okno\". - Ko je aplikacija odprta - Ko je naprava povezana - Vedno Ko je zaznana Ohišje je odprto V ušesu @@ -326,7 +319,6 @@ Jantarna Uporablja barve ozadja - Nadzor Videz Neshranjene spremembe diff --git a/app/src/main/res/values-sq-rAL/strings.xml b/app/src/main/res/values-sq-rAL/strings.xml index 8a29376d..2c226ac5 100644 --- a/app/src/main/res/values-sq-rAL/strings.xml +++ b/app/src/main/res/values-sq-rAL/strings.xml @@ -40,8 +40,6 @@ Nëse keni blerë së fundmi, mund të duhet pak kohë që Google Play të sinkronizohet. Provo sërish pas disa minutash nëse blerja juaj nuk shfaqet. Sigurohuni që jeni identifikuar me të njëjtin llogari Google të përdorur për blerjen. - Modaliteti i monitorimit - Në çfarë rrethanash ky aplikacion monitoron të dhënat Bluetooth. Njoftim shtesë Shfaq një njoftim shtesë kur një pajisje lidhet. Kjo ju lejon të fshihni njoftimin e përhershëm \"Asnjë pajisje\" duke çaktivizuar kanalin \"Statusi i pajisjes\". Mbaj njoftimin pas shkëputjes @@ -80,8 +78,6 @@ Shfaq popup-in e lidhjes Shfaq një popup kur pajisja lidhet për herë të parë. Dritaret kërcyese shfaqen vetëm kur nuk jeni në aplikacion. - Dritaret kërcyese kërkojnë që monitorizuesi të jetë në punë. Modaliteti i monitorit është vendosur në \"Kur aplikacioni është i hapur\", i cili ndalon monitorin kur largoheni nga aplikacioni. - Rregulloje Funksion eksperimental Ky funksion nuk është testuar ende në të gjitha pajisjet. Nëse diçka nuk funksionon siç duhet, ju lutemi hapni një problem me një regjistër korrigjimi. Hap Gjurmuesin e Problemeve @@ -220,9 +216,6 @@ Leja e mëposhtme kërkohet: Dritare Alarmi Sistemi Lejoni CAPod të vizatojë mbi aplikacionet e tjera për të mundësuar veçorinë \"Shfaq PopUp\". - Kur aplikacioni është i hapur - Kur pajisja është e lidhur - Gjithmonë Kur shihet Kutia është e hapur Në vesh @@ -322,7 +315,6 @@ Amber Përdor ngjyrat e sfondit - Monitorimi Pamja Ndryshime të paruajtura diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index d149a133..666f72c5 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -40,8 +40,6 @@ Ако сте скоро купили, можда ће бити потребно неколико тренутака да Google Play синхронизује. Покушајте поново за неколико минута ако ваша куповина не појави. Проверите да сте пријављени истим Google налогом коришћеним за куповину. - Режим надгледања - Под којим околностима ова апликација надгледа Bluetooth податке. Додатно обавештење Приказује додатно обавештење када је уређај повезан. Ово вам омогућава да сакријете трајно обавештење „Нема уређаја” онемогућавањем канала „Статус уређаја”. Задржи обавештење након прекида везе @@ -80,8 +78,6 @@ Прикажи искачући прозор везе Прикажи искачући прозор када се уређај први пут повеже. Искачући прозори се приказују само када нисте у апликацији. - Искачући прозори захтевају да монитор буде покренут. Ваш режим монитора је постављен на „Када је апликација отворена“, што зауставља монитор када напустите апликацију. - Поправи Експериментална функција Ова функција још увек није тестирана на свим уређајима. Ако нешто не ради исправно, молимо отворите пријаву са дневником отклањања грешака. Отвори праћач проблема @@ -222,9 +218,6 @@ Потребна је следећа дозвола: Приказ преко других апликација Дозволите CAPod-у да се приказује преко других апликација да би функција \"Прикажи искачући прозор\" била могућа. - Када је апликација отворена - Када је уређај повезан - Увек Када се види Футрола је отворена У уху @@ -324,7 +317,6 @@ Ћилибарна Користи боје позадине - Надзор Изглед Несачуване измене diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index 35a42b99..b2b20eef 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -40,8 +40,6 @@ Om du nyligen gjort ett köp kan det ta en stund för Google Play att synkronisera. Försök igen om några minuter om ditt köp inte visas. Se till att du är inloggad med samma Google-konto som användes vid köpet. - Övervakningsläge - Under vilka omständigheter denna app övervakar Bluetooth-data. Extra avisering Visar en extra avisering när en enhet är ansluten. Detta låter dig dölja den permanenta aviseringen \"Inga enheter\" genom att inaktivera kanalen \"Enhetsstatus\". Behåll avisering efter frånkoppling @@ -80,8 +78,6 @@ Visa anslutningspopup Visa en popup när enheten ansluter för första gången. Popups visas endast när du inte är i appen. - Popups kräver att monitorn körs. Ditt monitorläge är inställt på \"När appen är öppen\", vilket stoppar monitorn när du lämnar appen. - Åtgärda Experimentell funktion Den här funktionen har inte testats på alla enheter än. Om något inte fungerar korrekt, vänligen öppna ett ärende med en felsökningslogg. Öppna ärendehanteraren @@ -220,9 +216,6 @@ Följande behörighet krävs: Visa över andra appar Tillåt CAPod att rita över andra appar för att möjliggöra funktionen \"Visa popup\". - När appen är öppen - När enheten är ansluten - Alltid När den ses Fodralet är öppet I örat @@ -322,7 +315,6 @@ Brons Använder tapetfärger - Övervakning Utseende Osparade ändringar diff --git a/app/src/main/res/values-sw/strings.xml b/app/src/main/res/values-sw/strings.xml index 8b6293a8..eefc4c6e 100644 --- a/app/src/main/res/values-sw/strings.xml +++ b/app/src/main/res/values-sw/strings.xml @@ -40,8 +40,6 @@ Ikiwa umenunua hivi karibuni, inaweza kuchukua muda kwa Google Play kusawazisha. Jaribu tena baada ya dakika chache ikiwa ununuzi wako hauonekani. Hakikisha umeingia kwa akaunti sawa ya Google iliyotumiwa kwa ununuzi. - Hali ya ufuatiliaji - Chini ya mazingira gani programu hii inafuatilia data ya Bluetooth. Arifa ya ziada Inaonyesha arifa ya ziada wakati kifaa kimeunganishwa. Hii inakuwezesha kuficha arifa ya kudumu ya \"Hakuna vifaa\" kwa kuzima kituo cha \"Hali ya kifaa\". Weka arifa baada ya kukata muunganisho @@ -80,8 +78,6 @@ Onyesha kidirisha cha muunganisho Onyesha kidirisha kifaa kinapounganishwa kwa mara ya kwanza. Madirisha ya arifa yanaonyeshwa tu unapokuwa nje ya programu. - Madirisha ya arifa yanahitaji kichunguzi kifanye kazi. Hali yako ya kichunguzi imewekwa kuwa \"Programu inapofunguliwa\", ambayo husimamisha kichunguzi unapotoka programuni. - Rekebisha Kipengele cha majaribio Kipengele hiki bado hakijajaribiwa kwenye vifaa vyote. Ikiwa kitu hakifanyi kazi vizuri, tafadhali fungua suala na kumbukumbu ya utatuzi. Fungua Kifuatilio cha Masuala @@ -220,9 +216,6 @@ Ruhusa ifuatayo inahitajika: Dirisha la Arifa ya Mfumo Ruhusu CAPod kuchora juu ya programu nyingine ili kuwezesha kipengele cha \"Onyesha Kidirisha\". - Programu inapofunguliwa - Kifaa kinapounganishwa - Kila mara Kinapopatikana Kipochi kimefunguliwa Ndani ya sikio @@ -322,7 +315,6 @@ Amberini Inatumia rangi za ukuta wa skrini - Ufuatiliaji Muonekano Mabadiliko Yasiyohifadhiwa diff --git a/app/src/main/res/values-ta-rIN/strings.xml b/app/src/main/res/values-ta-rIN/strings.xml index f290b17d..6556626a 100644 --- a/app/src/main/res/values-ta-rIN/strings.xml +++ b/app/src/main/res/values-ta-rIN/strings.xml @@ -40,8 +40,6 @@ நீங்கள் சமீபத்தில் வாங்கியிருந்தால், Google Play ஒத்திசைக்க சிறிது நேரம் ஆகலாம். உங்கள் கொள்முதல் தோன்றவில்லை என்றால் சில நிமிடங்களில் மீண்டும் முயற்சிக்கவும். கொள்முதலுக்கு பயன்படுத்திய அதே Google கணக்கில் நீங்கள் உள்நுழைந்திருக்கிறீர்கள் என்பதை உறுதிசெய்யவும். - கண்காணிப்பு முறை - இந்த ஆப்ஸ் எந்தச் சூழ்நிலைகளில் புளூடூத் தரவைக் கண்காணிக்கிறது. கூடுதல் அறிவிப்பு ஒரு சாதனம் இணைக்கப்படும்போது கூடுதல் அறிவிப்பைக் காட்டுகிறது. \"சாதன நிலை\" சேனலை முடக்குவதன் மூலம் நிரந்தர \"சாதனங்கள் இல்லை\" அறிவிப்பை மறைக்க இது உங்களை அனுமதிக்கிறது. துண்டிக்கப்பட்ட பிறகு அறிவிப்பை வைத்திரு @@ -80,8 +78,6 @@ இணைப்பு பாப்அப்பைக் காட்டு சாதனம் முதல் முறையாக இணைக்கப்படும்போது ஒரு பாப்அப்பைக் காட்டு. நீங்கள் செயலியில் இல்லாதபோது மட்டுமே பாப்அப்கள் காட்டப்படும். - பாப்அப்களுக்கு கண்காணிப்பான் இயங்கிக்கொண்டிருக்க வேண்டும். உங்கள் கண்காணிப்பு பயன்முறை \"செயலி திறந்திருக்கும்போது\" என அமைக்கப்பட்டுள்ளது, இது செயலியை விட்டு வெளியேறும்போது கண்காணிப்பானை நிறுத்துகிறது. - சரிசெய் சோதனை அம்சம் இந்த அம்சம் இன்னும் அனைத்து சாதனங்களிலும் சோதிக்கப்படவில்லை. ஏதாவது சரியாக வேலை செய்யாவிட்டால், debug log உடன் ஒரு பிரச்சினையை தாக்கல் செய்யவும். பிரச்சினை ட்ராக்கரை திறக்கவும் @@ -220,9 +216,6 @@ பின்வரும் அனுமதி தேவை: கணினி எச்சரிக்கை சாளரம் \"பாப்அப் காட்டு\" அம்சத்தை சாத்தியமாக்க CAPod-ஐ பிற ஆப்ஸ்களின் மேல் வரைய அனுமதிக்கவும். - ஆப்ஸ் திறந்திருக்கும்போது - சாதனம் இணைக்கப்பட்டிருக்கும்போது - எப்போதும் கண்டறியும்போது கேஸ் திறந்திருக்கிறது காதில் @@ -322,7 +315,6 @@ அம்பர் வோல்பேப்பர் நிறங்களை பயன்படுத்துகிறது - கண்காணிப்பு தோற்றம் சேமிக்கப்படாத மாற்றங்கள் diff --git a/app/src/main/res/values-te-rIN/strings.xml b/app/src/main/res/values-te-rIN/strings.xml index 6b50f5c2..a6271c18 100644 --- a/app/src/main/res/values-te-rIN/strings.xml +++ b/app/src/main/res/values-te-rIN/strings.xml @@ -40,8 +40,6 @@ మీరు ఇటీవల కొనుగోలు చేసి ఉంటే, Google Play సమకాలీకరించడానికి కొంత సమయం పట్టవచ్చు. మీ కొనుగోలు కనిపించకపోతే కొన్ని నిమిషాల తర్వాత మళ్ళీ ప్రయత్నించండి. కొనుగోలు కోసం ఉపయోగించిన అదే Google ఖాతాతో సైన్ ఇన్ అయ్యారని నిర్ధారించుకోండి. - పర్యవేక్షణ మోడ్ - ఈ యాప్ ఏ పరిస్థితులలో బ్లూటూత్ డేటాను పర్యవేక్షిస్తుంది. అదనపు నోటిఫికేషన్ పరికరం కనెక్ట్ అయినప్పుడు అదనపు నోటిఫికేషన్‌ను చూపుతుంది. ఇది \"పరికర స్థితి\" ఛానెల్‌ను నిలిపివేయడం ద్వారా శాశ్వత \"పరికరం లేదు\" నోటిఫికేషన్‌ను దాచడానికి మిమ్మల్ని అనుమతిస్తుంది. డిస్‌కనెక్ట్ తర్వాత నోటిఫికేషన్ ఉంచు @@ -80,8 +78,6 @@ కనెక్షన్ పాపప్ చూపించు పరికరం మొదటిసారి కనెక్ట్ అయినప్పుడు పాపప్ చూపించు. మీరు యాప్‌లో లేనప్పుడు మాత్రమే పాప్‌అప్‌లు చూపబడతాయి. - పాప్‌అప్‌లకు మానిటర్ నడుస్తూ ఉండాలి. మీ మానిటర్ మోడ్ \"యాప్ తెరిచినప్పుడు\" అని సెట్ చేయబడింది, ఇది మీరు యాప్ వదిలినప్పుడు మానిటర్‌ను ఆపుతుంది. - దాన్ని సరిచేయి ప్రయోగాత్మక ఫీచర్ ఈ ఫీచర్ ఇంకా అన్ని పరికరాలలో పరీక్షించబడలేదు. ఏదైనా సరిగా పని చేయకపోతే, దయచేసి డీబగ్ లాగ్‌తో ఒక సమస్యను తెరవండి. సమస్య ట్రాకర్ తెరవండి @@ -220,9 +216,6 @@ కింది అనుమతి అవసరం: సిస్టమ్ అలర్ట్ విండో \"పాపప్ చూపించు\" ఫీచర్‌ను సాధ్యం చేయడానికి ఇతర యాప్‌ల మీద గీయడానికి CAPodను అనుమతించండి. - యాప్ తెరిచి ఉన్నప్పుడు - పరికరం కనెక్ట్ అయినప్పుడు - ఎల్లప్పుడూ కనిపించినప్పుడు కేస్ తెరిచి ఉంది చెవిలో @@ -322,7 +315,6 @@ అంబర్ వాల్‌పేపర్ రంగులను ఉపయోగిస్తుంది - పరివీక్షణ రూపం సేవ్ చేయని మార్పులు diff --git a/app/src/main/res/values-th/strings.xml b/app/src/main/res/values-th/strings.xml index 4996707b..87cdcb51 100644 --- a/app/src/main/res/values-th/strings.xml +++ b/app/src/main/res/values-th/strings.xml @@ -40,8 +40,6 @@ หากคุณเพิ่งซื้อไป อาจใช้เวลาสักครู่ให้ Google Play ซิงค์ข้อมูล ลองอีกครั้งในอีกไม่กี่นาทีหากการซื้อของคุณยังไม่ปรากฏ ตรวจสอบให้แน่ใจว่าคุณลงชื่อเข้าใช้ด้วยบัญชี Google เดียวกับที่ใช้ซื้อ - โหมดติดตาม - ภายใต้สถานการณ์ใดที่แอปนี้จะติดตามข้อมูลบลูทูธ การแจ้งเตือนเพิ่มเติม แสดงการแจ้งเตือนเพิ่มเติมเมื่ออุปกรณ์เชื่อมต่อ ซึ่งช่วยให้คุณสามารถซ่อนการแจ้งเตือนถาวร \"ไม่มีอุปกรณ์\" โดยการปิดใช้งานช่อง \"สถานะอุปกรณ์\" คงการแจ้งเตือนหลังตัดการเชื่อมต่อ @@ -80,8 +78,6 @@ แสดงป๊อปอัปการเชื่อมต่อ แสดงป๊อปอัปเมื่ออุปกรณ์เชื่อมต่อเป็นครั้งแรก ป๊อปอัปจะแสดงเฉพาะเมื่อคุณไม่ได้อยู่ในแอปเท่านั้น - ป๊อปอัปต้องใช้งานการมอนิเตอร์ที่กำลังทำงานอยู่ โหมดมอนิเตอร์ของคุณถูกตั้งค่าเป็น \"เมื่อเปิดแอป\" ซึ่งจะหยุดการมอนิเตอร์เมื่อคุณออกจากแอป - แก้ไข ฟีเจอร์ทดลอง ฟีเจอร์นี้ยังไม่ได้ทดสอบบนทุกอุปกรณ์ หากมีบางอย่างทำงานไม่ถูกต้อง โปรดเปิด issue พร้อมบันทึกการดีบัก เปิดตัวติดตาม Issue @@ -218,9 +214,6 @@ ต้องการสิทธิ์ต่อไปนี้: หน้าต่างแจ้งเตือนระบบ อนุญาตให้ CAPod วาดทับแอปอื่นเพื่อให้คุณสมบัติ \"แสดงป๊อปอัป\" ทำงานได้ - เมื่อเปิดแอป - เมื่ออุปกรณ์เชื่อมต่อ - เสมอ เมื่อพบเห็น เคสเปิดอยู่ อยู่ในหู @@ -320,7 +313,6 @@ สีอำพัน ใช้สีสายตา - การตรวจสอบ รูปลักษณ์ การเปลี่ยนแปลงที่ไม่ได้บันทึก diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 47feeddb..eee0ff46 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -40,8 +40,6 @@ Eğer yakın zamanda satın aldıysanız, Google Play\'in senkronize etmesi biraz zaman alabilir. Satın alma işlemi görünmüyorsa birkaç dakika sonra tekrar deneyin. Satın alma için kullanılan Google hesabıyla oturum açtığından emin ol. - İzleme modu - Uygulamanın hangi şartlar altında Bluetooth verilerini izleyeceğine dair seçenekler. Ek bildirim Bir cihaz bağlandığında ek bir bildirim gösterir. Bu, \"Cihaz durumu\" kanalını devre dışı bırakarak kalıcı \"Cihaz yok\" bildirimini gizlemenizi sağlar. Bağlantı kesildikten sonra bildirimi koru @@ -80,8 +78,6 @@ Bağlandığında açılır pencere göster Cihaz ilk kez bağlantı kurduğunda, açılır bir pencere gösterir. Açılır pencereler yalnızca uygulamada olmadığınızda gösterilir. - Açılır pencereler için izleyicinin çalışıyor olması gerekir. İzleyici modunuz \"Uygulama açıkken\" olarak ayarlanmış, bu da uygulamadan çıktığınızda izleyiciyi durdurur. - Düzelt Deneysel Özellik Bu özellik henüz tüm cihazlarda test edilmedi. Eğer birşey doğru çalışmıyorsa, lütfen hata ayıklama kaydıyla bir sorun açın. Sorun Takipçisini Aç @@ -220,9 +216,6 @@ Aşağıdaki izin gereklidir: Sistem Uyarı Penceresi \"Açılır Pencere Göster\" özelliğini mümkün kılmak için CAPod\'un diğer uygulamaların üzerine çizmesine izin verin. - Uygulama açıkken - Cihaz bağlıyken - Her zaman Görüldüğünde Kutu açık Kulakta @@ -322,7 +315,6 @@ Kehribar Duvar kağıdı renklerini kullanır - İzleme Görünüm Kaydedilmemiş Değişiklikler diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 228b9278..7007005a 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -40,8 +40,6 @@ Якщо ви нещодавно придбали, Google Play може потребувати деякого часу для синхронізації. Спробуйте знову через кілька хвилин, якщо ваша покупка не з\'являється. Переконайтеся, що ви ввійшли в той самий обліковий запис Google, який використовувався для покупки. - Режим відстеження - За яких умов ця програма відстежує дані Bluetooth. Додаткове сповіщення Показує додаткове сповіщення, коли пристрій підключено. Це дозволяє приховати постійне сповіщення \"Немає пристроїв\", вимкнувши канал \"Стан пристрою\". Залишати сповіщення після відключення @@ -80,8 +78,6 @@ Показувати спливаюче вікно при приєднанні Показувати спливаюче вікно коли пристрій підключається вперше. Спливаючі вікна відображаються лише тоді, коли ви не в застосунку. - Спливаючі вікна вимагають роботи монітора. Режим монітора встановлено на «Коли застосунок відкрито», що зупиняє монітор, коли ви виходите з застосунку. - Виправити Експериментальна функція Ця функція ще не протестована на всіх пристроях. Якщо щось не працює правильно, будь ласка, відкрийте задачу з журналом налагодження. Відкрити трекер задач @@ -224,9 +220,6 @@ Потрібен наступний дозвіл: Відображення поверх інших програм Дозвольте CAPod відображатися поверх інших програм, щоб уможливити функцію \"Показувати спливаюче вікно\". - Коли програму відкрито - Коли пристрій підключено - Завжди Коли виявлено Футляр відкрито У вусі @@ -326,7 +319,6 @@ Бурштиновий Використовує кольори шпалер - Моніторинг Зовнішній вигляд Незбережені зміни diff --git a/app/src/main/res/values-ur-rIN/strings.xml b/app/src/main/res/values-ur-rIN/strings.xml index 487a5742..8b1d52de 100644 --- a/app/src/main/res/values-ur-rIN/strings.xml +++ b/app/src/main/res/values-ur-rIN/strings.xml @@ -40,8 +40,6 @@ اگر آپ نے حال ہی میں خریداری کی ہے، تو Google Play کو ہم آہنگ ہونے میں کچھ وقت لگ سکتا ہے۔ اگر آپ کی خریداری ظاہر نہ ہو تو چند منٹ بعد دوبارہ کوشش کریں۔ یقینی بنائیں کہ آپ خریداری کے لیے استعمال کیے گئے اسی Google اکاؤنٹ سے سائن ان ہیں۔ - مانیٹر موڈ - کن حالات میں یہ ایپ بلوٹوتھ ڈیٹا کی نگرانی کرتی ہے۔ اضافی اطلاع جب کوئی آلہ منسلک ہوتا ہے تو ایک اضافی اطلاع دکھاتا ہے۔ اس سے آپ \"آلہ کی حیثیت\" چینل کو غیر فعال کر کے مستقل \"کوئی آلہ نہیں\" اطلاع کو چھپا سکتے ہیں۔ منقطع ہونے کے بعد اطلاع رکھیں @@ -80,8 +78,6 @@ کنکشن پاپ اپ دکھائیں آلہ پہلی بار منسلک ہونے پر ایک پاپ اپ دکھائیں۔ پاپ اپس صرف اس وقت دکھائے جاتے ہیں جب آپ ایپ میں نہ ہوں۔ - پاپ اپس کے لیے مانیٹر کا چلنا ضروری ہے۔ آپ کا مانیٹر موڈ \"جب ایپ کھلی ہو\" پر سیٹ ہے، جو ایپ چھوڑنے پر مانیٹر بند کر دیتا ہے۔ - ٹھیک کریں تجرباتی خصوصیت اس فیچر کو ابھی تک تمام ڈیوائسز پر آزمایا نہیں گیا ہے۔ اگر کچھ صحیح طریقے سے کام نہیں کر رہا، تو براہ کرم ڈیبگ لاگ کے ساتھ ایک مسئلہ کھولیں۔ ایشو ٹریکر کھولیں @@ -220,9 +216,6 @@ درج ذیل اجازت درکار ہے: سسٹم الرٹ ونڈو \"پاپ اپ دکھائیں\" خصوصیت ممکن بنانے کے لئے CAPod کو دوسری ایپس کے اوپر ڈرا کرنے کی اجازت دیں۔ - جب ایپ کھلی ہو - جب آلہ منسلک ہو - ہمیشہ نظر آنے پر کیس کھلا ہو کان میں @@ -322,7 +315,6 @@ زرد وال پیپر کے رنگ استعمال کرتا ہے - نگرانی ظاہری شکل غیر محفوظ تبدیلیاں diff --git a/app/src/main/res/values-uz/strings.xml b/app/src/main/res/values-uz/strings.xml index 57d7e348..bf94b8ce 100644 --- a/app/src/main/res/values-uz/strings.xml +++ b/app/src/main/res/values-uz/strings.xml @@ -40,8 +40,6 @@ Agar yaqinda xarid qilgan bo\'lsangiz, Google Play sinxronlashishi uchun bir oz vaqt ketishi mumkin. Xaridingiz ko\'rinmasa, bir necha daqiqadan so\'ng qayta urinib ko\'ring. Xarid uchun ishlatiladigan Google hisobingizga kirganingizni tekshiring. - Monitoring rejimi - Ushbu ilova qaysi sharoitlarda Bluetooth ma\'lumotlarini kuzatadi. Qo\'shimcha bildirishnoma Qurilma ulanganda qo\'shimcha bildirishnoma ko\'rsatadi. Bu sizga \"Qurilma holati\" kanalini o\'chirib qo\'yish orqali doimiy \"Qurilmalar yo\'q\" bildirishnomasini yashirishga imkon beradi. Uzilgandan keyin bildirishnomani saqlash @@ -80,8 +78,6 @@ Ulanishda qalqib chiquvchi oynani ko\'rsatish Qurilma birinchi marta ulanganda qalqib chiquvchi oynani ko\'rsatish. Qalqib chiquvchi oynalar faqat ilovada bo\'lmaganingizda ko\'rsatiladi. - Qalqib chiquvchi oynalar monitorning ishlashini talab qiladi. Monitor rejimingiz \"Ilova ochiq bo\'lganda\" deb o\'rnatilgan, bu ilovadan chiqqaningizda monitorni to\'xtatadi. - Tuzatish Eksperimental xususiyat Bu xususiyat hali barcha qurilmalarda sinovdan o\'tkazilmagan. Agar nimadir to\'g\'ri ishlamayotgan bo\'lsa, iltimos debug logi bilan muammo oching. Muammo kuzatuvchisini ochish @@ -220,9 +216,6 @@ Quyidagi ruxsat talab qilinadi: Tizim ogohlantirish oynasi \"Qalqib chiquvchi oynani ko\'rsatish\" funksiyasini mumkin qilish uchun CAPod\'ga boshqa ilovalar ustida chizish ruxsatini bering. - Ilova ochiq bo\'lganda - Qurilma ulanganda - Har doim Ko\'rilganda Keys ochiq Quloqda @@ -322,7 +315,6 @@ Sariq-to\'q Fon rasmi ranglarini ishlatadi - Monitoring Ko\'rinish Saqlanmagan o\'zgarishlar diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index d0614b70..890b7c44 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -40,8 +40,6 @@ Nếu bạn đã mua gần đây, Google Play có thể mất một chút thời gian để đồng bộ. Vui lòng thử lại sau vài phút nếu giao dịch mua của bạn chưa hiển thị. Hãy đảm bảo bạn đã đăng nhập bằng cùng tài khoản Google đã dùng để mua. - Chế độ giám sát - Trong trường hợp nào ứng dụng này giám sát dữ liệu Bluetooth. Thông báo bổ sung Hiển thị thông báo bổ sung khi một thiết bị được kết nối. Điều này cho phép bạn ẩn thông báo cố định \"Không có thiết bị\" bằng cách tắt kênh \"Trạng thái thiết bị\". Giữ thông báo sau khi ngắt kết nối @@ -80,8 +78,6 @@ Hiển thị popup kết nối Hiển thị cửa sổ bật lên khi thiết bị kết nối lần đầu tiên. Cửa sổ bật lên chỉ hiển thị khi bạn không ở trong ứng dụng. - Cửa sổ bật lên yêu cầu màn hình giám sát phải đang chạy. Chế độ giám sát của bạn được đặt thành \"Khi ứng dụng đang mở\", điều này dừng màn hình giám sát khi bạn rời khỏi ứng dụng. - Sửa ngay Tính năng thử nghiệm Tính năng này chưa được kiểm tra trên tất cả thiết bị. Nếu có gì đó không hoạt động đúng, vui lòng mở một vấn đề với nhật ký gỡ lỗi. Mở Trình theo dõi vấn đề @@ -218,9 +214,6 @@ Cần quyền sau: Cửa sổ cảnh báo hệ thống Cho phép CAPod hiển thị đè lên các ứng dụng khác để tính năng Show PopUp hoạt động. - Khi ứng dụng đang mở - Khi thiết bị được kết nối - Luôn luôn Khi phát hiện Khi hộp mở Trong tai @@ -320,7 +313,6 @@ Vàng hổ phách Sử dụng màu hình nền - Giám sát Giao diện Thay đổi chưa lưu diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index f31321ee..d57a1317 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -40,8 +40,6 @@ 如果您最近已购买,Google Play 可能需要片刻时间同步。 如果您的购买未显示,请几分钟后再试。 请确保您使用购买时所用的同一个 Google 账户登录。 - 监控模式 - 决定本应用在何时收听蓝牙数据。 额外通知 在设备连接时显示一条额外通知。这使您可以禁用“设备状态”通道来隐藏永久性的“无设备”通知。 断开连接后保持通知 @@ -80,8 +78,6 @@ 显示连接弹窗 当设备初次连接时显示弹窗 弹窗仅在您不在应用内时显示。 - 弹窗需要监控服务运行。您的监控模式设置为“应用开启时”,这会在您离开应用时停止监控。 - 修复 实验性功能 此功能尚未在所有设备上进行测试。如果有问题,请附上调试日志提交一个问题报告。 打开问题跟踪器 @@ -218,9 +214,6 @@ 需要以下权限: 系统警告窗口 允许 CAPod 在其他应用的界面上方显示,以允许如“显示弹窗”功能。 - 当应用程序打开时 - 设备连接时 - 总是 当发现设备时 充电仓打开 在耳中 @@ -320,7 +313,6 @@ 琥珀色 使用壁纸颜色 - 监控中 外观 未保存的更改 diff --git a/app/src/main/res/values-zh-rHK/strings.xml b/app/src/main/res/values-zh-rHK/strings.xml index 8ab1f2cd..6a8ea654 100644 --- a/app/src/main/res/values-zh-rHK/strings.xml +++ b/app/src/main/res/values-zh-rHK/strings.xml @@ -40,8 +40,6 @@ 如果您最近剛購買,Google Play 可能需要一點時間同步。 如果您的購買未顯示,請幾分鐘後再試。 請確保您已使用購買時所用的同一個 Google 帳戶登入。 - 監視模式 - 在這種情況下應用程式會監視藍牙資料。 額外通知 裝置連接時顯示額外通知。這讓您可以停用「裝置狀態」頻道來隱藏永久的「沒有裝置」通知。 斷線後保留通知 @@ -80,8 +78,6 @@ 顯示連線彈出式視窗 在裝置首次連線時顯示彈出式視窗。 彈出視窗僅在您不在應用程式時顯示。 - 彈出視窗需要監控器運行。您的監控模式設為「應用程式開啟時」,這會在您離開應用程式時停止監控器。 - 修復 實驗性功能 此功能尚未在所有裝置上測試。如有問題,請提交問題並附上除錯日誌。 開啟問題追蹤器 @@ -218,9 +214,6 @@ 需要以下權限: 系統警示視窗 允許 CAPod 在其他應用程式上方顯示內容,以啟用「顯示彈出式視窗」功能。 - 應用程式開啟時 - 裝置已連線時 - 一律 偵測到時 充電盒已開啟 已入耳 @@ -320,7 +313,6 @@ 琥珀色 使用壁紙顏色 - 監控 外觀 未儲存的變更 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 3b218dc3..bd838fbb 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -40,8 +40,6 @@ 若您最近才購買,Google Play 可能需要一點時間同步。 若購買未顯示,請幾分鐘後再試。 請確認您使用購買時所用的相同 Google 帳戶登入。 - 監視模式 - 在這種情況下應用程式會監視藍牙資料。 額外通知 裝置連接時顯示額外通知。這讓您可以停用「裝置狀態」頻道來隱藏永久的「沒有裝置」通知。 斷線後保留通知 @@ -80,8 +78,6 @@ 顯示連線彈出式視窗 在裝置首次連線時顯示彈出式視窗。 彈出視窗僅在您不在應用程式內時顯示。 - 彈出視窗需要監控程式運行中。您的監控模式設定為「當應用程式開啟時」,這會在您離開應用程式時停止監控程式。 - 修正 實驗性功能 此功能尚未在所有裝置上測試。如果某些功能無法正常運作,請開啟一個包含除錯日誌的問題回報。 開啟問題追蹤器 @@ -218,9 +214,6 @@ 可能要求下列權限: 系統警報視窗 允許 CAPod 在其他應用程式上繪圖,使「顯示彈出式視窗」功能成為可能。 - 應用程式開啟時 - 裝置連線時 - 一律 看到時 充電盒開啟 在耳中 @@ -320,7 +313,6 @@ 琥珀色 使用已設壁紙色彩 - 監控 外觀 修改未儲存 diff --git a/app/src/main/res/values-zu/strings.xml b/app/src/main/res/values-zu/strings.xml index 0b9ed119..e50ec64c 100644 --- a/app/src/main/res/values-zu/strings.xml +++ b/app/src/main/res/values-zu/strings.xml @@ -40,8 +40,6 @@ Uma uthenga kamuva nje, kungathatha isikhashana i-Google Play ukuvumelanisa. Zama futhi emaminithini ambalwa uma ukuthenga kwakho kungabonakali. Qiniseka ukuthi ungene nge-akhawunti efanayo ye-Google esetshenzisiwe ekuthengeni. - Imodi yokuqapha - Ngaphansi kwaziphi izimo lolu hlelo lokusebenza luqapha idatha ye-Bluetooth. Isaziso esengeziwe Ibonisa isaziso esengeziwe lapho idivayisi ixhunyiwe. Lokhu kukuvumela ukuthi ufihle isaziso esihlala njalo esithi \"Awekho amadivayisi\" ngokukhubaza isiteshi \"Isimo sedivayisi\". Gcina isaziso ngemva kokunqamuka @@ -80,8 +78,6 @@ Bonisa isigelekeqe sokuxhuma Bonisa isigelekeqe lapho idivayisi ixhuma okokuqala. Amapopup abonakala kuphela lapho ungekho kuhlelo lokusebenza. - Amapopup adinga ukuba ukulandelela kusebenze. Indlela yakho yokulalela isetwe ku-\"Uma uhlelo lusevulekile\", ekhanda ukulalelwa lapho uphuma kuhlelo lokusebenza. - Lungisa Isici sokuzama Lesi sici asikavivinywa kuzo zonke izidivayisi. Uma into ingasebenzi kahle, sicela uvule inkinga ngelogisi yokususa amaphutha. Vula Umlaleli Wezinkinga @@ -220,9 +216,6 @@ Imvume elandelayo iyadingeka: Iwindi Lesexwayiso Sohlelo Vumela i-CAPod ukuthi idwebe phezu kwezinye izinhlelo zokusebenza ukwenza isici \"Bonisa isigelekeqe\" sikwazi ukusebenza. - Uma uhlelo lokusebenza luvuliwe - Uma idivayisi ixhunyiwe - Njalo Uma ibonwe Ikesi livuliwe Endlebeni @@ -322,7 +315,6 @@ Amber Isebenzisa imibala yesithombe semuva - Ukulandelela Ukubonakala Izinguquko Ezingalondoloziwe diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index fd5d3d0f..7955e737 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -44,8 +44,6 @@ Try again in a few minutes if your purchase doesn\'t appear. Make sure you\'re signed in with the same Google account used for the purchase. - Monitor mode - Under which circumstances this app monitors Bluetooth data. Extra notification Shows an extra notification when a device is connected. This lets you hide the permanent \"No devices\" notification by disabling the \"Device status\" channel. Keep notification after disconnect @@ -88,8 +86,6 @@ Show connection popup Show a popup when the device connects for the first time. Popups are only shown when you are not in the app. - Popups require the monitor to be running. Your monitor mode is set to \"When app is open\", which stops the monitor when you leave the app. - Fix it Experimental feature This feature hasn\'t been tested on all devices yet. If something isn\'t working correctly, please open an issue with a debug log. @@ -258,9 +254,6 @@ System Alert Window Allow CAPod to draw over other apps to make the feature \"Show PopUp\" possible. - When app is open - When device is connected - Always When seen Case is open @@ -368,7 +361,6 @@ Uses wallpaper colors - Monitoring Appearance diff --git a/app/src/test/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModelTest.kt b/app/src/test/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModelTest.kt index c1084a9a..b3185837 100644 --- a/app/src/test/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModelTest.kt +++ b/app/src/test/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsViewModelTest.kt @@ -4,10 +4,13 @@ import eu.darken.capod.common.TimeSource import eu.darken.capod.common.bluetooth.BluetoothAddress import eu.darken.capod.common.bluetooth.BluetoothDevice2 import eu.darken.capod.common.bluetooth.BluetoothManager2 +import eu.darken.capod.common.bluetooth.NudgeAttemptResult +import eu.darken.capod.common.bluetooth.NudgeAvailability +import eu.darken.capod.common.bluetooth.NudgeCapabilityStore 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.monitor.core.DeviceMonitor +import eu.darken.capod.monitor.core.MonitorModeResolver import eu.darken.capod.monitor.core.PodDevice import eu.darken.capod.pods.core.apple.aap.AapConnectionManager import eu.darken.capod.pods.core.apple.aap.protocol.AapCommand @@ -43,7 +46,6 @@ import org.junit.jupiter.api.extension.ExtendWith import testhelpers.BaseTest import testhelpers.TestTimeSource import testhelpers.coroutine.TestDispatcherProvider -import testhelpers.datastore.FakeDataStoreValue import testhelpers.livedata.InstantExecutorExtension @ExtendWith(InstantExecutorExtension::class) @@ -60,8 +62,10 @@ class DeviceSettingsViewModelTest : BaseTest() { private lateinit var upgradeRepo: UpgradeRepo private lateinit var bluetoothManager: BluetoothManager2 private lateinit var profilesRepo: DeviceProfilesRepo - private lateinit var generalSettings: GeneralSettings - private lateinit var fakeMonitorMode: FakeDataStoreValue + private lateinit var monitorModeResolver: MonitorModeResolver + private lateinit var nudgeCapabilityStore: NudgeCapabilityStore + private lateinit var nudgeAvailabilityFlow: MutableStateFlow + private lateinit var effectiveModeFlow: MutableStateFlow private val timeSource: TimeSource = TestTimeSource() private lateinit var devicesFlow: MutableStateFlow> @@ -100,9 +104,9 @@ class DeviceSettingsViewModelTest : BaseTest() { } connectedDevicesFlow = MutableStateFlow(emptyList()) bluetoothManager = mockk(relaxed = true) { - every { isNudgeAvailable } returns true every { bondedDevices() } returns flowOf(emptySet()) every { connectedDevices } returns connectedDevicesFlow + coEvery { nudgeConnection(any()) } returns NudgeAttemptResult.Rejected } profilesFlow = MutableStateFlow( listOf( @@ -112,9 +116,13 @@ class DeviceSettingsViewModelTest : BaseTest() { profilesRepo = mockk(relaxed = true) { every { profiles } returns profilesFlow } - fakeMonitorMode = FakeDataStoreValue(MonitorMode.AUTOMATIC) - generalSettings = mockk().also { - every { it.monitorMode } returns fakeMonitorMode.mock + effectiveModeFlow = MutableStateFlow(MonitorMode.AUTOMATIC) + monitorModeResolver = mockk().also { + every { it.effectiveMode } returns effectiveModeFlow + } + nudgeAvailabilityFlow = MutableStateFlow(NudgeAvailability.UNKNOWN) + nudgeCapabilityStore = mockk(relaxed = true).also { + every { it.availability } returns nudgeAvailabilityFlow } } @@ -132,7 +140,8 @@ class DeviceSettingsViewModelTest : BaseTest() { upgradeRepo = upgradeRepo, bluetoothManager = bluetoothManager, profilesRepo = profilesRepo, - generalSettings = generalSettings, + monitorModeResolver = monitorModeResolver, + nudgeCapabilityStore = nudgeCapabilityStore, timeSource = timeSource, webpageTool = mockk(relaxed = true), ).also { vm = it } @@ -150,7 +159,7 @@ class DeviceSettingsViewModelTest : BaseTest() { fun `forceConnect happy path - bonded exists, nudge accepted, no event emitted`() = runVmTest { val bonded = mockBondedDevice(testAddress) every { bluetoothManager.bondedDevices() } returns flowOf(setOf(bonded)) - coEvery { bluetoothManager.nudgeConnection(bonded) } returns true + coEvery { bluetoothManager.nudgeConnection(bonded) } returns NudgeAttemptResult.Accepted val vm = createViewModel() vm.initialize(testAddress) @@ -166,7 +175,7 @@ class DeviceSettingsViewModelTest : BaseTest() { fun `forceConnect when nudge not accepted - emits OpenBluetoothSettings`() = runVmTest { val bonded = mockBondedDevice(testAddress) every { bluetoothManager.bondedDevices() } returns flowOf(setOf(bonded)) - coEvery { bluetoothManager.nudgeConnection(bonded) } returns false + coEvery { bluetoothManager.nudgeConnection(bonded) } returns NudgeAttemptResult.Rejected val vm = createViewModel() vm.initialize(testAddress) @@ -183,7 +192,7 @@ class DeviceSettingsViewModelTest : BaseTest() { fun `forceConnect when nudge unavailable - emits OpenBluetoothSettings without calling nudge`() = runVmTest { val bonded = mockBondedDevice(testAddress) every { bluetoothManager.bondedDevices() } returns flowOf(setOf(bonded)) - every { bluetoothManager.isNudgeAvailable } returns false + nudgeAvailabilityFlow.value = NudgeAvailability.BROKEN val vm = createViewModel() vm.initialize(testAddress) @@ -251,7 +260,7 @@ class DeviceSettingsViewModelTest : BaseTest() { val bonded = mockBondedDevice(testAddress) every { bluetoothManager.bondedDevices() } returns flowOf(setOf(bonded)) - val gate = CompletableDeferred() + val gate = CompletableDeferred() coEvery { bluetoothManager.nudgeConnection(bonded) } coAnswers { gate.await() } val vm = createViewModel() @@ -261,7 +270,7 @@ class DeviceSettingsViewModelTest : BaseTest() { vm.forceConnect() vm.forceConnect() - gate.complete(true) + gate.complete(NudgeAttemptResult.Accepted) coVerify(exactly = 1) { bluetoothManager.nudgeConnection(bonded) } vm.state.first().isForceConnecting shouldBe false diff --git a/app/src/test/java/eu/darken/capod/main/ui/overview/OverviewViewModelTest.kt b/app/src/test/java/eu/darken/capod/main/ui/overview/OverviewViewModelTest.kt index 1fb794c5..583f2b12 100644 --- a/app/src/test/java/eu/darken/capod/main/ui/overview/OverviewViewModelTest.kt +++ b/app/src/test/java/eu/darken/capod/main/ui/overview/OverviewViewModelTest.kt @@ -10,6 +10,7 @@ import eu.darken.capod.main.core.GeneralSettings import eu.darken.capod.main.core.MonitorMode import eu.darken.capod.main.core.PermissionTool import eu.darken.capod.monitor.core.DeviceMonitor +import eu.darken.capod.monitor.core.MonitorModeResolver import eu.darken.capod.monitor.core.PodDevice import eu.darken.capod.monitor.core.worker.MonitorControl import eu.darken.capod.profiles.core.DeviceProfile @@ -51,6 +52,7 @@ class OverviewViewModelTest : BaseTest() { private lateinit var upgradeRepo: UpgradeRepo private lateinit var bluetoothManager: BluetoothManager2 private lateinit var profilesRepo: DeviceProfilesRepo + private lateinit var monitorModeResolver: MonitorModeResolver private val timeSource: TimeSource = TestTimeSource() private lateinit var missingPermissionsFlow: MutableStateFlow> @@ -60,7 +62,7 @@ class OverviewViewModelTest : BaseTest() { private lateinit var profilesFlow: MutableStateFlow> private lateinit var hadLegacyReactionDataFlow: MutableStateFlow private lateinit var upgradeInfoFlow: MutableStateFlow - private lateinit var fakeMonitorMode: FakeDataStoreValue + private lateinit var effectiveModeFlow: MutableStateFlow private lateinit var fakeDebugMode: FakeDataStoreValue private lateinit var fakeReactionsHintDismissed: FakeDataStoreValue @@ -75,7 +77,7 @@ class OverviewViewModelTest : BaseTest() { profilesFlow = MutableStateFlow(emptyList()) hadLegacyReactionDataFlow = MutableStateFlow(false) upgradeInfoFlow = MutableStateFlow(mockk(relaxed = true)) - fakeMonitorMode = FakeDataStoreValue(MonitorMode.AUTOMATIC) + effectiveModeFlow = MutableStateFlow(MonitorMode.AUTOMATIC) fakeDebugMode = FakeDataStoreValue(false) fakeReactionsHintDismissed = FakeDataStoreValue(false) @@ -93,10 +95,13 @@ class OverviewViewModelTest : BaseTest() { } generalSettings = mockk().also { - every { it.monitorMode } returns fakeMonitorMode.mock every { it.reactionsHintDismissed } returns fakeReactionsHintDismissed.mock } + monitorModeResolver = mockk().also { + every { it.effectiveMode } returns effectiveModeFlow + } + debugSettings = mockk().also { every { it.isDebugModeEnabled } returns fakeDebugMode.mock } @@ -132,6 +137,7 @@ class OverviewViewModelTest : BaseTest() { bluetoothManager = bluetoothManager, profilesRepo = profilesRepo, aapManager = mockk(relaxed = true), + monitorModeResolver = monitorModeResolver, timeSource = timeSource, ) @@ -347,7 +353,7 @@ class OverviewViewModelTest : BaseTest() { @Test fun `MANUAL mode - never starts monitor`() = runTest(testDispatcher) { - fakeMonitorMode.value = MonitorMode.MANUAL + effectiveModeFlow.value = MonitorMode.MANUAL val vm = createViewModel() // Collect workerAutolaunch to trigger the side effect @@ -358,7 +364,7 @@ class OverviewViewModelTest : BaseTest() { @Test fun `ALWAYS mode - starts monitor when permissions OK`() = runTest(testDispatcher) { - fakeMonitorMode.value = MonitorMode.ALWAYS + effectiveModeFlow.value = MonitorMode.ALWAYS val vm = createViewModel() vm.workerAutolaunch.first() @@ -368,7 +374,7 @@ class OverviewViewModelTest : BaseTest() { @Test fun `ALWAYS mode - does NOT start monitor when permissions missing`() = runTest(testDispatcher) { - fakeMonitorMode.value = MonitorMode.ALWAYS + effectiveModeFlow.value = MonitorMode.ALWAYS missingPermissionsFlow.value = setOf(Permission.BLUETOOTH) val vm = createViewModel() @@ -379,7 +385,7 @@ class OverviewViewModelTest : BaseTest() { @Test fun `AUTOMATIC mode - starts monitor when connected devices exist`() = runTest(testDispatcher) { - fakeMonitorMode.value = MonitorMode.AUTOMATIC + effectiveModeFlow.value = MonitorMode.AUTOMATIC connectedDevicesFlow.value = listOf(mockk(relaxed = true)) val vm = createViewModel() @@ -390,7 +396,7 @@ class OverviewViewModelTest : BaseTest() { @Test fun `AUTOMATIC mode - does NOT start monitor when no connected devices`() = runTest(testDispatcher) { - fakeMonitorMode.value = MonitorMode.AUTOMATIC + effectiveModeFlow.value = MonitorMode.AUTOMATIC connectedDevicesFlow.value = emptyList() val vm = createViewModel() diff --git a/app/src/test/java/eu/darken/capod/monitor/core/MonitorModeResolverTest.kt b/app/src/test/java/eu/darken/capod/monitor/core/MonitorModeResolverTest.kt new file mode 100644 index 00000000..450e069b --- /dev/null +++ b/app/src/test/java/eu/darken/capod/monitor/core/MonitorModeResolverTest.kt @@ -0,0 +1,132 @@ +package eu.darken.capod.monitor.core + +import eu.darken.capod.common.bluetooth.NudgeAvailability +import eu.darken.capod.common.bluetooth.NudgeCapabilityStore +import eu.darken.capod.main.core.MonitorMode +import eu.darken.capod.profiles.core.AppleDeviceProfile +import eu.darken.capod.profiles.core.DeviceProfile +import eu.darken.capod.profiles.core.DeviceProfilesRepo +import io.kotest.matchers.shouldBe +import io.mockk.every +import io.mockk.mockk +import kotlinx.coroutines.flow.MutableStateFlow +import kotlinx.coroutines.flow.first +import kotlinx.coroutines.test.runTest +import org.junit.jupiter.api.Test +import testhelpers.BaseTest + +class MonitorModeResolverTest : BaseTest() { + + private val profilesFlow = MutableStateFlow>(emptyList()) + private val nudgeFlow = MutableStateFlow(NudgeAvailability.UNKNOWN) + + private val profilesRepo = mockk().also { + every { it.profiles } returns profilesFlow + } + private val nudgeStore = mockk().also { + every { it.availability } returns nudgeFlow + } + + private val resolver = MonitorModeResolver(profilesRepo, nudgeStore) + + private fun profile( + id: String = "p", + address: String? = "AA:BB:CC:DD:EE:FF", + autoConnect: Boolean = false, + ): AppleDeviceProfile = AppleDeviceProfile( + id = id, + label = id, + address = address, + autoConnect = autoConnect, + ) + + @Test + fun `case 1 - no profiles - MANUAL`() = runTest { + profilesFlow.value = emptyList() + + resolver.effectiveMode.first() shouldBe MonitorMode.MANUAL + } + + @Test + fun `case 2 - paired profile, autoConnect off - AUTOMATIC`() = runTest { + profilesFlow.value = listOf(profile(autoConnect = false)) + + resolver.effectiveMode.first() shouldBe MonitorMode.AUTOMATIC + } + + @Test + fun `case 3 - paired profile, autoConnect on, nudge AVAILABLE - ALWAYS`() = runTest { + profilesFlow.value = listOf(profile(autoConnect = true)) + nudgeFlow.value = NudgeAvailability.AVAILABLE + + resolver.effectiveMode.first() shouldBe MonitorMode.ALWAYS + } + + @Test + fun `case 3 - paired profile, autoConnect on, nudge UNKNOWN - ALWAYS (assume available)`() = runTest { + profilesFlow.value = listOf(profile(autoConnect = true)) + nudgeFlow.value = NudgeAvailability.UNKNOWN + + resolver.effectiveMode.first() shouldBe MonitorMode.ALWAYS + } + + @Test + fun `case 3b - paired profile, autoConnect on, nudge BROKEN - AUTOMATIC`() = runTest { + profilesFlow.value = listOf(profile(autoConnect = true)) + nudgeFlow.value = NudgeAvailability.BROKEN + + resolver.effectiveMode.first() shouldBe MonitorMode.AUTOMATIC + } + + @Test + fun `case 4 - profile without paired address - MANUAL`() = runTest { + profilesFlow.value = listOf(profile(address = null, autoConnect = true)) + + resolver.effectiveMode.first() shouldBe MonitorMode.MANUAL + } + + @Test + fun `multi-profile primary-only - primary case 2 + secondary case 3 - AUTOMATIC`() = runTest { + profilesFlow.value = listOf( + profile(id = "primary", autoConnect = false), + profile(id = "secondary", autoConnect = true), + ) + nudgeFlow.value = NudgeAvailability.AVAILABLE + + resolver.effectiveMode.first() shouldBe MonitorMode.AUTOMATIC + } + + @Test + fun `multi-profile primary-only - primary case 4 + secondary case 2 - MANUAL`() = runTest { + profilesFlow.value = listOf( + profile(id = "primary", address = null), + profile(id = "secondary", address = "AA:BB:CC:DD:EE:FF"), + ) + + resolver.effectiveMode.first() shouldBe MonitorMode.MANUAL + } + + @Test + fun `list reorder makes the secondary primary - mode flips`() = runTest { + val a = profile(id = "a", autoConnect = true) + val b = profile(id = "b", autoConnect = false) + nudgeFlow.value = NudgeAvailability.AVAILABLE + + profilesFlow.value = listOf(a, b) + resolver.effectiveMode.first() shouldBe MonitorMode.ALWAYS + + profilesFlow.value = listOf(b, a) + resolver.effectiveMode.first() shouldBe MonitorMode.AUTOMATIC + } + + @Test + fun `nudge availability flip from UNKNOWN to BROKEN drops case 3 to AUTOMATIC`() = runTest { + profilesFlow.value = listOf(profile(autoConnect = true)) + nudgeFlow.value = NudgeAvailability.UNKNOWN + + resolver.effectiveMode.first() shouldBe MonitorMode.ALWAYS + + nudgeFlow.value = NudgeAvailability.BROKEN + resolver.effectiveMode.first() shouldBe MonitorMode.AUTOMATIC + } +} diff --git a/app/src/test/java/eu/darken/capod/reaction/core/autoconnect/AutoConnectLogicTest.kt b/app/src/test/java/eu/darken/capod/reaction/core/autoconnect/AutoConnectLogicTest.kt index fc6de09c..13b9137c 100644 --- a/app/src/test/java/eu/darken/capod/reaction/core/autoconnect/AutoConnectLogicTest.kt +++ b/app/src/test/java/eu/darken/capod/reaction/core/autoconnect/AutoConnectLogicTest.kt @@ -17,6 +17,7 @@ class AutoConnectLogicTest : BaseTest() { autoConnect = AutoConnect( bluetoothManager = mockk(relaxed = true), deviceMonitor = mockk(relaxed = true), + nudgeCapabilityStore = mockk(relaxed = true), ) }