fix android runtime bugs

This commit is contained in:
2026-10-03 23:55:24 +08:00
parent fa61bcca38
commit 493c70ce81
8 changed files with 32 additions and 23 deletions
+1 -1
View File
@@ -26,7 +26,7 @@
android:allowBackup="true" android:allowBackup="true"
android:icon="@mipmap/ic_launcher" android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/ic_launcher_round"
android:label="LLMP KMP" android:label="LLMP"
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@android:style/Theme.Material.Light.NoActionBar" android:theme="@android:style/Theme.Material.Light.NoActionBar"
android:usesCleartextTraffic="true" android:usesCleartextTraffic="true"
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="app_name">LLMP KMP</string> <string name="app_name">LLMP</string>
<string name="playback_channel_name">Wird abgespielt</string> <string name="playback_channel_name">Wird abgespielt</string>
<string name="lyric_close">Desktop-Lyrics schließen</string> <string name="lyric_close">Desktop-Lyrics schließen</string>
<string name="lyric_pip">Bild-in-Bild</string> <string name="lyric_pip">Bild-in-Bild</string>
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="app_name">LLMP KMP</string> <string name="app_name">LLMP</string>
<string name="playback_channel_name">Now Playing</string> <string name="playback_channel_name">Now Playing</string>
<string name="lyric_close">Close desktop lyrics</string> <string name="lyric_close">Close desktop lyrics</string>
<string name="lyric_pip">Picture in Picture</string> <string name="lyric_pip">Picture in Picture</string>
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="app_name">LLMP KMP</string> <string name="app_name">LLMP</string>
<string name="playback_channel_name">再生中</string> <string name="playback_channel_name">再生中</string>
<string name="lyric_close">デスクトップ歌詞を閉じる</string> <string name="lyric_close">デスクトップ歌詞を閉じる</string>
<string name="lyric_pip">ピクチャインピクチャ</string> <string name="lyric_pip">ピクチャインピクチャ</string>
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="app_name">LLMP KMP</string> <string name="app_name">LLMP</string>
<string name="playback_channel_name">正在播放</string> <string name="playback_channel_name">正在播放</string>
<string name="lyric_close">关闭桌面歌词</string> <string name="lyric_close">关闭桌面歌词</string>
<string name="lyric_pip">画中画</string> <string name="lyric_pip">画中画</string>
+1
View File
@@ -65,6 +65,7 @@ kotlin {
implementation(libs.coil.svg) implementation(libs.coil.svg)
implementation(libs.coil.network.ktor3) implementation(libs.coil.network.ktor3)
implementation(libs.haze) implementation(libs.haze)
implementation(libs.haze.blur)
} }
} }
} }
@@ -50,9 +50,11 @@ import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp import androidx.compose.ui.unit.sp
import kotlinx.coroutines.delay import kotlinx.coroutines.delay
import kotlin.math.roundToInt import kotlin.math.roundToInt
import dev.chrisbanes.haze.HazeInput
import dev.chrisbanes.haze.HazeState import dev.chrisbanes.haze.HazeState
import dev.chrisbanes.haze.HazeTint import dev.chrisbanes.haze.blur.HazeBlurStyle
import dev.chrisbanes.haze.hazeEffect import dev.chrisbanes.haze.blur.HazeColorEffect
import dev.chrisbanes.haze.blur.hazeBlur
import com.zhushenwudi.lovelivemusicplayer.AppContainer import com.zhushenwudi.lovelivemusicplayer.AppContainer
import com.zhushenwudi.lovelivemusicplayer.i18n.tr import com.zhushenwudi.lovelivemusicplayer.i18n.tr
import com.zhushenwudi.lovelivemusicplayer.theme.ColorMs import com.zhushenwudi.lovelivemusicplayer.theme.ColorMs
@@ -118,15 +120,20 @@ fun MiniPlayerBar(
.background(barColor) .background(barColor)
.then( .then(
if (hazeState != null) { if (hazeState != null) {
Modifier.hazeEffect(state = hazeState) { Modifier.hazeBlur(
blurRadius = 30.dp input = HazeInput.Sources(hazeState),
backgroundColor = barColor style = HazeBlurStyle {
tints = listOf( blurRadius(30.dp)
HazeTint(barColor), backgroundColor(barColor)
HazeTint(Color.Gray.copy(alpha = 0.15f)), colorEffects(
) listOf(
noiseFactor = 0f HazeColorEffect.tint(barColor),
} HazeColorEffect.tint(Color.Gray.copy(alpha = 0.15f)),
),
)
noiseFactor(0f)
},
)
} else { } else {
Modifier Modifier
}, },
+8 -7
View File
@@ -5,22 +5,22 @@ android-minSdk = "24"
android-targetSdk = "37" android-targetSdk = "37"
androidx-activity = "1.13.0" androidx-activity = "1.13.0"
androidx-lifecycle = "2.11.0" androidx-lifecycle = "2.11.0"
compose-multiplatform = "1.11.1" compose-multiplatform = "1.12.1"
compose-material3 = "1.11.0-alpha07" compose-material3 = "1.11.0-alpha07"
compose-material-icons-extended = "1.7.3" compose-material-icons-extended = "1.7.3"
kotlin = "2.4.10" kotlin = "2.4.20"
kotlinx-coroutines = "1.11.0" kotlinx-coroutines = "1.11.0"
kotlinx-serialization = "1.11.0" kotlinx-serialization = "1.11.0"
ktor = "3.5.2" ktor = "3.6.0"
sqldelight = "2.3.2" sqldelight = "2.4.0"
multiplatform-settings = "1.3.0" multiplatform-settings = "1.3.0"
media3 = "1.11.0" media3 = "1.11.0"
navigation = "2.9.2" navigation = "2.9.2"
glance = "1.1.1" glance = "1.1.1"
palette = "1.0.0" palette = "1.0.0"
zxing = "4.3.0" zxing = "4.3.0"
coil = "3.5.0" coil = "3.6.3"
haze = "1.7.2" haze = "2.0.1"
[libraries] [libraries]
compose-runtime = { module = "org.jetbrains.compose.runtime:runtime", version.ref = "compose-multiplatform" } compose-runtime = { module = "org.jetbrains.compose.runtime:runtime", version.ref = "compose-multiplatform" }
@@ -53,7 +53,7 @@ multiplatform-settings-coroutines = { module = "com.russhwolf:multiplatform-sett
media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "media3" } media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "media3" }
media3-session = { module = "androidx.media3:media3-session", version.ref = "media3" } media3-session = { module = "androidx.media3:media3-session", version.ref = "media3" }
androidx-media = { module = "androidx.media:media", version = "1.8.0" } androidx-media = { module = "androidx.media:media", version = "1.8.0" }
androidx-core-ktx = { module = "androidx.core:core-ktx", version = "1.19.0" } androidx-core-ktx = { module = "androidx.core:core-ktx", version = "1.19.1" }
navigation-compose = { module = "org.jetbrains.androidx.navigation:navigation-compose", version.ref = "navigation" } navigation-compose = { module = "org.jetbrains.androidx.navigation:navigation-compose", version.ref = "navigation" }
kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" } kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" }
androidx-glance-appwidget = { module = "androidx.glance:glance-appwidget", version.ref = "glance" } androidx-glance-appwidget = { module = "androidx.glance:glance-appwidget", version.ref = "glance" }
@@ -65,6 +65,7 @@ coil-svg = { module = "io.coil-kt.coil3:coil-svg", version.ref = "coil" }
# Coil 3 has no network support by default — required for https artist_webp URLs # Coil 3 has no network support by default — required for https artist_webp URLs
coil-network-ktor3 = { module = "io.coil-kt.coil3:coil-network-ktor3", version.ref = "coil" } coil-network-ktor3 = { module = "io.coil-kt.coil3:coil-network-ktor3", version.ref = "coil" }
haze = { module = "dev.chrisbanes.haze:haze", version.ref = "haze" } haze = { module = "dev.chrisbanes.haze:haze", version.ref = "haze" }
haze-blur = { module = "dev.chrisbanes.haze:haze-blur", version.ref = "haze" }
[plugins] [plugins]
androidApplication = { id = "com.android.application", version.ref = "agp" } androidApplication = { id = "com.android.application", version.ref = "agp" }