From fdf14f7dd2ed8ca0590d995160588e2c41ad3598 Mon Sep 17 00:00:00 2001 From: beyond Date: Sun, 6 Sep 2026 18:21:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=92=AD=E6=94=BE=E5=99=A8:=20=E5=89=A7?= =?UTF-8?q?=E9=9B=86=E6=97=A0logo=E6=97=B6=E4=BB=8E=E5=89=A7=E9=9B=86(seri?= =?UTF-8?q?es)=E8=8E=B7=E5=8F=96logo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - PlayerDestination加载剧集后检查是否有logo - 若剧集无logo,额外请求series item获取其logo tag - 合并到剧集的imageTags中,确保播放器显示正确的艺术文字 Co-Authored-By: Claude Opus 5 (1M context) --- .../example/myapplication/navigation/AppNavHost.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/kotlin/com/example/myapplication/navigation/AppNavHost.kt b/app/src/main/kotlin/com/example/myapplication/navigation/AppNavHost.kt index 8843484..d44bc0a 100644 --- a/app/src/main/kotlin/com/example/myapplication/navigation/AppNavHost.kt +++ b/app/src/main/kotlin/com/example/myapplication/navigation/AppNavHost.kt @@ -438,6 +438,18 @@ private fun PlayerDestination( } catch (_: Exception) { null } + // If episode has no logo, fetch the series item to get its logo + val currentSeriesId = seriesId ?: item?.seriesId + if (item?.logoImageTag == null && !currentSeriesId.isNullOrBlank() && server != null && server.apiKey.isNotBlank()) { + try { + val seriesItem = EmbyRepository.getItem(server, currentSeriesId) + if (seriesItem?.logoImageTag != null) { + item = item?.copy( + imageTags = (item?.imageTags ?: emptyMap()) + mapOf("Logo" to seriesItem.logoImageTag!!) + ) + } + } catch (_: Exception) { /* ignore */ } + } itemLoading = false }