From 4e15557949dbf544bd6b04ab330aaa3e0ebe4d5f Mon Sep 17 00:00:00 2001 From: klaus Date: Thu, 11 Dec 2025 23:04:23 +0900 Subject: [PATCH] =?UTF-8?q?=EC=BD=98=ED=85=90=EC=B8=A0=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20-=20=ED=8F=B0=20=EC=96=B8=EC=96=B4=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=EC=97=90=20=EB=94=B0=EB=9D=BC=20=EB=B2=88=EC=97=AD=20?= =?UTF-8?q?=EB=8D=B0=EC=9D=B4=ED=84=B0=EB=A5=BC=20=EC=A1=B0=ED=9A=8C?= =?UTF-8?q?=ED=95=98=EB=8F=84=EB=A1=9D=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/audio_content/AudioContentApi.kt | 1 + .../sodalive/audio_content/AudioContentRepository.kt | 7 ++++++- .../audio_content/detail/AudioContentDetailActivity.kt | 10 ++++++---- .../detail/AudioContentDetailViewModel.kt | 8 +++++++- .../detail/GetAudioContentDetailResponse.kt | 10 +++++++++- .../vividnext/sodalive/mypage/alarm/AlarmActivity.kt | 2 +- 6 files changed, 30 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentApi.kt b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentApi.kt index d656af9f..5c723214 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentApi.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentApi.kt @@ -105,6 +105,7 @@ interface AudioContentApi { @GET("/audio-content/{id}") fun getAudioContentDetail( @Path("id") id: Long, + @Query("languageCode") languageCode: String?, @Query("timezone") timezone: String, @Header("Authorization") authHeader: String ): Single> diff --git a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentRepository.kt b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentRepository.kt index 5862c7fd..4c4e6965 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentRepository.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/AudioContentRepository.kt @@ -70,8 +70,13 @@ class AudioContentRepository( authHeader = token ) - fun getAudioContentDetail(audioContentId: Long, token: String) = api.getAudioContentDetail( + fun getAudioContentDetail( + audioContentId: Long, + languageCode: String? = null, + token: String + ) = api.getAudioContentDetail( id = audioContentId, + languageCode = languageCode, timezone = TimeZone.getDefault().id, authHeader = token ) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt index 25a05771..229e7a4f 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt @@ -43,6 +43,7 @@ import kr.co.vividnext.sodalive.common.Constants import kr.co.vividnext.sodalive.common.LoadingDialog import kr.co.vividnext.sodalive.common.SharedPreferenceManager import kr.co.vividnext.sodalive.common.Utils +import kr.co.vividnext.sodalive.common.Utils.getCurrentLanguageCode import kr.co.vividnext.sodalive.databinding.ActivityAudioContentDetailBinding import kr.co.vividnext.sodalive.explorer.profile.CreatorFollowNotifyFragment import kr.co.vividnext.sodalive.explorer.profile.UserProfileActivity @@ -129,6 +130,7 @@ class AudioContentDetailActivity : BaseActivity get() = _isContentPlayLoopLiveData + var languageCode: String = "ko" + private fun getString(@StringRes resId: Int, vararg args: Any) = SodaLiveApplicationHolder.get().getString(resId, *args) - fun getAudioContentDetail(audioContentId: Long, onFailure: (() -> Unit)? = null) { + fun getAudioContentDetail( + audioContentId: Long, + onFailure: (() -> Unit)? = null + ) { if (!isLoading.value!!) { isLoading.value = true } @@ -66,6 +71,7 @@ class AudioContentDetailViewModel( compositeDisposable.add( repository.getAudioContentDetail( audioContentId = audioContentId, + languageCode = languageCode, token = "Bearer ${SharedPreferenceManager.token}" ) .subscribeOn(Schedulers.io()) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/GetAudioContentDetailResponse.kt b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/GetAudioContentDetailResponse.kt index 0430e68c..bc4d08a7 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/GetAudioContentDetailResponse.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/GetAudioContentDetailResponse.kt @@ -43,7 +43,8 @@ data class GetAudioContentDetailResponse( @SerializedName("previousContent") val previousContent: OtherContentResponse?, @SerializedName("nextContent") val nextContent: OtherContentResponse?, @SerializedName("buyerList") val buyerList: List, - @SerializedName("isAvailableUsePoint") val isAvailableUsePoint: Boolean + @SerializedName("isAvailableUsePoint") val isAvailableUsePoint: Boolean, + @SerializedName("translated") val translated: TranslatedContent? ) @Keep @@ -68,3 +69,10 @@ data class ContentBuyer( @SerializedName("nickname") val nickname: String, @SerializedName("profileImageUrl") val profileImageUrl: String ) + +@Keep +data class TranslatedContent( + @SerializedName("title") val title: String?, + @SerializedName("detail") val detail: String?, + @SerializedName("tags") val tags: String? +) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/mypage/alarm/AlarmActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/mypage/alarm/AlarmActivity.kt index 54a2393e..a2cc46ec 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/mypage/alarm/AlarmActivity.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/mypage/alarm/AlarmActivity.kt @@ -95,7 +95,7 @@ class AlarmActivity : BaseActivity( } private fun getContent(contentId: Long) { - contentViewModel.getAudioContentDetail(contentId) {} + contentViewModel.getAudioContentDetail(contentId, {},) } private fun bindData() {