mirror of
https://github.com/d4rken-org/capod.git
synced 2026-09-14 18:26:11 -04:00
Compare commits
11
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
de609b4d05 | ||
|
|
7e6e9eee36 | ||
|
|
a321bb733c | ||
|
|
490369a3e1 | ||
|
|
a2cce044ef | ||
|
|
8884bb88c7 | ||
|
|
313b0e9131 | ||
|
|
47048cf7e7 | ||
|
|
ef1c4615aa | ||
|
|
c9587b2bf0 | ||
|
|
669fa2fd22 |
@@ -138,6 +138,15 @@ jobs:
|
||||
ruby-version: 2.7.6
|
||||
bundler-cache: true
|
||||
|
||||
- name: Assemble WearOS beta and upload to Google Play
|
||||
if: contains(steps.tagger.outputs.tag, '-beta')
|
||||
run: bundle exec fastlane beta_wearos
|
||||
env:
|
||||
STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }}
|
||||
KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
|
||||
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
|
||||
BUGSNAG_API_KEY: ${{ secrets.BUGSNAG_API_KEY }}
|
||||
|
||||
- name: Assemble beta and upload to Google Play
|
||||
if: contains(steps.tagger.outputs.tag, '-beta')
|
||||
run: bundle exec fastlane beta
|
||||
@@ -147,6 +156,15 @@ jobs:
|
||||
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
|
||||
BUGSNAG_API_KEY: ${{ secrets.BUGSNAG_API_KEY }}
|
||||
|
||||
- name: Assemble WearOS production and upload to Google Play
|
||||
if: "!contains(steps.tagger.outputs.tag, '-beta')"
|
||||
run: bundle exec fastlane production_wearos
|
||||
env:
|
||||
STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }}
|
||||
KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
|
||||
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
|
||||
BUGSNAG_API_KEY: ${{ secrets.BUGSNAG_API_KEY }}
|
||||
|
||||
- name: Assemble production and upload to Google Play
|
||||
if: "!contains(steps.tagger.outputs.tag, '-beta')"
|
||||
run: bundle exec fastlane production
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
package eu.darken.capod.common.bluetooth
|
||||
|
||||
import android.bluetooth.BluetoothDevice
|
||||
import java.time.Instant
|
||||
|
||||
data class BluetoothDevice2(
|
||||
internal val internal: BluetoothDevice,
|
||||
val seenFirstAt: Instant,
|
||||
) {
|
||||
val address: String
|
||||
get() = internal.address
|
||||
|
||||
val name: String?
|
||||
get() = internal.name
|
||||
}
|
||||
@@ -1,6 +1,10 @@
|
||||
package eu.darken.capod.common.bluetooth
|
||||
|
||||
import android.bluetooth.*
|
||||
import android.bluetooth.BluetoothAdapter
|
||||
import android.bluetooth.BluetoothDevice
|
||||
import android.bluetooth.BluetoothHeadset
|
||||
import android.bluetooth.BluetoothManager
|
||||
import android.bluetooth.BluetoothProfile
|
||||
import android.bluetooth.le.BluetoothLeScanner
|
||||
import android.content.BroadcastReceiver
|
||||
import android.content.Context
|
||||
@@ -12,14 +16,24 @@ import android.os.ParcelUuid
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import eu.darken.capod.common.coroutine.DispatcherProvider
|
||||
import eu.darken.capod.common.debug.Bugs
|
||||
import eu.darken.capod.common.debug.logging.Logging.Priority.*
|
||||
import eu.darken.capod.common.debug.logging.Logging.Priority.ERROR
|
||||
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
|
||||
import eu.darken.capod.common.debug.logging.logTag
|
||||
import eu.darken.capod.pods.core.apple.protocol.ContinuityProtocol
|
||||
import kotlinx.coroutines.channels.awaitClose
|
||||
import kotlinx.coroutines.flow.*
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.callbackFlow
|
||||
import kotlinx.coroutines.flow.first
|
||||
import kotlinx.coroutines.flow.flatMapLatest
|
||||
import kotlinx.coroutines.flow.flow
|
||||
import kotlinx.coroutines.flow.map
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
import kotlinx.coroutines.sync.withLock
|
||||
import java.io.IOException
|
||||
import java.time.Instant
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
@@ -74,7 +88,7 @@ class BluetoothManager2 @Inject constructor(
|
||||
}
|
||||
|
||||
override fun onServiceDisconnected(profile: Int) {
|
||||
log(TAG, WARN) { "onServiceDisconnected(profile=$profile" }
|
||||
log(TAG, WARN) { "onServiceDisconnected(profile=$profile)" }
|
||||
close(IOException("BluetoothProfile service disconnected (profile=$profile)"))
|
||||
}
|
||||
|
||||
@@ -128,6 +142,7 @@ class BluetoothManager2 @Inject constructor(
|
||||
log(TAG) { "Adding $device to current devices $currentDevices" }
|
||||
trySend(currentDevices.plus(device))
|
||||
}
|
||||
|
||||
BluetoothDevice.ACTION_ACL_DISCONNECTED -> {
|
||||
log(TAG) { "Removing $device from current devices $currentDevices" }
|
||||
trySend(currentDevices.minus(device))
|
||||
@@ -145,23 +160,54 @@ class BluetoothManager2 @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
private val seenDevicesLock = Mutex()
|
||||
private val seenDevicesCache = mutableMapOf<String, Instant>()
|
||||
|
||||
fun connectedDevices(
|
||||
featureFilter: Set<ParcelUuid> = ContinuityProtocol.BLE_FEATURE_UUIDS
|
||||
): Flow<List<BluetoothDevice>> = isBluetoothEnabled
|
||||
): Flow<List<BluetoothDevice2>> = isBluetoothEnabled
|
||||
.flatMapLatest { monitorDevicesForProfile(BluetoothProfile.HEADSET) }
|
||||
.map { devices ->
|
||||
devices.filter { device ->
|
||||
featureFilter.any { feature ->
|
||||
device.hasFeature(feature)
|
||||
}
|
||||
val currentAddresses = devices.map { it.address }
|
||||
|
||||
seenDevicesLock.withLock {
|
||||
val cleanedCache = seenDevicesCache.filterKeys { currentAddresses.contains(it) }
|
||||
seenDevicesCache.clear()
|
||||
seenDevicesCache.putAll(cleanedCache)
|
||||
}
|
||||
|
||||
devices
|
||||
.filter { device -> featureFilter.any { feature -> device.hasFeature(feature) } }
|
||||
.map { device ->
|
||||
BluetoothDevice2(
|
||||
internal = device,
|
||||
seenFirstAt = seenDevicesLock.withLock {
|
||||
seenDevicesCache[device.address] ?: Instant.now().also {
|
||||
seenDevicesCache[device.address] = it
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
fun bondedDevices(): Flow<Set<BluetoothDevice>> = flow {
|
||||
emit(adapter?.bondedDevices ?: throw IllegalStateException("Bluetooth adapter unavailable"))
|
||||
fun bondedDevices(): Flow<Set<BluetoothDevice2>> = flow {
|
||||
val rawDevices = adapter?.bondedDevices ?: throw IllegalStateException("Bluetooth adapter unavailable")
|
||||
val wrappedDevices = rawDevices.map { device ->
|
||||
|
||||
BluetoothDevice2(
|
||||
internal = device,
|
||||
seenFirstAt = seenDevicesLock.withLock {
|
||||
seenDevicesCache[device.address] ?: Instant.now().also {
|
||||
seenDevicesCache[device.address] = it
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
}.toSet()
|
||||
emit(wrappedDevices)
|
||||
}
|
||||
|
||||
suspend fun nudgeConnection(device: BluetoothDevice): Boolean = getBluetoothProfile().map { bluetoothProfile ->
|
||||
suspend fun nudgeConnection(device: BluetoothDevice2): Boolean = getBluetoothProfile().map { bluetoothProfile ->
|
||||
try {
|
||||
log(TAG) { "Nudging Android connection to $device" }
|
||||
|
||||
@@ -169,7 +215,7 @@ class BluetoothManager2 @Inject constructor(
|
||||
"connect", BluetoothDevice::class.java
|
||||
).apply { isAccessible = true }
|
||||
|
||||
connectMethod.invoke(bluetoothProfile.proxy, device)
|
||||
connectMethod.invoke(bluetoothProfile.proxy, device.internal)
|
||||
|
||||
log(TAG) { "Nudged connection to $device" }
|
||||
true
|
||||
|
||||
@@ -3,6 +3,7 @@ package eu.darken.capod.common.uix
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.core.view.WindowCompat
|
||||
import androidx.lifecycle.LiveData
|
||||
import eu.darken.capod.common.debug.logging.Logging.Priority.VERBOSE
|
||||
import eu.darken.capod.common.debug.logging.log
|
||||
@@ -15,6 +16,8 @@ abstract class Activity2 : AppCompatActivity() {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
log(tag, VERBOSE) { "onCreate(savedInstanceState=$savedInstanceState)" }
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
WindowCompat.setDecorFitsSystemWindows( window, false )
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
|
||||
@@ -7,6 +7,8 @@ import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.annotation.LayoutRes
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.fragment.app.Fragment
|
||||
import eu.darken.capod.common.debug.logging.Logging.Priority.VERBOSE
|
||||
import eu.darken.capod.common.debug.logging.log
|
||||
@@ -40,6 +42,17 @@ abstract class Fragment2(@LayoutRes val layoutRes: Int?) : Fragment(layoutRes ?:
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
log(tag, VERBOSE) { "onViewCreated(view=$view, savedInstanceState=$savedInstanceState)" }
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
|
||||
ViewCompat.setOnApplyWindowInsetsListener(view) { v, insets ->
|
||||
val systemWindowInsets = insets.getInsets(WindowInsetsCompat.Type.systemBars())
|
||||
v.setPadding(
|
||||
v.paddingLeft,
|
||||
systemWindowInsets.top,
|
||||
v.paddingRight,
|
||||
0
|
||||
)
|
||||
insets
|
||||
}
|
||||
}
|
||||
|
||||
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
||||
|
||||
@@ -47,6 +47,11 @@ class ReactionSettings @Inject constructor(
|
||||
false
|
||||
)
|
||||
|
||||
val showPopUpOnConnection = preferences.createFlowPreference(
|
||||
"reaction.popup.connected",
|
||||
false
|
||||
)
|
||||
|
||||
val onePodMode = preferences.createFlowPreference(
|
||||
"reaction.onepod.enabled",
|
||||
false
|
||||
@@ -58,6 +63,7 @@ class ReactionSettings @Inject constructor(
|
||||
autoConnect,
|
||||
autoConnectCondition,
|
||||
showPopUpOnCaseOpen,
|
||||
showPopUpOnConnection,
|
||||
onePodMode,
|
||||
)
|
||||
}
|
||||
@@ -1,15 +1,26 @@
|
||||
package eu.darken.capod.reaction.core.popup
|
||||
|
||||
import eu.darken.capod.common.debug.logging.Logging.Priority.*
|
||||
import eu.darken.capod.common.bluetooth.BluetoothManager2
|
||||
import eu.darken.capod.common.debug.logging.Logging.Priority.INFO
|
||||
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
|
||||
import eu.darken.capod.common.debug.logging.logTag
|
||||
import eu.darken.capod.common.flow.setupCommonEventHandlers
|
||||
import eu.darken.capod.common.flow.withPrevious
|
||||
import eu.darken.capod.main.core.GeneralSettings
|
||||
import eu.darken.capod.monitor.core.PodMonitor
|
||||
import eu.darken.capod.pods.core.PodDevice
|
||||
import eu.darken.capod.pods.core.apple.DualApplePods
|
||||
import eu.darken.capod.reaction.core.ReactionSettings
|
||||
import kotlinx.coroutines.flow.*
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.combine
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
import kotlinx.coroutines.flow.distinctUntilChangedBy
|
||||
import kotlinx.coroutines.flow.emptyFlow
|
||||
import kotlinx.coroutines.flow.flatMapLatest
|
||||
import kotlinx.coroutines.flow.mapNotNull
|
||||
import kotlinx.coroutines.flow.merge
|
||||
import java.time.Duration
|
||||
import java.time.Instant
|
||||
import javax.inject.Inject
|
||||
@@ -19,11 +30,13 @@ import javax.inject.Singleton
|
||||
class PopUpReaction @Inject constructor(
|
||||
private val podMonitor: PodMonitor,
|
||||
private val reactionSettings: ReactionSettings,
|
||||
private val generalSettings: GeneralSettings,
|
||||
private val bluetoothManager: BluetoothManager2,
|
||||
) {
|
||||
|
||||
private val coolDowns = mutableMapOf<PodDevice.Id, Instant>()
|
||||
private val caseCoolDowns = mutableMapOf<PodDevice.Id, Instant>()
|
||||
|
||||
fun monitor(): Flow<Event> = reactionSettings.showPopUpOnCaseOpen.flow
|
||||
private fun monitorCase(): Flow<Event> = reactionSettings.showPopUpOnCaseOpen.flow
|
||||
.flatMapLatest { isEnabled ->
|
||||
if (isEnabled) {
|
||||
podMonitor.mainDevice.distinctUntilChangedBy { it?.rawDataHex }
|
||||
@@ -32,7 +45,7 @@ class PopUpReaction @Inject constructor(
|
||||
}
|
||||
}
|
||||
.withPrevious()
|
||||
.setupCommonEventHandlers(TAG) { "monitor" }
|
||||
.setupCommonEventHandlers(TAG) { "popUpCase" }
|
||||
.mapNotNull { (previous, current) ->
|
||||
if (previous !is DualApplePods? || current !is DualApplePods) {
|
||||
return@mapNotNull null
|
||||
@@ -54,35 +67,37 @@ class PopUpReaction @Inject constructor(
|
||||
}
|
||||
log(TAG) { "Case lid status changed for monitored device." }
|
||||
|
||||
tryPopWindow(current)
|
||||
throttleCasePopUps(current)
|
||||
}
|
||||
|
||||
private suspend fun tryPopWindow(current: DualApplePods): Event? = when {
|
||||
private fun throttleCasePopUps(current: DualApplePods): Event? = when {
|
||||
current.caseLidState == DualApplePods.LidState.OPEN -> {
|
||||
log(TAG, INFO) { "Show popup" }
|
||||
|
||||
val now = Instant.now()
|
||||
val lastShown = coolDowns[current.identifier] ?: Instant.MIN
|
||||
val lastShown = caseCoolDowns[current.identifier] ?: Instant.MIN
|
||||
val sinceLastPop = Duration.between(lastShown, now)
|
||||
log(TAG) { "Time since last popup: $sinceLastPop" }
|
||||
log(TAG) { "Time since last case popup: $sinceLastPop" }
|
||||
|
||||
if (sinceLastPop >= Duration.ofSeconds(10)) {
|
||||
coolDowns[current.identifier] = Instant.now()
|
||||
caseCoolDowns[current.identifier] = Instant.now()
|
||||
Event.PopupShow(device = current)
|
||||
} else {
|
||||
log(TAG, INFO) { "Popup is still on cooldown: $sinceLastPop" }
|
||||
log(TAG, INFO) { "Case popup is still on cooldown: $sinceLastPop" }
|
||||
null
|
||||
}
|
||||
}
|
||||
|
||||
current.caseLidState != DualApplePods.LidState.OPEN -> {
|
||||
when (current.caseLidState) {
|
||||
DualApplePods.LidState.CLOSED -> {
|
||||
log(TAG, INFO) { "Lid was actively closed, resetting cooldown." }
|
||||
coolDowns.remove(current.identifier)
|
||||
caseCoolDowns.remove(current.identifier)
|
||||
}
|
||||
|
||||
else -> {
|
||||
log(TAG, WARN) { "Lid was was not actively closed, refreshing cooldown." }
|
||||
coolDowns[current.identifier] = Instant.now()
|
||||
caseCoolDowns[current.identifier] = Instant.now()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,9 +105,78 @@ class PopUpReaction @Inject constructor(
|
||||
|
||||
Event.PopupHide()
|
||||
}
|
||||
|
||||
else -> null
|
||||
}
|
||||
|
||||
private val connectionCoolDowns = mutableMapOf<String, Instant>()
|
||||
|
||||
private fun monitorConnection(): Flow<Event> = reactionSettings.showPopUpOnConnection.flow
|
||||
.flatMapLatest { isEnabled ->
|
||||
if (!isEnabled) return@flatMapLatest emptyFlow()
|
||||
|
||||
combine(
|
||||
generalSettings.mainDeviceAddress.flow,
|
||||
bluetoothManager.connectedDevices().distinctUntilChanged(),
|
||||
podMonitor.mainDevice.distinctUntilChangedBy { it?.rawDataHex },
|
||||
) { targetAddress, devices, broadcast ->
|
||||
log(TAG) { "$targetAddress $broadcast $devices " }
|
||||
val direct = devices.singleOrNull { it.address == targetAddress }.also {
|
||||
log(TAG, VERBOSE) { "Connected main device is $it" }
|
||||
}
|
||||
if (direct == null) {
|
||||
connectionCoolDowns.remove(targetAddress).also {
|
||||
if (it != null) log(TAG) { "Cleared connection cooldown for $targetAddress due to disconect" }
|
||||
}
|
||||
}
|
||||
if (direct != null && broadcast != null) direct to broadcast else null
|
||||
}
|
||||
}
|
||||
.withPrevious()
|
||||
.mapNotNull { (previouss, currents) ->
|
||||
val previousConnected = previouss?.first
|
||||
log(TAG, VERBOSE) { "previousConnected: $previousConnected" }
|
||||
val previousBroadcasted = previouss?.second
|
||||
log(TAG, VERBOSE) { "previousBroadcasted: $previousBroadcasted" }
|
||||
val currentConnected = currents?.first
|
||||
log(TAG, VERBOSE) { "currentConnected: $currentConnected" }
|
||||
val currentBroadcasted = currents?.second
|
||||
log(TAG, VERBOSE) { "currentBroadcasted: $currentBroadcasted" }
|
||||
|
||||
if (previousConnected != null && previousBroadcasted != null && currentConnected == null) {
|
||||
return@mapNotNull Event.PopupHide()
|
||||
}
|
||||
|
||||
if (currentConnected == null || currentBroadcasted == null) {
|
||||
// We need an active connection
|
||||
return@mapNotNull null
|
||||
}
|
||||
|
||||
val ageOfBroadcastedDevice = Duration.between(Instant.now(), currentBroadcasted.seenFirstAt)
|
||||
val ageOfConnectedDevice = Duration.between(Instant.now(), currentConnected.seenFirstAt)
|
||||
if (ageOfBroadcastedDevice > (ageOfConnectedDevice + Duration.ofSeconds(30))) {
|
||||
// This is likely a false positive, some random nearby device
|
||||
// We expect the first broadcasts to not be much older than the first connection
|
||||
log(TAG, VERBOSE) { "Current broadcasted main device is probably a false-positive" }
|
||||
return@mapNotNull null
|
||||
}
|
||||
|
||||
val now = Instant.now()
|
||||
val lastShown = connectionCoolDowns[currentConnected.address]
|
||||
val sinceLastPop = lastShown?.let { Duration.between(it, now) }
|
||||
log(TAG) { "Time since last connection popup: ${sinceLastPop?.seconds}s" }
|
||||
|
||||
if (lastShown == null) {
|
||||
connectionCoolDowns[currentConnected.address] = Instant.now()
|
||||
Event.PopupShow(device = currentBroadcasted)
|
||||
} else {
|
||||
log(TAG) { "Connection popup is still on cooldown: $sinceLastPop" }
|
||||
null
|
||||
}
|
||||
}
|
||||
.setupCommonEventHandlers(TAG) { "popUpConnection" }
|
||||
|
||||
fun monitor(): Flow<Event> = merge(monitorCase(), monitorConnection())
|
||||
|
||||
sealed class Event {
|
||||
data class PopupShow(
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Невядомы стан</string>
|
||||
<string name="last_seen_x">Апошні раз быў: %s</string>
|
||||
<string name="first_seen_x">Упершыню быў: %s</string>
|
||||
<string name="permission_post_notifications_label">Адлюстраванне апавяшчэнняў</string>
|
||||
<string name="permission_post_notifications_description">"Дазволіць CAPod адлюстроўваць вам апавяшчэнні аб вашых AirPods: напрыклад, іх бягучы стан пры падключэнні."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Estat desconegut</string>
|
||||
<string name="last_seen_x">Últim cop vist: %s</string>
|
||||
<string name="first_seen_x">Primera vegada vist: %s</string>
|
||||
<string name="permission_post_notifications_label">Publica notificacions</string>
|
||||
<string name="permission_post_notifications_description">"Permet que el CAPod us mostri notificacions sobre els vostres AirPods, p. ex. el seu estat actual mentre estan connectats."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Neznámý stav</string>
|
||||
<string name="last_seen_x">Naposledy spatřeno: %s</string>
|
||||
<string name="first_seen_x">Poprvé spatřeno: %s</string>
|
||||
<string name="permission_post_notifications_label">Posílat zprávy</string>
|
||||
<string name="permission_post_notifications_description">"Povolte aplikaci CAPod zobrazovat oznámení o sluchátkách AirPods, např. o jejich aktuálním stavu během připojení."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,6 @@
|
||||
<string name="pods_case_unknown_state">Unbekannter Zustand</string>
|
||||
<string name="last_seen_x">Zuletzt gesehen: %s</string>
|
||||
<string name="first_seen_x">Zum ersten Mal gesehen: %s</string>
|
||||
<string name="permission_post_notifications_label">Benachrichtigungen posten</string>
|
||||
<string name="permission_post_notifications_description">"Erlauben Sie CAPod, Ihnen Benachrichtigungen über Ihre AirPods anzuzeigen, z.b. ihren aktuellen Status, während sie verbunden sind."</string>
|
||||
<string name="permission_post_notifications_label">Zeige Benachrichtigungen</string>
|
||||
<string name="permission_post_notifications_description">"Erlaube CAPod, Benachrichtigungen über deine AirPods anzuzeigen, z. B. deren aktuellen Status, während die Verbindung besteht."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Estado desconocido</string>
|
||||
<string name="last_seen_x">Visto por última vez: %s</string>
|
||||
<string name="first_seen_x">Visto por primera vez: %s</string>
|
||||
<string name="permission_post_notifications_label">Publicar las notificaciones</string>
|
||||
<string name="permission_post_notifications_description">"Permite que CAPod te muestre notificaciones sobre tus AirPods, por ejemplo, su estado actual mientras están conectados."</string>
|
||||
</resources>
|
||||
|
||||
@@ -6,5 +6,4 @@
|
||||
<string name="general_value_not_available_label">Pole saadaval</string>
|
||||
<string name="pods_dual_left_label">Vasak klapp</string>
|
||||
<string name="pods_dual_right_label">Parem klapp</string>
|
||||
<string name="permission_post_notifications_description">"Luba CAPodil näidata AirPodsi teateid, nt praegust olekut ühendatud olles."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">État inconnu</string>
|
||||
<string name="last_seen_x">Vu pour la dernière fois : %s</string>
|
||||
<string name="first_seen_x">Vu pour la première fois : %s</string>
|
||||
<string name="permission_post_notifications_label">Afficher des notifications</string>
|
||||
<string name="permission_post_notifications_description">"Permettre à CAPod d’afficher des notifications au sujet des AirPods, p. ex. leur état actuel alors qu’ils sont connectés."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">अज्ञात अवस्था</string>
|
||||
<string name="last_seen_x">अंतिम बार देखे गए: %s</string>
|
||||
<string name="first_seen_x">पहली बार देखा गया: %s</string>
|
||||
<string name="permission_post_notifications_label">सूचनाएं जारी करें</string>
|
||||
<string name="permission_post_notifications_description">"CAPod को अपने AirPods के बारे में सूचनाएं दिखाने की अनुमति दें, जैसे कि जुड़े रहने के दौरान उनकी वर्तमान स्थिति।"</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Status tidak diketahui</string>
|
||||
<string name="last_seen_x">Terakhir terlihat: %s</string>
|
||||
<string name="first_seen_x">Pertama kali terlihat: %s</string>
|
||||
<string name="permission_post_notifications_label">Posting pemberitahuan</string>
|
||||
<string name="permission_post_notifications_description">"Izinkan CAPod menampilkan pemberitahuan tentang AirPods Anda, mis. status saat terhubung."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">מצב לא ידוע</string>
|
||||
<string name="last_seen_x">נראה לאחרונה: %s</string>
|
||||
<string name="first_seen_x">נראה לראשונה: %s</string>
|
||||
<string name="permission_post_notifications_label">הודעות פרסום</string>
|
||||
<string name="permission_post_notifications_description">"לאשר ל-CAPod להראות לך התראות על ה-AirPods שלך, למשל. המצב הנוכחי שלהם בזמן שהם מחוברים."</string>
|
||||
</resources>
|
||||
|
||||
@@ -55,6 +55,4 @@
|
||||
<string name="pods_case_unknown_state">Keadaan tidak diketahui</string>
|
||||
<string name="last_seen_x">Terakhir dilihat: %s</string>
|
||||
<string name="first_seen_x">Pertama dilihat: %s</string>
|
||||
<string name="permission_post_notifications_label">Siarkan pemberitahuan</string>
|
||||
<string name="permission_post_notifications_description">"Benarkan CAPod menunjukkan pemberitahuan kepada anda tentang AirPods anda, mis. status semasa mereka semasa disambungkan."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Onbekende staat</string>
|
||||
<string name="last_seen_x">Laatst gezien: %s</string>
|
||||
<string name="first_seen_x">Eerst gezien: %s</string>
|
||||
<string name="permission_post_notifications_label">Post notificaties</string>
|
||||
<string name="permission_post_notifications_description">"Sta CAPod toe notificaties over je AirPods te tonen, b.v. de huidige verbindingsstatus."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Ukjent status</string>
|
||||
<string name="last_seen_x">Sist sett: %s</string>
|
||||
<string name="first_seen_x">Først sett: %s</string>
|
||||
<string name="permission_post_notifications_label">Vis varsler</string>
|
||||
<string name="permission_post_notifications_description">"La CAPod vise varsler om dine AirPods, f.eks. nåværende status under tilkobling."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Nieznany stan</string>
|
||||
<string name="last_seen_x">Ostatnio widziane: %s</string>
|
||||
<string name="first_seen_x">Widziane pierwszy raz: %s</string>
|
||||
<string name="permission_post_notifications_label">Wysyłanie powiadomień</string>
|
||||
<string name="permission_post_notifications_description">"Zezwól CAPod na wyświetlanie powiadomień o słuchawkach AirPods, np. ich aktualnym statusie podczas połączenia."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Estado desconhecido</string>
|
||||
<string name="last_seen_x">Visto pela última vez: %s</string>
|
||||
<string name="first_seen_x">Visto pela primeira vez: %s</string>
|
||||
<string name="permission_post_notifications_label">Post de notificações</string>
|
||||
<string name="permission_post_notifications_description">"Permita que o CAPod mostre notificações sobre seus AirPods, por exemplo. seu status atual enquanto conectado."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Estado desconhecido</string>
|
||||
<string name="last_seen_x">Última vez visto: %s</string>
|
||||
<string name="first_seen_x">Primeira vez visto: %s</string>
|
||||
<string name="permission_post_notifications_label">Enviar notificações</string>
|
||||
<string name="permission_post_notifications_description">"Permitir que o CAPod envie notificações sobre os seus AirPods, por exemplo, o seu estado atual enquanto conectado."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Неизвестное состояние</string>
|
||||
<string name="last_seen_x">Последние: %s</string>
|
||||
<string name="first_seen_x">Первые: %s</string>
|
||||
<string name="permission_post_notifications_label">Уведомления о публикации</string>
|
||||
<string name="permission_post_notifications_description">"Разрешить CAPod показывать уведомления о ваших AirPods, например текущий статус при подключении."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Neznámy stav</string>
|
||||
<string name="last_seen_x">Naposledy videné: %s</string>
|
||||
<string name="first_seen_x">Prvýkrát videné: %s</string>
|
||||
<string name="permission_post_notifications_label">Zobraziť oznámenia</string>
|
||||
<string name="permission_post_notifications_description">"Povoľte CAPod, aby vám zobrazoval upozornenia týkajúce sa vašich slúchadiel AirPods, napr. ich aktuálny stav počas pripojenia."</string>
|
||||
</resources>
|
||||
|
||||
@@ -8,26 +8,26 @@
|
||||
<string name="general_grant_permission_action">İzin ver</string>
|
||||
<string name="overview_nomaindevice_label">Birincil aygıt yok</string>
|
||||
<string name="overview_nomaindevice_description">Tespit edilen tüm aygıtların sizin olması muhtemel değildir. Aygıtınızı açın ve bağlayın veya ayarları yapın.</string>
|
||||
<string name="overview_bluetooth_disabled_label">Bluetooth devre dışı</string>
|
||||
<string name="overview_bluetooth_disabled_description">Bluetooth devre dışı, lütfen etkinleştirin ;)</string>
|
||||
<string name="overview_bluetooth_disabled_label">Bluetooth kapalı</string>
|
||||
<string name="overview_bluetooth_disabled_description">Lütfen etkinleştirin ;)</string>
|
||||
<string name="permission_bluetooth_connect_label">Bluetooth bağlantısı</string>
|
||||
<string name="permission_bluetooth_connect_description">Bu uygulama, eşleştirilmiş aygıtlarla etkileşime geçmek ve bağlantıları başlatmak için \"Bluetooth bağlantısı\" izni gerektirir.</string>
|
||||
<string name="permission_bluetooth_scan_label">Bluetooth taraması</string>
|
||||
<string name="permission_bluetooth_scan_description">\"Bluetooth tarama\" izni, bu uygulamanın AirPod\'larınız gibi yakındaki aygıtlardan Bluetooth verilerini keşfetmesine ve almasına olanak tanır.</string>
|
||||
<string name="permission_bluetooth_scan_description">\"Bluetooth tarama\" izni, bu uygulamanın AirPod\'larınız gibi yakınınızdaki aygıtlardan Bluetooth verilerini keşfetmesine ve almasına olanak tanır.</string>
|
||||
<string name="permission_bluetooth_label">Bluetooth</string>
|
||||
<string name="permission_bluetooth_description">Bu uygulama, eşleştirilmiş bluetooth aygıtlarına bağlanmak için \"Bluetooth\" izni gerektirir.</string>
|
||||
<string name="permission_access_fine_location_label">Tam konuma erişim</string>
|
||||
<string name="permission_access_fine_location_description">CAPod, Bluetooth Düşük Enerji verilerini almak için \"tam konum\" iznini kullanır. Kulaklığınız, durumlarını yayınlamak için Bluetooth Düşük Enerji teknolojisini kullanır. Bu uygulama, konumunuzu belirlemek için Bluetooth verilerini KULLANMAZ.</string>
|
||||
<string name="permission_background_location_label">Arka planda konum erişimi</string>
|
||||
<string name="permission_background_location_description">CAPod, uygulama kapalıyken \"Açılır pencereyi göster\" ve \"Otomatik Bağlantı\" gibi özellikleri etkinleştirmek için \"arka planda konum erişimi\"ni kullanır. Arka planda konum erişimi, uygulamanın arka plandayken Bluetooth Düşük Enerji verilerini almasına olanak tanır. Bu uygulama, konumunuzu belirlemek için Bluetooth verilerini KULLANMAZ.</string>
|
||||
<string name="permission_ignore_battery_optimizations_label">Pil optimizasyonlarını devre dışı bırak</string>
|
||||
<string name="permission_ignore_battery_optimizations_label">Pil optimizasyonunu devre dışı bırak</string>
|
||||
<string name="permission_ignore_battery_optimizations_description">Pil optimizasyonları, uygulamanın arka planda çalışırken güvenilir bir şekilde Bluetooth verilerini almasını engeller.</string>
|
||||
<string name="permission_required_title">Aşağıdaki izin gereklidir:</string>
|
||||
<string name="permission_system_alert_window_label">Sistem Uyarı Penceresi</string>
|
||||
<string name="permission_system_alert_window_description">\"Açılır Pencere Göster\" özelliğine izin vermek için CAPod\'un diğer uygulamaların üzerinde gösterilmesine izin vermelisiniz.</string>
|
||||
<string name="permission_system_alert_window_description">\"Açılır pencereyi göster\" özelliğine izin vermek için lütfen CAPod uygulamasının diğer uygulamaların üzerinde gösterilmesine izin verin.</string>
|
||||
<string name="settings_scanner_mode_lowpower_label">Düşük güç</string>
|
||||
<string name="settings_scanner_mode_balanced_label">Dengeli</string>
|
||||
<string name="settings_scanner_mode_lowlatency_label">Düşük gecikme süresi</string>
|
||||
<string name="settings_scanner_mode_lowlatency_label">Düşük gecikme</string>
|
||||
<string name="settings_monitor_mode_manual_label">Uygulama açıkken</string>
|
||||
<string name="settings_monitor_mode_automatic_label">Aygıt bağlandığında</string>
|
||||
<string name="settings_monitor_mode_always_label">Her zaman</string>
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Bilinmeyen durum</string>
|
||||
<string name="last_seen_x">Son görülme: %s</string>
|
||||
<string name="first_seen_x">İlk görülme: %s</string>
|
||||
<string name="permission_post_notifications_label">Gönderi bildirimleri</string>
|
||||
<string name="permission_post_notifications_description">"CAPod'un size AirPod'larınız hakkında bildirimler göstermesine izin verin, ör. bağlıyken geçerli durumları."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,4 @@
|
||||
<string name="pods_case_unknown_state">Невідомий стан</string>
|
||||
<string name="last_seen_x">Востаннє був: %s</string>
|
||||
<string name="first_seen_x">Уперше був: %s</string>
|
||||
<string name="permission_post_notifications_label">Показ сповіщень</string>
|
||||
<string name="permission_post_notifications_description">"Дозволити CAPod показувати вам сповіщення щодо ваших AirPods, наприклад, їх поточний стан при підключенні."</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,6 @@
|
||||
<string name="pods_case_unknown_state">未知狀態</string>
|
||||
<string name="last_seen_x">最後連線:%s</string>
|
||||
<string name="first_seen_x">首次連線:%s</string>
|
||||
<string name="permission_post_notifications_label">張貼通知</string>
|
||||
<string name="permission_post_notifications_description">"允許 CAPod 為您顯示關於您 AirPods 的通知,例如在連線時顯示它們的目前狀態。"</string>
|
||||
<string name="permission_post_notifications_label">顯示通知</string>
|
||||
<string name="permission_post_notifications_description">"允許 CAPod 顯示關於您 AirPods 的通知,例如在連線時顯示它們的目前狀態。"</string>
|
||||
</resources>
|
||||
|
||||
@@ -58,6 +58,6 @@
|
||||
<string name="pods_case_unknown_state">未知狀態</string>
|
||||
<string name="last_seen_x">最後連線:%s</string>
|
||||
<string name="first_seen_x">首次連線:%s</string>
|
||||
<string name="permission_post_notifications_label">張貼通知</string>
|
||||
<string name="permission_post_notifications_description">"允許 CAPod 為您顯示關於您 AirPods 的通知,例如在連線時顯示它們的目前狀態。"</string>
|
||||
<string name="permission_post_notifications_label">顯示通知</string>
|
||||
<string name="permission_post_notifications_description">"允許 CAPod 顯示關於您 AirPods 的通知,例如在連線時顯示它們的目前狀態。"</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,7 +17,7 @@ android {
|
||||
minSdk = ProjectConfig.minSdk
|
||||
targetSdk = ProjectConfig.targetSdk
|
||||
|
||||
versionCode = ProjectConfig.Version.code + 1 // Wear app
|
||||
versionCode = ProjectConfig.Version.code
|
||||
versionName = ProjectConfig.Version.name
|
||||
|
||||
testInstrumentationRunner = "eu.darken.capod.HiltTestRunner"
|
||||
|
||||
@@ -8,6 +8,8 @@ import android.text.SpannableStringBuilder
|
||||
import android.view.View
|
||||
import androidx.activity.result.ActivityResultLauncher
|
||||
import androidx.activity.result.contract.ActivityResultContracts
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.fragment.app.viewModels
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import eu.darken.capod.BuildConfig
|
||||
@@ -147,6 +149,7 @@ class OverviewFragment : Fragment3(R.layout.main_fragment) {
|
||||
vm.launchUpgradeFlow.observe2 {
|
||||
it(requireActivity())
|
||||
}
|
||||
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,10 @@ package eu.darken.capod.main.ui.settings
|
||||
|
||||
import android.os.Bundle
|
||||
import android.os.Parcelable
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ListView
|
||||
import androidx.appcompat.widget.Toolbar
|
||||
import androidx.fragment.app.viewModels
|
||||
import androidx.preference.Preference
|
||||
@@ -15,6 +18,7 @@ import eu.darken.capod.common.viewbinding.viewBinding
|
||||
import eu.darken.capod.databinding.SettingsFragmentBinding
|
||||
import kotlinx.parcelize.Parcelize
|
||||
|
||||
|
||||
@AndroidEntryPoint
|
||||
class SettingsFragment : Fragment2(R.layout.settings_fragment),
|
||||
PreferenceFragmentCompat.OnPreferenceStartFragmentCallback {
|
||||
|
||||
+4
-4
@@ -1,19 +1,19 @@
|
||||
package eu.darken.capod.main.ui.settings.general
|
||||
|
||||
import android.bluetooth.BluetoothDevice
|
||||
import android.content.Context
|
||||
import android.content.DialogInterface
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import eu.darken.capod.R
|
||||
import eu.darken.capod.common.bluetooth.BluetoothDevice2
|
||||
|
||||
|
||||
class DeviceSelectionDialogFactory constructor(private val context: Context) {
|
||||
|
||||
fun create(
|
||||
devices: List<BluetoothDevice>,
|
||||
current: BluetoothDevice?,
|
||||
callback: (BluetoothDevice?) -> Unit
|
||||
devices: List<BluetoothDevice2>,
|
||||
current: BluetoothDevice2?,
|
||||
callback: (BluetoothDevice2?) -> Unit
|
||||
): AlertDialog {
|
||||
return MaterialAlertDialogBuilder(context).apply {
|
||||
setTitle(R.string.settings_maindevice_address_label)
|
||||
|
||||
-1
@@ -30,7 +30,6 @@ class GeneralSettingsFragmentVM @Inject constructor(
|
||||
val events = SingleLiveEvent<GeneralSettingsEvents>()
|
||||
|
||||
init {
|
||||
|
||||
generalSettings.monitorMode.flow
|
||||
.withPrevious()
|
||||
.filter { (old, new) ->
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package eu.darken.capod.monitor.core.worker
|
||||
|
||||
import android.app.NotificationManager
|
||||
import android.bluetooth.BluetoothDevice
|
||||
import android.content.Context
|
||||
import androidx.hilt.work.HiltWorker
|
||||
import androidx.work.CoroutineWorker
|
||||
@@ -9,6 +8,7 @@ import androidx.work.ForegroundInfo
|
||||
import androidx.work.WorkerParameters
|
||||
import dagger.assisted.Assisted
|
||||
import dagger.assisted.AssistedInject
|
||||
import eu.darken.capod.common.bluetooth.BluetoothDevice2
|
||||
import eu.darken.capod.common.bluetooth.BluetoothManager2
|
||||
import eu.darken.capod.common.coroutine.DispatcherProvider
|
||||
import eu.darken.capod.common.debug.Bugs
|
||||
@@ -30,8 +30,20 @@ import eu.darken.capod.reaction.core.autoconnect.AutoConnect
|
||||
import eu.darken.capod.reaction.core.playpause.PlayPause
|
||||
import eu.darken.capod.reaction.core.popup.PopUpReaction
|
||||
import eu.darken.capod.reaction.ui.popup.PopUpWindow
|
||||
import kotlinx.coroutines.*
|
||||
import kotlinx.coroutines.flow.*
|
||||
import kotlinx.coroutines.CancellationException
|
||||
import kotlinx.coroutines.cancel
|
||||
import kotlinx.coroutines.cancelChildren
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.catch
|
||||
import kotlinx.coroutines.flow.combine
|
||||
import kotlinx.coroutines.flow.distinctUntilChanged
|
||||
import kotlinx.coroutines.flow.emptyFlow
|
||||
import kotlinx.coroutines.flow.first
|
||||
import kotlinx.coroutines.flow.flatMapLatest
|
||||
import kotlinx.coroutines.flow.flow
|
||||
import kotlinx.coroutines.flow.launchIn
|
||||
import kotlinx.coroutines.flow.onEach
|
||||
import kotlinx.coroutines.withContext
|
||||
|
||||
|
||||
@HiltWorker
|
||||
@@ -130,7 +142,7 @@ class MonitorWorker @AssistedInject constructor(
|
||||
.flatMapLatest { arguments ->
|
||||
val monitorMode = arguments[0] as MonitorMode
|
||||
val mainAddress = arguments[1] as String?
|
||||
val devices = arguments[2] as Collection<BluetoothDevice>
|
||||
val devices = arguments[2] as Collection<BluetoothDevice2>
|
||||
|
||||
log(TAG) { "Monitor mode: $monitorMode" }
|
||||
when (monitorMode) {
|
||||
@@ -145,7 +157,7 @@ class MonitorWorker @AssistedInject constructor(
|
||||
log(TAG, WARN) { "Main device address not set, staying alive while any is connected" }
|
||||
}
|
||||
devices.any { it.address == mainAddress } -> {
|
||||
log(TAG) { "MainDevice is connected ($mainAddress), aborting any timeout." }
|
||||
log(TAG) { "Main device is connected ($mainAddress), aborting any timeout." }
|
||||
}
|
||||
else -> {
|
||||
log(TAG) { "No known Pods are connected, canceling worker soon." }
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package eu.darken.capod.reaction.ui
|
||||
|
||||
import android.bluetooth.BluetoothDevice
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import androidx.annotation.Keep
|
||||
@@ -11,6 +10,7 @@ import androidx.preference.ListPreference
|
||||
import androidx.preference.Preference
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import eu.darken.capod.R
|
||||
import eu.darken.capod.common.bluetooth.BluetoothDevice2
|
||||
import eu.darken.capod.common.uix.PreferenceFragment3
|
||||
import eu.darken.capod.common.upgrade.UpgradeRepo
|
||||
import eu.darken.capod.main.core.GeneralSettings
|
||||
@@ -36,7 +36,7 @@ class ReactionSettingsFragment : PreferenceFragment3() {
|
||||
override val preferenceFile: Int = R.xml.preferences_reactions
|
||||
|
||||
private var isPro: Boolean = false
|
||||
private var bondedDevices: List<BluetoothDevice> = emptyList()
|
||||
private var bondedDevices: List<BluetoothDevice2> = emptyList()
|
||||
private val autoConnectConditionPref by lazy { findPreference<ListPreference>(settings.autoConnectCondition.key)!! }
|
||||
|
||||
override fun onPreferencesCreated() {
|
||||
@@ -83,6 +83,11 @@ class ReactionSettingsFragment : PreferenceFragment3() {
|
||||
upgradeRepo.launchBillingFlow(requireActivity())
|
||||
preference.isChecked = false
|
||||
return true
|
||||
} else if (preference.key == reactionSettings.showPopUpOnConnection.key && !isPro) {
|
||||
preference as CheckBoxPreference
|
||||
upgradeRepo.launchBillingFlow(requireActivity())
|
||||
preference.isChecked = false
|
||||
return true
|
||||
}
|
||||
|
||||
return super.onPreferenceTreeClick(preference)
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M20,2H4A2,2 0 0,0 2,4V22L6,18H20A2,2 0 0,0 22,16V4C22,2.89 21.1,2 20,2Z" />
|
||||
</vector>
|
||||
@@ -0,0 +1,10 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M20 2H4C2.9 2 2 2.9 2 4V22L6 18H20C21.1 18 22 17.1 22 16V4C22 2.9 21.1 2 20 2M20 16H5.2L4 17.2V4H20V16Z" />
|
||||
</vector>
|
||||
@@ -22,6 +22,8 @@
|
||||
android:layout_height="0dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:paddingBottom="48dp"
|
||||
android:clipToPadding="false"
|
||||
tools:listitem="@layout/overview_pods_dual_item"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/toolbar" />
|
||||
|
||||
@@ -37,10 +37,9 @@
|
||||
<string name="settings_maindevice_address_none">غير موجود</string>
|
||||
<string name="settings_maindevice_model_label">طِراز جهازك</string>
|
||||
<string name="settings_maindevice_model_description">طِراز جهازك الرئيسي. يساعد هذا التطبيق في التعرف على جهازك عندما لا يكون متصلاً بهاتفك.</string>
|
||||
<string name="settings_popup_caseopen_label">عرض إشعار منبثق</string>
|
||||
<string name="settings_popup_caseopen_description">عرض إشعار منبثق عند فتح علبة الجهاز (تجريبي).</string>
|
||||
<string name="settings_onepod_mode_label">وضعية السماعة الواحدة</string>
|
||||
<string name="settings_onepod_mode_description">ليس بالضرورة ارتداء كِلتا السمَّاعتين، ارتداء سمَّاعة واحدة يكفي لتحريك ردود الفعل.</string>
|
||||
<string name="settings_popup_caseopen_description">عرض إشعار منبثق عند فتح علبة الجهاز (تجريبي).</string>
|
||||
<string name="notification_channel_device_status_label">حالة الجهاز</string>
|
||||
<string name="debug_debuglog_size_label">الحجم</string>
|
||||
<string name="debug_debuglog_size_compressed_label">الحجم المضغوط</string>
|
||||
|
||||
@@ -33,10 +33,9 @@
|
||||
<string name="settings_maindevice_address_none">Heç biri</string>
|
||||
<string name="settings_maindevice_model_label">Cihazınızın modeli</string>
|
||||
<string name="settings_maindevice_model_description">Əsas cihazının modeli. Bu, telefonunuzla bağlantı qurulmadığı vaxtlarda tətbiqin cihazınızı tanımasına kömək edir.</string>
|
||||
<string name="settings_popup_caseopen_label">Açılan pəncərəni göstər</string>
|
||||
<string name="settings_popup_caseopen_description">Cihazın qutusu açılanda bir açılan pəncərə göstər (təcrübi).</string>
|
||||
<string name="settings_onepod_mode_label">Tək tərəf rejimi</string>
|
||||
<string name="settings_onepod_mode_description">Hər iki tərəfi də taxmağa ehtiyac yoxdur, reaksiyaları tətikləmək üçün tək tərəfi taxmaq yetərlidir.</string>
|
||||
<string name="settings_popup_caseopen_description">Cihazın qutusu açılanda bir açılan pəncərə göstər (təcrübi).</string>
|
||||
<string name="notification_channel_device_status_label">Cihaz vəziyyəti</string>
|
||||
<string name="debug_debuglog_size_label">Həcm</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Sıxışdırılmış həcm</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Няма</string>
|
||||
<string name="settings_maindevice_model_label">Мадэль вашай прылады</string>
|
||||
<string name="settings_maindevice_model_description">Мадэль вашай прылады. Гэта дапамагае праграме апазнаць вашу прыладу, калі яна не падключана да вашага тэлефона.</string>
|
||||
<string name="settings_popup_caseopen_label">Паказваць апавяшчэнне</string>
|
||||
<string name="settings_popup_caseopen_description">Паказваць апавяшчэнне, калі футляр прылады адчынены (эксперыментальная функцыя).</string>
|
||||
<string name="settings_onepod_mode_label">Рэжым аднаго навушніка</string>
|
||||
<string name="settings_onepod_mode_description">Нашэнне абодвух навушнікаў не абавязкова, нашэнне аднаго навушніка цалкам дастаткова для запуску рэакцый.</string>
|
||||
<string name="settings_popup_caseopen_description">Паказваць апавяшчэнне, калі футляр прылады адчынены (эксперыментальная функцыя).</string>
|
||||
<string name="notification_channel_device_status_label">Статус прылады</string>
|
||||
<string name="debug_debuglog_size_label">Памер</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Сціснуты памер</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">Трансляцыі даных BLE прымаюцца CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Безвынікова</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Не ўдалося выправіць непаладку. Не дапамагла ніводная камбінацыя параметраў сумяшчальнасці.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Ваш тэлефон наогул не атрымаў ніякіх даных BLE. Вы можаце паўтарыць гэты тэст у шматлюдным месцы, каб даведацца, ці могуць быць атрыманыя даныя з іншых крыніц (акрамя вашых навушнікаў). Няма атрыманых даных, якія паказваюць на праблему з аперацыйнай сістэмай вашага тэлефона.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Ваш тэлефон атрымаў даныя BLE, але яны паступаюць з прылады, якая не падтрымліваецца. Вашы навушнікі ўключаны? Ці падтрымлівае CAPod вашы навушнікі?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Паспрабаваць яшчэ раз</string>
|
||||
<string name="troubleshoot_action">Выпраўленне непаладак</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Cap</string>
|
||||
<string name="settings_maindevice_model_label">El vostre model de dispositiu</string>
|
||||
<string name="settings_maindevice_model_description">El model del vostre dispositiu principal. Això ajuda l\'aplicació a reconèixer el vostre dispositiu quan no està connectat al vostre telèfon.</string>
|
||||
<string name="settings_popup_caseopen_label">Mostra la finestra emergent</string>
|
||||
<string name="settings_popup_caseopen_description">Mostra una finestra emergent quan s\'obre la funda del dispositiu (experimental).</string>
|
||||
<string name="settings_onepod_mode_label">Mode d\'un AirPod</string>
|
||||
<string name="settings_onepod_mode_description">No cal portar els dos AirdPods, per provocar reaccions només cal portar-ne un.</string>
|
||||
<string name="settings_popup_caseopen_description">Mostra una finestra emergent quan s\'obre la funda del dispositiu (experimental).</string>
|
||||
<string name="notification_channel_device_status_label">Estat del dispositiu</string>
|
||||
<string name="debug_debuglog_size_label">Mida</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Mida comprimida</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">El CAPod està rebent emissions d\'anuncis BLE.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Incorrecte</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">La resolució de problemes ha fallat. No ha funcionat cap combinació d\'opcions de compatibilitat.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">El vostre telèfon no ha rebut cap dada BLE. Podeu tornar a provar aquesta prova en una zona plena de gent per veure si es poden rebre fonts de dades (que no siguin els vostres auriculars). No es reben dades que indiquen un problema amb el sistema operatiu del vostre telèfon.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">El vostre telèfon ha rebut dades BLE, però les dades no provenen de cap dispositiu compatible. Teniu els auriculars encesos? El CAPod és compatible amb els vostres auriculars?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Torna-ho a provar</string>
|
||||
<string name="troubleshoot_action">Resolució de problemes</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Žádná</string>
|
||||
<string name="settings_maindevice_model_label">Model vašeho zařízení</string>
|
||||
<string name="settings_maindevice_model_description">Model vašeho hlavního zařízení. To pomůže aplikaci rozpoznat vaše zařízení, když není připojeno k telefonu.</string>
|
||||
<string name="settings_popup_caseopen_label">Zobrazit vyskakovací okno</string>
|
||||
<string name="settings_popup_caseopen_description">Zobrazit vyskakovací okno, pokud je pouzdro zařízení otevřeno (experimentální).</string>
|
||||
<string name="settings_onepod_mode_label">Režim jednoho sluchátka</string>
|
||||
<string name="settings_onepod_mode_description">Není nutné nosit obě sluchátka, k vyvolání reakce stačí nosit jen jedno.</string>
|
||||
<string name="settings_popup_caseopen_description">Zobrazit vyskakovací okno, pokud je pouzdro zařízení otevřeno (experimentální).</string>
|
||||
<string name="notification_channel_device_status_label">Stav zařízení</string>
|
||||
<string name="debug_debuglog_size_label">Velikost</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Komprimovaná velikost</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">CAPod přijímá reklamní vysílání BLE.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Neúspěšné</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Řešení problémů se nezdařilo. Žádná kombinace možností kompatibility nepomohla.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Telefon nepřijal vůbec žádná data BLE. Tento test můžete zopakovat v přelidněném prostoru, abyste zjistili, zda lze přijímat i jiné zdroje dat (než vaše sluchátka). Nepřijímání dat ukazuje na problém s operačním systémem telefonu.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Telefon přijal data BLE, ale data nepocházejí z žádného podporovaného zařízení. Jsou sluchátka zapnutá? Podporuje CAPod vaše sluchátka?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Zkusit znovu</string>
|
||||
<string name="troubleshoot_action">Vyřešit problém</string>
|
||||
|
||||
@@ -43,10 +43,12 @@
|
||||
<string name="settings_maindevice_address_none">Keine</string>
|
||||
<string name="settings_maindevice_model_label">Ihr Gerätemodell</string>
|
||||
<string name="settings_maindevice_model_description">Das Modell Ihres Hauptgeräts. Dies hilft der App, Ihr Gerät zu erkennen, wenn es nicht mit Ihrem Telefon verbunden ist.</string>
|
||||
<string name="settings_popup_caseopen_label">Popup zeigen</string>
|
||||
<string name="settings_popup_caseopen_description">Ein Popup anzeigen, wenn das Gerätegehäuse geöffnet wird (experimentell).</string>
|
||||
<string name="settings_onepod_mode_label">Ein-Pod-Modus</string>
|
||||
<string name="settings_onepod_mode_description">Das Tragen beider Pods ist nicht erforderlich. Das Tragen eines einzigen Pods reicht aus, um Reaktionen auszulösen.</string>
|
||||
<string name="settings_popup_caseopen_label">Hüllen popup anzeigen</string>
|
||||
<string name="settings_popup_caseopen_description">Ein Popup anzeigen, wenn das Gerätegehäuse geöffnet wird (experimentell).</string>
|
||||
<string name="settings_popup_connected_label">Verbindungs-Popup anzeigen</string>
|
||||
<string name="settings_popup_connected_description">Zeigt ein Popup an, wenn das Gerät zum ersten Mal eine Verbindung herstellt.</string>
|
||||
<string name="notification_channel_device_status_label">Geräte Status</string>
|
||||
<string name="debug_debuglog_size_label">Größe</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Komprimierte Größe</string>
|
||||
@@ -95,7 +97,7 @@
|
||||
<string name="troubleshooter_ble_result_success_body">BLE-Werbesendungen werden von CAPod empfangen.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Erfolglos</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Fehlerbehebung fehlgeschlagen. Keine Kombination von Kompatibilitätsoptionen hat geholfen.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Ihr Telefon hat überhaupt keine BLE-Daten empfangen. Sie können diesen Test in einem überfüllten Bereich wiederholen, um zu sehen, ob Datenquellen (außer Ihren Kopfhörern) empfangen werden können. Es werden keine Daten empfangen, was auf ein Problem mit dem Betriebssystem Ihres Telefons hindeutet.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Dein Telefon hat überhaupt keine BLE-Daten empfangen. Du könntest diesen Test in einem überfüllten Bereich wiederholen, um zu sehen, ob Datenquellen (außer Ihren Kopfhörern) empfangen werden können. Es werden keine Daten empfangen, was auf ein Problem mit dem Betriebssystem Ihres Telefons hindeutet.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Ihr Telefon hat BLE-Daten empfangen, aber die Daten stammen von keinem unterstützten Gerät. Sind Ihre Kopfhörer eingeschaltet? Unterstützt CAPod Ihren Kopfhörer?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Versuchen Sie es erneut</string>
|
||||
<string name="troubleshoot_action">Fehlerbehebung</string>
|
||||
|
||||
@@ -37,10 +37,9 @@
|
||||
<string name="settings_maindevice_address_none">Καμία</string>
|
||||
<string name="settings_maindevice_model_label">Μοντέλο της συσκευής σας</string>
|
||||
<string name="settings_maindevice_model_description">Το μοντέλο της κύριας συσκευής σας. Αυτό βοηθά την εφαρμογή να αναγνωρίσει τη συσκευή σας όταν δεν είναι συνδεδεμένη στο τηλέφωνό σας.</string>
|
||||
<string name="settings_popup_caseopen_label">Εμφάνιση αναδυόμενου</string>
|
||||
<string name="settings_popup_caseopen_description">Εμφάνιση αναδυόμενου όταν η θήκη της συσκευής είναι ανοιχτή (πειραματικό).</string>
|
||||
<string name="settings_onepod_mode_label">Λειτουργία ενός pod</string>
|
||||
<string name="settings_onepod_mode_description">Δεν απαιτείται να φοράτε και τα δύο pods, αρκεί να φοράτε ένα μόνο pod για να ενεργοποιούνται αντιδράσεις.</string>
|
||||
<string name="settings_popup_caseopen_description">Εμφάνιση αναδυόμενου όταν η θήκη της συσκευής είναι ανοιχτή (πειραματικό).</string>
|
||||
<string name="notification_channel_device_status_label">Κατάσταση συσκευής</string>
|
||||
<string name="debug_debuglog_size_label">Μέγεθος</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Συμπιεσμένο μέγεθος</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Ninguno</string>
|
||||
<string name="settings_maindevice_model_label">El modelo de su dispositivo</string>
|
||||
<string name="settings_maindevice_model_description">El modelo de su dispositivo principal. Esto ayuda a que la aplicación reconozca su dispositivo cuando no está conectado a su teléfono.</string>
|
||||
<string name="settings_popup_caseopen_label">Mostrar ventanas emergentes</string>
|
||||
<string name="settings_popup_caseopen_description">Muestra una ventana emergente cuando se abre el estuche del dispositivo (experimental).</string>
|
||||
<string name="settings_onepod_mode_label">Modo un audífono</string>
|
||||
<string name="settings_onepod_mode_description">No es necesario usar ambos AirPods, usar un solo AirPod es suficiente para desencadenar reacciones.</string>
|
||||
<string name="settings_popup_caseopen_description">Muestra una ventana emergente cuando se abre el estuche del dispositivo (experimental).</string>
|
||||
<string name="notification_channel_device_status_label">Estado del dispositivo</string>
|
||||
<string name="debug_debuglog_size_label">Tamaño</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Tamaño comprimido</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">CAPod recibe las emisiones de anuncios BLE.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Incorrecto</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">La solución de problemas falló. Ninguna combinación de las opciones de compatibilidad ayudó.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Tu teléfono no ha recibido ningún dato BLE. Puedes volver a realizar esta prueba en una zona concurrida para ver si se pueden recibir otras fuentes de datos (distintas de los auriculares). El hecho de que no se reciban los datos apunta a un problema con el sistema operativo del teléfono.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Tu teléfono recibió los datos BLE, pero los datos no proceden de ningún dispositivo compatible. ¿Están encendidos tus auriculares? ¿Es CAPod compatible con tus auriculares?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Vuelve a intentarlo</string>
|
||||
<string name="troubleshoot_action">Reparador de los problemas</string>
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">CAPod võtab vastu madalama energiakuluga Bluetoothi kaudu reklaame.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Nurjus</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Parandamine nurjus. Ükski ühilduvuskombinatsioonidest ei toiminud.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Telefon ei võtnud vastu mingeid andmeid madalama energiakuluga Buetoothi kaudu. Üritage korrate rahvarohkes kohas, et näha, kas andmete allikaid (mis pole teie kõrvaklapid) saab kätte. Andmete saamise nurjumine viitab telefoni operatsioonisüsteemi veale.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Telefoni saabusid andmed madalama energiakuluga Bluetoothi kaudu aga andmed ei pärine ühestki ühilduvast seadmest. Kas CAPod ühildub teie kõrvaklapiga?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Proovi uuesti</string>
|
||||
<string name="troubleshoot_action">Lahendamine</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Aucune</string>
|
||||
<string name="settings_maindevice_model_label">Le modèle de votre appareil</string>
|
||||
<string name="settings_maindevice_model_description">Le modèle de votre appareil principal. Facilite la reconnaissance de votre appareil par l’appli s’il n’est pas connecté à votre téléphone.</string>
|
||||
<string name="settings_popup_caseopen_label">Afficher une notification</string>
|
||||
<string name="settings_popup_caseopen_description">Afficher une notification à l’ouverture de l’étui de l\'appareil (expérimental).</string>
|
||||
<string name="settings_onepod_mode_label">Mode à un seul AirPod</string>
|
||||
<string name="settings_onepod_mode_description">Il n’est pas nécessaire de porter deux AirPods, en porter un seul suffit à déclencher les réactions.</string>
|
||||
<string name="settings_popup_caseopen_description">Afficher une notification à l’ouverture de l’étui de l\'appareil (expérimental).</string>
|
||||
<string name="notification_channel_device_status_label">État de l’appareil</string>
|
||||
<string name="debug_debuglog_size_label">Taille</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Taille compressée</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">Les diffusions d’annonces BÉB sont reçues par CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Échec du dépannage</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Le dépannage a échoué. Aucune des options de compatibilité n’a réglé la situation.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Votre téléphone n’a reçu aucune donnée BÉB. Vous pouvez relancer le test dans un endroit bondé pour voir si des sources de données (autres que votre casque d’écoute) sont reçues. Si aucune donnée n’est reçue, le problème pourrait provenir du système d’exploitation de votre téléphone.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Votre téléphone a reçu des données, mais les données ne proviennent pas d’un appareil pris en charge. Votre casque d’écoute est-il en fonction ? CAPod prend-il votre casque d’écoute en charge ?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Réessayer</string>
|
||||
<string name="troubleshoot_action">Dépanner</string>
|
||||
|
||||
@@ -37,10 +37,9 @@
|
||||
<string name="settings_maindevice_address_none">Semmi</string>
|
||||
<string name="settings_maindevice_model_label">Az Ön készülékének modellje</string>
|
||||
<string name="settings_maindevice_model_description">A fő eszköz modellje. Ez segít az alkalmazásnak felismerni az eszközt, amikor az nincs csatlakoztatva a telefonhoz.</string>
|
||||
<string name="settings_popup_caseopen_label">Előugró ablak megjelenítése</string>
|
||||
<string name="settings_popup_caseopen_description">Egy előugró ablak megjelenítése az eszköz házának kinyitásakor (kísérleti).</string>
|
||||
<string name="settings_onepod_mode_label">Egy fülhallgató mód</string>
|
||||
<string name="settings_onepod_mode_description">Nem szükséges mindkét fülhallgató viselése, elég egy, a működéshez.</string>
|
||||
<string name="settings_popup_caseopen_description">Egy előugró ablak megjelenítése az eszköz házának kinyitásakor (kísérleti).</string>
|
||||
<string name="notification_channel_device_status_label">Értesítési_állapot</string>
|
||||
<string name="debug_debuglog_size_label">Méret</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Tömörített_méret</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Tidak ada</string>
|
||||
<string name="settings_maindevice_model_label">Model perangkat anda</string>
|
||||
<string name="settings_maindevice_model_description">Model perangkat utama anda. Ini membantu aplikasi mengenali perangkat anda saat tidak terhubung ke ponsel anda.</string>
|
||||
<string name="settings_popup_caseopen_label">Tampilkan jendela mengambang</string>
|
||||
<string name="settings_popup_caseopen_description">Tampilkan popup saat kasing perangkat dibuka (eksperimental).</string>
|
||||
<string name="settings_onepod_mode_label">Mode satu pod</string>
|
||||
<string name="settings_onepod_mode_description">Menggunakan kedua pod tidak diperlukan, memakai satu pod sudah cukup untuk memicu reaksi.</string>
|
||||
<string name="settings_popup_caseopen_description">Tampilkan popup saat kasing perangkat dibuka (eksperimental).</string>
|
||||
<string name="notification_channel_device_status_label">Status perangkat</string>
|
||||
<string name="debug_debuglog_size_label">Ukuran</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Ukuran terkompresi</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">Siaran iklan BLE diterima oleh CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Gagal</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Pemecahan masalah gagal. Tidak ada kombinasi opsi kompatibilitas yang membantu.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Ponsel Anda tidak menerima data BLE sama sekali. Anda dapat mencoba lagi pengujian ini di area ramai untuk melihat apakah sumber data (selain headphone Anda) dapat diterima. Tidak ada data yang diterima menunjukkan masalah dengan sistem operasi ponsel Anda.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Telepon anda menerima data BLE, tetapi data tersebut tidak berasal dari perangkat yang didukung. Apakah headphone Anda dihidupkan? Apakah CAPod mendukung headphone Anda?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Coba lagi</string>
|
||||
<string name="troubleshoot_action">Memecahkan masalah</string>
|
||||
|
||||
@@ -40,10 +40,9 @@
|
||||
<string name="settings_maindevice_address_none">Niente</string>
|
||||
<string name="settings_maindevice_model_label">Il modello del tuo dispositivo</string>
|
||||
<string name="settings_maindevice_model_description">Il modello del tuo dispositivo principale. Questo aiuta la applicazione a riconoscere il tuo dispositivo quando non è connesso al tuo telefono.</string>
|
||||
<string name="settings_popup_caseopen_label">Mostra popup</string>
|
||||
<string name="settings_popup_caseopen_description">Mostra un popup quando la custodia del dispositivo è aperta (sperimentale).</string>
|
||||
<string name="settings_onepod_mode_label">Modalità singolo pod</string>
|
||||
<string name="settings_onepod_mode_description">Indossare entrambi i pod non è necessario, indossare un singolo pod è sufficiente per far funzionare le reazioni.</string>
|
||||
<string name="settings_popup_caseopen_description">Mostra un popup quando la custodia del dispositivo è aperta (sperimentale).</string>
|
||||
<string name="notification_channel_device_status_label">Stato dispositivo</string>
|
||||
<string name="debug_debuglog_size_label">Dimensione</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Dimensione compressa</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">אף אחד</string>
|
||||
<string name="settings_maindevice_model_label">דגם המכשיר שלך</string>
|
||||
<string name="settings_maindevice_model_description">הדגם של המכשיר הראשי שלך. זה עוזר לאפליקציה לזהות את המכשיר שלך כשהוא לא מחובר לטלפון שלך.</string>
|
||||
<string name="settings_popup_caseopen_label">הצג הודעה</string>
|
||||
<string name="settings_popup_caseopen_description">הצג חלון הודעה כאשר מארז המכשיר נפתח (ניסיוני).</string>
|
||||
<string name="settings_onepod_mode_label">מצב אוזניה בודדת</string>
|
||||
<string name="settings_onepod_mode_description">אין צורך לענוד את שני האוזניות, לבישת אוזניה בודדת מספיקה כדי לעורר תגובות.</string>
|
||||
<string name="settings_popup_caseopen_description">הצג חלון הודעה כאשר מארז המכשיר נפתח (ניסיוני).</string>
|
||||
<string name="notification_channel_device_status_label">מצב המכשיר</string>
|
||||
<string name="debug_debuglog_size_label">מידה</string>
|
||||
<string name="debug_debuglog_size_compressed_label">גודל דחיסה</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">שידורי פרסומת BLE מתקבלים על ידי CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">לא מוצלח</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">פתרון הבעיות נכשל. שום שילוב של אפשרויות תאימות לא עזר.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">הטלפון שלך לא קיבל נתונים BLE כלל. באפשרותך לנסות שוב את הבדיקה הזו באזור אפוץ כדי לראות אם ניתן לקבל מקורות נתונים נוספים (מלבד האוזניות שלך). אין מידע שמתקבל מצביע על בעיה במערכת ההפעלה של הטלפון שלך.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">טלפון שלך קיבל נתוני BLE, אך הנתונים אינם מגיעים ממכשיר אשר נתמך. האם האוזניות שלך מופעלות? האם CAPod תומך באוזניות שלך?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">נסה שנית</string>
|
||||
<string name="troubleshoot_action">פתרון בעיות</string>
|
||||
|
||||
@@ -41,10 +41,9 @@
|
||||
<string name="settings_maindevice_address_none">無し</string>
|
||||
<string name="settings_maindevice_model_label">あなたのデバイスのモデル</string>
|
||||
<string name="settings_maindevice_model_description">あなたが主に使うデバイスのモデルです。これにより、デバイスが機器に接続されていないときに、アプリがデバイスを認識しやすくなります。</string>
|
||||
<string name="settings_popup_caseopen_label">ポップアップ表示</string>
|
||||
<string name="settings_popup_caseopen_description">デバイスのケースが開いたときにポップアップを表示します (実験的)。</string>
|
||||
<string name="settings_onepod_mode_label">片耳モード</string>
|
||||
<string name="settings_onepod_mode_description">両方装着する必要はなく、1つだけを装着することで反応します。</string>
|
||||
<string name="settings_popup_caseopen_description">デバイスのケースが開いたときにポップアップを表示します (実験的)。</string>
|
||||
<string name="notification_channel_device_status_label">デバイスの状態</string>
|
||||
<string name="debug_debuglog_size_label">サイズ</string>
|
||||
<string name="debug_debuglog_size_compressed_label">圧縮サイズ</string>
|
||||
|
||||
@@ -37,10 +37,9 @@
|
||||
<string name="settings_maindevice_address_none">없음</string>
|
||||
<string name="settings_maindevice_model_label">내 기기 모델</string>
|
||||
<string name="settings_maindevice_model_description">사용하고 있는 기기의 모델입니다. 전화기에 기기가 연결되지 않았을 때 기기를 찾는 데 도움을 줍니다.</string>
|
||||
<string name="settings_popup_caseopen_label">팝업 보이기</string>
|
||||
<string name="settings_popup_caseopen_description">기기 케이스가 열렸을 때 팝업을 보여줍니다. (실험적)</string>
|
||||
<string name="settings_onepod_mode_label">한쪽 기기 모드</string>
|
||||
<string name="settings_onepod_mode_description">양쪽 기기를 모두 착용할 필요 없이, 앱에서 한 쪽만 있어도 반응하도록 합니다.</string>
|
||||
<string name="settings_popup_caseopen_description">기기 케이스가 열렸을 때 팝업을 보여줍니다. (실험적)</string>
|
||||
<string name="notification_channel_device_status_label">디바이스 상태</string>
|
||||
<string name="debug_debuglog_size_label">크기</string>
|
||||
<string name="debug_debuglog_size_compressed_label">압축된 크기</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Tiada</string>
|
||||
<string name="settings_maindevice_model_label">Model peranti anda</string>
|
||||
<string name="settings_maindevice_model_description">Model peranti utama anda. Ini membantu apl mengenali peranti anda apabila ia tidak disambungkan ke telefon anda.</string>
|
||||
<string name="settings_popup_caseopen_label">Tunjukkan popup</string>
|
||||
<string name="settings_popup_caseopen_description">Tunjukkan popup apabila sarung peranti dibuka (percubaan).</string>
|
||||
<string name="settings_onepod_mode_label">Satu mod pod</string>
|
||||
<string name="settings_onepod_mode_description">Tidak perlu memakai kedua-dua pod, memakai satu pod sudah memadai untuk mencetuskan tindak balas.</string>
|
||||
<string name="settings_popup_caseopen_description">Tunjukkan popup apabila sarung peranti dibuka (percubaan).</string>
|
||||
<string name="notification_channel_device_status_label">Status peranti</string>
|
||||
<string name="debug_debuglog_size_label">Saiz</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Saiz termampat</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">Siaran iklan BLE sedang diterima oleh CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Tidak berjaya</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Penyelesaian masalah gagal. Tiada gabungan pilihan keserasian dapat membantu.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Telefon anda tidak menerima sebarang data BLE sama sekali. Anda boleh mencuba semula ujian ini di kawasan yang sesak untuk melihat sama ada sumber data (selain fon kepala anda) boleh diterima. Tiada data yang diterima menunjukkan masalah dengan sistem pengendalian telefon anda.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Telefon anda menerima data BLE, tetapi data itu tidak datang daripada mana-mana peranti yang disokong. Adakah fon kepala anda dihidupkan? Adakah CAPod menyokong fon kepala anda?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Cuba semula</string>
|
||||
<string name="troubleshoot_action">Selesaikan masalah</string>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<resources>
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<style name="AppTheme" parent="Theme.Material3.Dark.NoActionBar">
|
||||
<item name="colorPrimary">@color/md_theme_dark_primary</item>
|
||||
@@ -27,6 +27,9 @@
|
||||
<item name="colorOnSurfaceInverse">@color/md_theme_dark_inverseOnSurface</item>
|
||||
<item name="colorSurfaceInverse">@color/md_theme_dark_inverseSurface</item>
|
||||
<item name="colorPrimaryInverse">@color/md_theme_dark_primaryInverse</item>
|
||||
|
||||
<item tools:targetApi="29" name="android:enforceNavigationBarContrast">true</item>
|
||||
<item tools:targetApi="29" name="android:navigationBarColor">@android:color/transparent</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Geen</string>
|
||||
<string name="settings_maindevice_model_label">Uw apparaatmodel</string>
|
||||
<string name="settings_maindevice_model_description">Het model van uw hoofdapparaat. Dit helpt de app uw apparaat te herkennen wanneer het niet is verbonden met uw telefoon.</string>
|
||||
<string name="settings_popup_caseopen_label">Pop-up weergeven</string>
|
||||
<string name="settings_popup_caseopen_description">Een pop-up weergeven wanneer de behuizing van het apparaat wordt geopend (experimenteel).</string>
|
||||
<string name="settings_onepod_mode_label">Eén pod-modus</string>
|
||||
<string name="settings_onepod_mode_description">Het dragen van beide pods is niet vereist, het dragen van een enkele pod is voldoende om reacties uit te lokken.</string>
|
||||
<string name="settings_popup_caseopen_description">Een pop-up weergeven wanneer de behuizing van het apparaat wordt geopend (experimenteel).</string>
|
||||
<string name="notification_channel_device_status_label">Apparaatstatus</string>
|
||||
<string name="debug_debuglog_size_label">Grootte</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Gecomprimeerde grootte</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">BLE-advertentie-uitzendingen worden door CAPod ontvangen.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Mislukt</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Problemen oplossen mislukt. Geen enkele combinatie van compatibiliteitsopties heeft geholpen.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Je telefoon heeft helemaal geen BLE-gegevens ontvangen. Je kunt deze test opnieuw proberen in een druk gebied om te zien of gegevensbronnen (anders dan je hoofdtelefoon) kunnen worden ontvangen. Er worden geen gegevens ontvangen die wijzen op een probleem met het besturingssysteem van je telefoon.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Je telefoon heeft BLE-gegevens ontvangen, maar de gegevens zijn niet afkomstig van een ondersteund apparaat. Staat je koptelefoon aan? Ondersteunt CAPod je koptelefoon?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Probeer opnieuw</string>
|
||||
<string name="troubleshoot_action">Problemen oplossen</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Ingen</string>
|
||||
<string name="settings_maindevice_model_label">Enhetens modell</string>
|
||||
<string name="settings_maindevice_model_description">Modellen til hovedenheten din. Dette hjelper appen med å gjenkjenne enheten din når den ikke er koblet til telefonen.</string>
|
||||
<string name="settings_popup_caseopen_label">Vis popup</string>
|
||||
<string name="settings_popup_caseopen_description">Vis en popup når enhetens deksel åpnes (eksperimentelt).</string>
|
||||
<string name="settings_onepod_mode_label">En pod modus</string>
|
||||
<string name="settings_onepod_mode_description">Du trenger kun ha på deg en pod for å utløse reaksjoner, i stedet for begge.</string>
|
||||
<string name="settings_popup_caseopen_description">Vis en popup når enhetens deksel åpnes (eksperimentelt).</string>
|
||||
<string name="notification_channel_device_status_label">Enhetsstatus</string>
|
||||
<string name="debug_debuglog_size_label">Størrelse</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Komprimert størrelse</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">BLE advertisement kringkastinger blir mottatt av CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Mislykket</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Feilsøking mislyktes. Ingen kombinasjoner av kompatibilitets-alternativer fungerte.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Telefonen din mottok ingen BLE-data i det hele tatt. Du kan prøve denne testen på nytt i et folksomt område for å se om datakilder (annet enn hodetelefonene dine) kan mottas. Ingen data mottatt peker mot et problem med telefonens operativsystem.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Telefonen din mottok BLE-data, men dataene kommer ikke fra en støttet enhet. Er hodetelefonene dine slått på? Støtter CAPod din type hodetelefoner?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Prøv igjen</string>
|
||||
<string name="troubleshoot_action">Feilsøk</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Brak</string>
|
||||
<string name="settings_maindevice_model_label">Model twojego urządzenia</string>
|
||||
<string name="settings_maindevice_model_description">Model twojego głównego urządzenia. Pomaga aplikacji rozpoznać twoje urządzenie, gdy nie jest połączone z telefonem.</string>
|
||||
<string name="settings_popup_caseopen_label">Wyświetlanie informacji</string>
|
||||
<string name="settings_popup_caseopen_description">Wyświetla informację, gdy obudowa urządzenia jest otwarta (eksperymentalnie).</string>
|
||||
<string name="settings_onepod_mode_label">Tryb jednego pod\'a</string>
|
||||
<string name="settings_onepod_mode_description">Noszenie obu pod\'ów nie jest wymagane. Wystarczy jeden, aby aktywować reakcje.</string>
|
||||
<string name="settings_popup_caseopen_description">Wyświetla informację, gdy obudowa urządzenia jest otwarta (eksperymentalnie).</string>
|
||||
<string name="notification_channel_device_status_label">Status urządzenia</string>
|
||||
<string name="debug_debuglog_size_label">Rozmiar</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Rozmiar skompresowanego</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">Audycje reklamowe BLE są odbierane przez CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Niepowodzenie</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Rozwiązywanie problemów nie powiodło się. Nie pomogła żadna kombinacja opcji kompatybilności.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Twój telefon nie odebrał żadnych danych BLE. Możesz ponowić test w zatłoczonym obszarze, aby sprawdzić, czy źródła danych (inne niż twoje słuchawki) mogą być odbierane. Brak odbioru danych wskazuje na problem z systemem operacyjnym telefonu.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Twój telefon odebrał dane BLE, jednak nie pochodzą one od obsługiwanego urządzenia. Czy twoje słuchawki są włączone? Czy CAPod obsługuje twoje słuchawki?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Spróbuj ponownie</string>
|
||||
<string name="troubleshoot_action">Rozwiązywanie problemów</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Nenhum</string>
|
||||
<string name="settings_maindevice_model_label">Modelo do seu dispositivo</string>
|
||||
<string name="settings_maindevice_model_description">O modelo do seu dispositivo principal. Isso ajuda o aplicativo a reconhecer seu dispositivo quando ele não está conectado ao seu telefone.</string>
|
||||
<string name="settings_popup_caseopen_label">Mostrar pop-up</string>
|
||||
<string name="settings_popup_caseopen_description">Mostrar um pop-up quando o estojo do dispositivo for aberto (experimental).</string>
|
||||
<string name="settings_onepod_mode_label">Modo de um airpod</string>
|
||||
<string name="settings_onepod_mode_description">Não é necessário usar os dois airpods, usar um único airpod é suficiente para destravar reações.</string>
|
||||
<string name="settings_popup_caseopen_description">Mostrar um pop-up quando o estojo do dispositivo for aberto (experimental).</string>
|
||||
<string name="notification_channel_device_status_label">Status do dispositivo</string>
|
||||
<string name="debug_debuglog_size_label">Tamanho</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Tamanho compactado</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">As transmissões de anúncios BLE estão sendo recebidas pelo CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Sem sucesso</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">A solução de problemas falhou. Nenhuma combinação de opções de compatibilidade ajudou.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Seu telefone não recebeu nenhum dado BLE. Você pode repetir este teste em uma área lotada para ver se as fontes de dados (além dos fones de ouvido) podem ser recebidas. Nenhum dado recebido aponta para um problema com o sistema operacional do seu telefone.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Seu telefone recebeu dados BLE, mas os dados não vêm de nenhum dispositivo compatível. Seus fones de ouvido estão ligados? O CAPod suporta seu fone de ouvido?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Tentar novamente</string>
|
||||
<string name="troubleshoot_action">Solucionar problemas</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Nenhum</string>
|
||||
<string name="settings_maindevice_model_label">Modelo do seu dispositivo</string>
|
||||
<string name="settings_maindevice_model_description">O modelo do seu dispositivo principal. Isto ajuda a aplicação a reconhecer o seu dispositivo quando não está conectado ao seu telemóvel.</string>
|
||||
<string name="settings_popup_caseopen_label">Mostrar pop-up</string>
|
||||
<string name="settings_popup_caseopen_description">Mostrar pop-up quando a caixa do dispositivo está aberta (experimental).</string>
|
||||
<string name="settings_onepod_mode_label">Modo de um pod</string>
|
||||
<string name="settings_onepod_mode_description">Usar os dois pods não é necessário, usar um único pod é suficiente para desencadear reações.</string>
|
||||
<string name="settings_popup_caseopen_description">Mostrar pop-up quando a caixa do dispositivo está aberta (experimental).</string>
|
||||
<string name="notification_channel_device_status_label">Estado do dispositivo</string>
|
||||
<string name="debug_debuglog_size_label">Tamanho</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Tamanho comprimido</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">As transmissões de anúncios BLE são recebidas pelo CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Sem sucesso</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">A resolução de problemas falhou. Nenhuma combinação de opções de compatibilidade funcionou.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">O seu telefone não recebeu nenhum dado BLE. Pode repetir este teste numa zona movimentada para ver se fontes de dados (além dos seus auscultadores) podem ser recebidas. Nenhum dado recebido aponta para um problema com o sistema operativo do seu telefone.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">O seu telefone recebeu dados BLE, mas os dados não vêm de nenhum dispositivo compatível. Os seus auscultadores estão ligados? O CAPod é compatível com os seus auscultadores?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Tentar de novo</string>
|
||||
<string name="troubleshoot_action">Resolver problemas</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Нет</string>
|
||||
<string name="settings_maindevice_model_label">Модель Вашего устройства</string>
|
||||
<string name="settings_maindevice_model_description">Модель Вашего основного устройства. Это помогает приложению опознать Ваше устройство, когда оно не подключено к Вашему телефону.</string>
|
||||
<string name="settings_popup_caseopen_label">Всплывающие окна</string>
|
||||
<string name="settings_popup_caseopen_description">Показывать всплывающее окно, когда футляр открыт (эксперимент).</string>
|
||||
<string name="settings_onepod_mode_label">Режим одного наушника</string>
|
||||
<string name="settings_onepod_mode_description">Нет необходимости носить оба наушника, один наушник уже запускает реакции.</string>
|
||||
<string name="settings_popup_caseopen_description">Показывать всплывающее окно, когда футляр открыт (эксперимент).</string>
|
||||
<string name="notification_channel_device_status_label">Статус устройства</string>
|
||||
<string name="debug_debuglog_size_label">Размер</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Сжатый размер</string>
|
||||
@@ -96,7 +95,6 @@ AL_Cool_T</string>
|
||||
<string name="troubleshooter_ble_result_success_body">BLE рекламные трансляции принимаются на CAPod.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Неудачный</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Не удалось устранить неполадки. Ни одна комбинация параметров совместимости не помогала.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Ваш телефон вообще не получал никаких BLE данных. Вы можете повторить этот тест в людном месте, чтобы проверить, могут ли быть получены данные (c других источников кроме наушников). Отсутствие полученных данных указывает на проблему с операционной системой вашего телефона.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Ваш телефон получил BLE данные, но данные не поступают ни с одного поддерживаемого устройства. Ваши наушники включены? Поддерживает ли CAPod ваши наушники?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Попробуйте еще раз</string>
|
||||
<string name="troubleshoot_action">Устранение неполадок</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Žiadna</string>
|
||||
<string name="settings_maindevice_model_label">Model vašeho zariadenia</string>
|
||||
<string name="settings_maindevice_model_description">Model vášho hlavného zariadenia. Pomáha to aplikácii rozpoznať vaše zariadenie, keď nie je pripojené k telefónu.</string>
|
||||
<string name="settings_popup_caseopen_label">Zobraziť kontextové okno</string>
|
||||
<string name="settings_popup_caseopen_description">Po otvorení puzdra zariadenia zobraziť kontextové okno (experimentálne).</string>
|
||||
<string name="settings_onepod_mode_label">Režim jedného slúchadla</string>
|
||||
<string name="settings_onepod_mode_description">Nosenie oboch slúchadiel nie je potrebné, na spustenie reakcií postačuje nosenie jedného slúchadla.</string>
|
||||
<string name="settings_popup_caseopen_description">Po otvorení puzdra zariadenia zobraziť kontextové okno (experimentálne).</string>
|
||||
<string name="notification_channel_device_status_label">Stav zariadenia</string>
|
||||
<string name="debug_debuglog_size_label">Veľkosť</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Komprimovaná veľkosť</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">CAPod prijíma reklamné vysielanie BLE.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Neúspešné</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Riešenie problémov zlyhalo. Nepomohla žiadna kombinácia možností kompatibility.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Váš telefón neprijal vôbec žiadne údaje BLE. Tento test môžete zopakovať v preplnenej oblasti a zistiť, či je možné prijímať zdroje údajov (iné ako vaše slúchadlá). Žiadne prijímané údaje neukazujú na problém s operačným systémom vášho telefónu.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Váš telefón prijal údaje BLE, ale údaje nepochádzajú zo žiadneho podporovaného zariadenia. Máte zapnuté slúchadlá? Podporuje CAPod vaše slúchadlá?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Skúste znova</string>
|
||||
<string name="troubleshoot_action">Riešiť problém</string>
|
||||
|
||||
@@ -3,20 +3,20 @@
|
||||
<string name="general_share_action">Paylaş</string>
|
||||
<string name="general_done_action">Tamam</string>
|
||||
<string name="general_copy_action">Kopyala</string>
|
||||
<string name="general_thank_you_label">Teşekkürler</string>
|
||||
<string name="general_thank_you_label">Katkı sağlayanlar.</string>
|
||||
<string name="general_upgrade_action">Güncelle</string>
|
||||
<string name="general_check_action">Kontrol et</string>
|
||||
<string name="general_close_action">Kapat</string>
|
||||
<string name="upgrade_capod_label">CAPod\'u Güncelle</string>
|
||||
<string name="upgrade_capod_description">Ek özellikler edinir ve geliştiriciyi desteklersiniz.</string>
|
||||
<string name="settings_monitor_mode_label">İzleme modu</string>
|
||||
<string name="settings_monitor_mode_description">Uygulama bu şartlar altında Bluetooth verilerini dinler.</string>
|
||||
<string name="settings_monitor_mode_description">Uygulamanın hangi şartlar altında Bluetooth verilerini dinleyeceğine dair seçenekler.</string>
|
||||
<string name="settings_scanner_mode_label">Tarama modu</string>
|
||||
<string name="settings_scanner_mode_description">Bluetooth Düşük Enerji veri tarayıcısı performansa mı yoksa enerji tasarrufuna mı öncelik vermeli?</string>
|
||||
<string name="settings_scanner_mode_description">Bluetooth Düşük Enerji veri tarayıcısının performansa mı yoksa enerji tasarrufuna mı öncelik vereceğine dair seçenekler.</string>
|
||||
<string name="settings_autopause_label">Otomatik duraklat</string>
|
||||
<string name="settings_autopause_description">Aygıtı kulağınızdan çıkarırken sesi duraklatır.</string>
|
||||
<string name="settings_showall_label">Tüm aygıtları göster</string>
|
||||
<string name="settings_showall_description">Yakındaki diğer kişilerin aygıtlarını gösterir.</string>
|
||||
<string name="settings_showall_description">Yakınınızdaki diğer kişilerin aygıtlarını gösterir.</string>
|
||||
<string name="settings_autopplay_label">Otomatik oynat</string>
|
||||
<string name="settings_autoplay_description">Aygıt takıldığında sesi oynatmaya başlar.</string>
|
||||
<string name="settings_fake_data_label">Sahte veri</string>
|
||||
@@ -30,23 +30,22 @@
|
||||
<string name="settings_autoconnect_condition_label">Otomatik bağlantı şartı</string>
|
||||
<string name="settings_autoconnect_condition_description">Aygıtınıza ne zaman bağlanmayı denemeliyiz?</string>
|
||||
<string name="settings_reaction_label">Tepkiler</string>
|
||||
<string name="settings_reaction_description">Olaylara ve davranışlara tepki verir.</string>
|
||||
<string name="settings_reaction_description">Olaylar ve etkileşimlere verilen tepkiler.</string>
|
||||
<string name="settings_category_yourdevice_label">Aygıtınız</string>
|
||||
<string name="settings_category_compatibility_options_title">Uyumluluk seçenekleri</string>
|
||||
<string name="settings_category_compatibility_options_description">Her şey çalışıyorsa dokunma ;)</string>
|
||||
<string name="settings_compat_offloaded_filtering_disabled_title">Donanım filtrelemeyi devre dışı bırak</string>
|
||||
<string name="settings_category_compatibility_options_description">Her şey çalışıyorsa lütfen dokunmayın ;)</string>
|
||||
<string name="settings_compat_offloaded_filtering_disabled_title">Donanım filtrelemeyi kapat</string>
|
||||
<string name="settings_compat_offloaded_filtering_disabled_summary">Veri filtrelemeyi sisteme devretmez, bunun yerine tüm verileri alır ve uygulama içinde filtreler.</string>
|
||||
<string name="settings_compat_offloaded_batching_disabled_title">Donanımsal toplu işlemeyi devre dışı bırak</string>
|
||||
<string name="settings_compat_offloaded_batching_disabled_title">Donanımsal toplu işlemeyi kapat</string>
|
||||
<string name="settings_compat_offloaded_batching_disabled_summary">Sistem grubunun BLE verilerini bize iletmeden toplamasına izin vermez.</string>
|
||||
<string name="settings_maindevice_address_label">Aygıt adresiniz</string>
|
||||
<string name="settings_maindevice_address_description">Eşleştirilmiş aygıtın adresi. Uygulama, telefonunuza ne zaman bağlandığını belirlemek için bunu kullanır.</string>
|
||||
<string name="settings_maindevice_address_none">Hiçbiri</string>
|
||||
<string name="settings_maindevice_model_label">Aygıt modeliniz</string>
|
||||
<string name="settings_maindevice_model_description">Ana aygıtın modeli. Bu, uygulamanın telefonunuza bağlı olmadığında aygıtınızı tanımasına yardımcı olur.</string>
|
||||
<string name="settings_popup_caseopen_label">Açılır pencereyi göster</string>
|
||||
<string name="settings_popup_caseopen_description">Şarj kutusu açıldığında açılır pencere göster (deneysel).</string>
|
||||
<string name="settings_onepod_mode_label">Tek kulaklık modu</string>
|
||||
<string name="settings_onepod_mode_description">Her iki kulaklığı da takmak gerekli değildir, tek bir kulaklık takmak eylemleri tetiklemek için yeterlidir.</string>
|
||||
<string name="settings_popup_caseopen_description">Şarj kutusu açıldığında açılır bir pencere gösterir (deneysel).</string>
|
||||
<string name="notification_channel_device_status_label">Aygıt durumu</string>
|
||||
<string name="debug_debuglog_size_label">Boyut</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Sıkıştırılmış boyut</string>
|
||||
@@ -69,7 +68,7 @@
|
||||
<string name="settings_category_other_label">Diğer</string>
|
||||
<string name="settings_general_label">Ayarlar</string>
|
||||
<string name="settings_general_description">Uygulamayı etkileyen genel ince ayarlar.</string>
|
||||
<string name="settings_acknowledgements_label">Teşekkür bölümü</string>
|
||||
<string name="settings_acknowledgements_label">Teşekkürler</string>
|
||||
<string name="settings_debug_autoreports_label">Otomatik hata raporları</string>
|
||||
<string name="settings_debug_autoreports_description">Sorunları otomatik olarak bildirir, ör. uygulama çökmesiyle ilgili ayrıntılı bilgiler. Böylece nasıl düzelteceğimi bulabilirim.</string>
|
||||
<string name="settings_debug_mode_label">Hata ayıklama modu</string>
|
||||
@@ -82,9 +81,9 @@
|
||||
<string name="help_translate_description">Uygulamayı favori dilinize tercüme etmeye yardımcı olun.</string>
|
||||
<string name="translators_thanks_title">Çevirmenler</string>
|
||||
<string name="translators_thanks_description">darken</string>
|
||||
<string name="widget_description">Bilinen son aygıt durumunu gösteren bir pencere öğesi.</string>
|
||||
<string name="widget_description">Bilinen son cihaz durumunu gösteren bir pencere öğesi (widget).</string>
|
||||
<string name="settings_compat_indirectcallback_title">Dolaylı veri teslimi</string>
|
||||
<string name="settings_compat_indirectcallback_summary">Sistemden BLE verilerini almak için alternatif bir yöntem kullan (geri arama yerine yayın yap).</string>
|
||||
<string name="settings_compat_indirectcallback_summary">Sistemden BLE verilerini almak için alternatif bir yöntem kullanır (geri arama yerine yayın yapar).</string>
|
||||
<string name="troubleshooter_title">Sorun giderici</string>
|
||||
<string name="troubleshooter_ble_intro_title">Bluetooth Düşük Enerji Yayınları</string>
|
||||
<string name="troubleshooter_ble_intro_body1">AirPod\'lar (ve benzeri kulaklıklar), durum bilgilerini \"reklamlar\" adı verilen bir BLE teknolojisi kullanarak yayınlar. Bazı telefonlar bu teknolojiyi doğru uygulamamaktadır. CAPod, veriler alınana kadar farklı uyumluluk seçeneklerini deneyerek bunu düzeltmeye çalışabilir. Kulaklığınızda müzik çalmaya başlayın ve kulaklıkları telefonunuzun yakınına yerleştirin, ardından işleme başlayın.</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">BLE reklam yayınları CAPod tarafından alınmaktadır.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Başarısız</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Sorun giderme başarısız oldu. Uyumluluk seçeneklerinin hiçbir kombinasyonu yardımcı olmadı.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Telefonunuz hiç BLE verisi almadı. Veri kaynaklarının (kulaklığınız dışında) alınıp alınamayacağını görmek için bu testi kalabalık bir alanda tekrar deneyebilirsiniz. Alınan hiçbir veri, telefonunuzun işletim sistemiyle ilgili bir soruna işaret etmiyor.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Telefonunuz BLE verilerini aldı, ancak veriler desteklenen herhangi bir aygıttan gelmiyor. Kulaklığınız açık mı? CAPod kulaklığınızı destekliyor mu?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Tekrar deneyin</string>
|
||||
<string name="troubleshoot_action">Sorun giderme</string>
|
||||
|
||||
@@ -43,10 +43,9 @@
|
||||
<string name="settings_maindevice_address_none">Немає</string>
|
||||
<string name="settings_maindevice_model_label">Модель Вашого пристрою</string>
|
||||
<string name="settings_maindevice_model_description">Модель вашого пристрою. Це допомагає розпізнати ваш пристрій коли він не підʼєднаний до вашого телефону.</string>
|
||||
<string name="settings_popup_caseopen_label">Показувати спливаюче вікно</string>
|
||||
<string name="settings_popup_caseopen_description">Показувати спливаюче вікно при відкритті футляра пристрою (експериментально).</string>
|
||||
<string name="settings_onepod_mode_label">Режим одного навушника</string>
|
||||
<string name="settings_onepod_mode_description">Одягання обох навушників не є необхідним, одягання одного навушника цілком достатньо для запуску реагування.</string>
|
||||
<string name="settings_popup_caseopen_description">Показувати спливаюче вікно при відкритті футляра пристрою (експериментально).</string>
|
||||
<string name="notification_channel_device_status_label">Статус пристрою</string>
|
||||
<string name="debug_debuglog_size_label">Розмір</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Стиснутий розмір</string>
|
||||
@@ -95,7 +94,6 @@
|
||||
<string name="troubleshooter_ble_result_success_body">CAPod приймає трансляцію BLE-реклами.</string>
|
||||
<string name="troubleshooter_ble_result_failure_title">Невдало</string>
|
||||
<string name="troubleshooter_ble_result_failure_body">Не вдалося виправити неполадки. Жодна комбінація варіантів сумісності не допомогла.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_body">Ваш смартфон не отримав жодних даних BLE. Ви можете повторити цей тест у людному місці, щоб перевірити, чи можна отримати дані з інших джерел (окрім ваших навушників). Не отримання жодних даних свідчить про проблему з операційною системою вашого смартфону.</string>
|
||||
<string name="troubleshooter_ble_result_failure_phone_headphones">Ваш смартфон отримав BLE дані, проте вони не від одного з підтримуваних пристроїв. Ваші навушники увімкнено? CAPod підтримує цей тип навушників?</string>
|
||||
<string name="troubleshooter_ble_result_failure_action">Спробувати знову</string>
|
||||
<string name="troubleshoot_action">Вирішення проблем</string>
|
||||
|
||||
@@ -37,10 +37,9 @@
|
||||
<string name="settings_maindevice_address_none">Không có</string>
|
||||
<string name="settings_maindevice_model_label">Kiểu thiết bị của bạn</string>
|
||||
<string name="settings_maindevice_model_description">Kiểu thiết bị chính của bạn. Điều này giúp ứng dụng nhận ra thiết bị của bạn khi thiết bị không được kết nối với điện thoại của bạn.</string>
|
||||
<string name="settings_popup_caseopen_label">Hiển thị popup</string>
|
||||
<string name="settings_popup_caseopen_description">Hiển thị cửa sổ bật lên khi hộp thiết bị được mở (thử nghiệm).</string>
|
||||
<string name="settings_onepod_mode_label">Chế độ 1 tai nghe</string>
|
||||
<string name="settings_onepod_mode_description">Không cần đeo cả hai, chỉ đeo một tai nghe là đủ để kích hoạt phản ứng.</string>
|
||||
<string name="settings_popup_caseopen_description">Hiển thị cửa sổ bật lên khi hộp thiết bị được mở (thử nghiệm).</string>
|
||||
<string name="notification_channel_device_status_label">Trạng thái thiết bị</string>
|
||||
<string name="debug_debuglog_size_label">Kích thước</string>
|
||||
<string name="debug_debuglog_size_compressed_label">Kích thước nén</string>
|
||||
|
||||
@@ -39,10 +39,9 @@
|
||||
<string name="settings_maindevice_address_none">无</string>
|
||||
<string name="settings_maindevice_model_label">您的设备型号</string>
|
||||
<string name="settings_maindevice_model_description">您的主设备的型号。这有助于应用程序在设备未连接到您的手机时识别该设备。</string>
|
||||
<string name="settings_popup_caseopen_label">显示弹窗</string>
|
||||
<string name="settings_popup_caseopen_description">设备充电仓打开时显示弹窗(实验性)</string>
|
||||
<string name="settings_onepod_mode_label">单耳模式</string>
|
||||
<string name="settings_onepod_mode_description">不需要同时佩戴两支耳机,单支即可引发反应</string>
|
||||
<string name="settings_popup_caseopen_description">设备充电仓打开时显示弹窗(实验性)</string>
|
||||
<string name="notification_channel_device_status_label">设备状态</string>
|
||||
<string name="debug_debuglog_size_label">大小</string>
|
||||
<string name="debug_debuglog_size_compressed_label">压缩后大小</string>
|
||||
|
||||
@@ -43,10 +43,12 @@
|
||||
<string name="settings_maindevice_address_none">無</string>
|
||||
<string name="settings_maindevice_model_label">您的裝置型號</string>
|
||||
<string name="settings_maindevice_model_description">您的主要裝置型號,這能幫助這個應用程式在未連線到您的手機時辨識您的裝置。</string>
|
||||
<string name="settings_popup_caseopen_label">顯示彈出式視窗</string>
|
||||
<string name="settings_popup_caseopen_description">充電盒開啟時顯示彈出式視窗 (實驗性)</string>
|
||||
<string name="settings_onepod_mode_label">單耳模式</string>
|
||||
<string name="settings_onepod_mode_description">不需要同時佩戴兩隻耳機,單隻耳機就可充分觸發反應。</string>
|
||||
<string name="settings_popup_caseopen_label">顯示充電盒彈出式視窗</string>
|
||||
<string name="settings_popup_caseopen_description">充電盒開啟時顯示彈出式視窗 (實驗性)</string>
|
||||
<string name="settings_popup_connected_label">顯示連線彈出式視窗</string>
|
||||
<string name="settings_popup_connected_description">在裝置首次連線時顯示彈出式視窗。</string>
|
||||
<string name="notification_channel_device_status_label">裝置狀態</string>
|
||||
<string name="debug_debuglog_size_label">大小</string>
|
||||
<string name="debug_debuglog_size_compressed_label">壓縮後大小</string>
|
||||
|
||||
@@ -43,10 +43,12 @@
|
||||
<string name="settings_maindevice_address_none">無</string>
|
||||
<string name="settings_maindevice_model_label">您的裝置型號</string>
|
||||
<string name="settings_maindevice_model_description">您的主要裝置型號,這能幫助這個應用程式在未連線到您的手機時辨識您的裝置。</string>
|
||||
<string name="settings_popup_caseopen_label">顯示彈出式視窗</string>
|
||||
<string name="settings_popup_caseopen_description">充電盒開啟時顯示彈出式視窗 (實驗性)</string>
|
||||
<string name="settings_onepod_mode_label">單耳模式</string>
|
||||
<string name="settings_onepod_mode_description">不需要同時佩戴兩隻耳機,單隻耳機就可充分觸發反應。</string>
|
||||
<string name="settings_popup_caseopen_label">顯示充電盒彈出式視窗</string>
|
||||
<string name="settings_popup_caseopen_description">充電盒開啟時顯示彈出式視窗 (實驗性)</string>
|
||||
<string name="settings_popup_connected_label">顯示連線彈出式視窗</string>
|
||||
<string name="settings_popup_connected_description">在裝置首次連線時顯示彈出式視窗。</string>
|
||||
<string name="notification_channel_device_status_label">裝置狀態</string>
|
||||
<string name="debug_debuglog_size_label">大小</string>
|
||||
<string name="debug_debuglog_size_compressed_label">壓縮後大小</string>
|
||||
|
||||
@@ -46,10 +46,12 @@
|
||||
<string name="settings_maindevice_address_none">None</string>
|
||||
<string name="settings_maindevice_model_label">Your device model</string>
|
||||
<string name="settings_maindevice_model_description">The model of your main device. This helps the app recognize your device when it is not connected to your phone.</string>
|
||||
<string name="settings_popup_caseopen_label">Show popup</string>
|
||||
<string name="settings_popup_caseopen_description">Show a popup when the device case is opened (experimental).</string>
|
||||
<string name="settings_onepod_mode_label">One pod mode</string>
|
||||
<string name="settings_onepod_mode_description">Wearing both pods is not required, wearing a single pod is sufficient to trigger reactions.</string>
|
||||
<string name="settings_popup_caseopen_label">Show case popup</string>
|
||||
<string name="settings_popup_caseopen_description">Show a popup when the device case is opened (experimental).</string>
|
||||
<string name="settings_popup_connected_label">Show connection popup</string>
|
||||
<string name="settings_popup_connected_description">Show a popup when the device connects for the first time.</string>
|
||||
|
||||
|
||||
<string name="notification_channel_device_status_label">Device status</string>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<resources>
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<style name="AppTheme" parent="Theme.Material3.Light.NoActionBar">
|
||||
<item name="colorPrimary">@color/md_theme_light_primary</item>
|
||||
@@ -27,6 +27,11 @@
|
||||
<item name="colorOnSurfaceInverse">@color/md_theme_light_inverseOnSurface</item>
|
||||
<item name="colorSurfaceInverse">@color/md_theme_light_inverseSurface</item>
|
||||
<item name="colorPrimaryInverse">@color/md_theme_light_primaryInverse</item>
|
||||
|
||||
|
||||
<item tools:targetApi="29" name="android:enforceNavigationBarContrast">true</item>
|
||||
<item tools:targetApi="29" name="android:navigationBarColor">@android:color/transparent</item>
|
||||
|
||||
</style>
|
||||
|
||||
<style name="AppThemeFloating" parent="AppTheme">
|
||||
@@ -37,12 +42,19 @@
|
||||
<item name="android:windowContentOverlay">@null</item>
|
||||
<item name="android:windowIsFloating">true</item>
|
||||
<item name="android:backgroundDimEnabled">true</item>
|
||||
|
||||
<item tools:targetApi="29" name="android:enforceNavigationBarContrast">true</item>
|
||||
<item tools:targetApi="29" name="android:navigationBarColor">@android:color/transparent</item>
|
||||
|
||||
</style>
|
||||
|
||||
<style name="AppThemeSplash" parent="Theme.SplashScreen">
|
||||
<item name="windowSplashScreenBackground">#3f7aff</item>
|
||||
<item name="windowSplashScreenAnimatedIcon">@drawable/splash_screen</item>
|
||||
<item name="postSplashScreenTheme">@style/AppTheme</item>
|
||||
|
||||
<item tools:targetApi="29" name="android:navigationBarColor">@android:color/transparent</item>
|
||||
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
@@ -77,6 +77,10 @@
|
||||
android:summary="@string/settings_debug_description"
|
||||
android:title="@string/settings_debug_label" />
|
||||
|
||||
<Preference
|
||||
android:summary=""
|
||||
android:title="" />
|
||||
|
||||
</PreferenceCategory>
|
||||
|
||||
</PreferenceScreen>
|
||||
@@ -33,9 +33,17 @@
|
||||
android:title="@string/settings_autoconnect_condition_label" />
|
||||
|
||||
<CheckBoxPreference
|
||||
android:icon="@drawable/ic_baseline_chat_24"
|
||||
android:icon="@drawable/ic_message_outline_24"
|
||||
android:key="reaction.popup.caseopen"
|
||||
android:summary="@string/settings_popup_caseopen_description"
|
||||
android:title="@string/settings_popup_caseopen_label" />
|
||||
|
||||
<CheckBoxPreference
|
||||
android:icon="@drawable/ic_message_24"
|
||||
android:key="reaction.popup.connected"
|
||||
android:summary="@string/settings_popup_connected_description"
|
||||
android:title="@string/settings_popup_connected_label" />
|
||||
|
||||
<Preference android:enabled="false" />
|
||||
|
||||
</PreferenceScreen>
|
||||
@@ -33,6 +33,22 @@ platform :android do
|
||||
skip_upload_metadata: 'true',
|
||||
aab_paths: [
|
||||
"app/build/outputs/bundle/gplayRelease/app-gplay-beta.aab",
|
||||
],
|
||||
)
|
||||
end
|
||||
|
||||
lane :beta_wearos do
|
||||
gradle(task: 'clean bundleGplayBeta')
|
||||
sh "bash ./remove_unsupported_languages.sh"
|
||||
supply(
|
||||
track: 'wear:beta',
|
||||
package_name: 'eu.darken.capod',
|
||||
skip_upload_changelogs: 'false',
|
||||
skip_upload_apk: 'true',
|
||||
skip_upload_images: 'true',
|
||||
skip_upload_screenshots: 'true',
|
||||
skip_upload_metadata: 'true',
|
||||
aab_paths: [
|
||||
"app-wear/build/outputs/bundle/gplayRelease/app-wear-gplay-beta.aab",
|
||||
],
|
||||
)
|
||||
@@ -51,6 +67,22 @@ platform :android do
|
||||
skip_upload_metadata: 'true',
|
||||
aab_paths: [
|
||||
"app/build/outputs/bundle/gplayRelease/app-gplay-release.aab",
|
||||
],
|
||||
)
|
||||
end
|
||||
|
||||
lane :production_wearos do
|
||||
gradle(task: 'clean bundleGplayRelease')
|
||||
sh "bash ./remove_unsupported_languages.sh"
|
||||
supply(
|
||||
track: 'wear:beta',
|
||||
package_name: 'eu.darken.capod',
|
||||
skip_upload_changelogs: 'false',
|
||||
skip_upload_apk: 'true',
|
||||
skip_upload_images: 'true',
|
||||
skip_upload_screenshots: 'true',
|
||||
skip_upload_metadata: 'true',
|
||||
aab_paths: [
|
||||
"app-wear/build/outputs/bundle/gplayRelease/app-wear-gplay-release.aab",
|
||||
],
|
||||
)
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
Bugfixes, performance improvements and maybe new features.
|
||||
¯\_(ツ)_/¯
|
||||
|
||||
A detailed changelog is available on GitHub:
|
||||
https://github.com/d4rken-org/capod/releases/latest
|
||||
@@ -0,0 +1,5 @@
|
||||
Bugfixes, performance improvements and maybe new features.
|
||||
¯\_(ツ)_/¯
|
||||
|
||||
A detailed changelog is available on GitHub:
|
||||
https://github.com/d4rken-org/capod/releases/latest
|
||||
@@ -1,2 +1,5 @@
|
||||
Bugfixes and performance improvements.
|
||||
¯\_(ツ)_/¯
|
||||
Bugfixes, performance improvements and maybe new features.
|
||||
¯\_(ツ)_/¯
|
||||
|
||||
A detailed changelog is available on GitHub:
|
||||
https://github.com/d4rken-org/capod/releases/latest
|
||||
@@ -5,10 +5,10 @@ CAPod, AirPods aygıtlar için yardımcı bir uygulamadır.
|
||||
* Kulaklıklar ve şarj kutusu için pil seviyesi.
|
||||
* Kulaklıklar ve şarj kutusu için şarj durumu.
|
||||
* Bağlantı, mikrofon ve şarj kutusu hakkında ek bilgiler.
|
||||
* Yakındaki tüm aygıtları algılayabilir ve gösterebilir.
|
||||
* Yakınınızdaki tüm aygıtları algılayabilir ve gösterebilir.
|
||||
* Otomatik oynat/duraklat özellikli kulaklık algılama.
|
||||
* Telefonu ve AirPods aygıtları otomatik olarak bağlar.
|
||||
* Şarj kutusu açıldığında açılır pencereyi göster.
|
||||
* Şarj kutusu açıldığında açılır pencereyi gösterir.
|
||||
|
||||
CAPod, size en yakın pod aygıtının durumunu gösteren bir Wear-OS sürümüne sahiptir.
|
||||
CAPod for Wear-OS bağımsız bir uygulamadır ve telefon gerektirmez.
|
||||
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
### Updated by release.sh ###
|
||||
project.versioning.major=2
|
||||
project.versioning.minor=9
|
||||
project.versioning.patch=3
|
||||
project.versioning.build=0
|
||||
project.versioning.minor=10
|
||||
project.versioning.patch=0
|
||||
project.versioning.build=1
|
||||
#############################
|
||||
|
||||
Reference in New Issue
Block a user