fix(profile): 프로필 SNS 필드를 오픈채팅 기준으로 통일한다

This commit is contained in:
2026-02-24 20:01:38 +09:00
parent 63a52629a9
commit c74d27f4ab
16 changed files with 103 additions and 127 deletions

View File

@@ -37,8 +37,9 @@ data class GetRoomDetailManager(
@SerializedName("introduce") val introduce: String,
@SerializedName("youtubeUrl") val youtubeUrl: String?,
@SerializedName("instagramUrl") val instagramUrl: String?,
@SerializedName("websiteUrl") val websiteUrl: String?,
@SerializedName("blogUrl") val blogUrl: String?,
@SerializedName("kakaoOpenChatUrl") val kakaoOpenChatUrl: String?,
@SerializedName("fancimmUrl") val fancimmUrl: String?,
@SerializedName("xUrl") val xUrl: String?,
@SerializedName("profileImageUrl") val profileImageUrl: String,
@SerializedName("isCreator") val isCreator: Boolean
) : Parcelable

View File

@@ -33,6 +33,7 @@ import kr.co.vividnext.sodalive.settings.language.LocaleHelper
import org.koin.android.ext.android.inject
import java.util.Locale
import java.util.TimeZone
import androidx.core.net.toUri
class LiveRoomDetailFragment(
private val roomId: Long,
@@ -273,26 +274,14 @@ class LiveRoomDetailFragment(
}
if (
manager.websiteUrl.isNullOrBlank() ||
!URLUtil.isValidUrl(manager.websiteUrl)
manager.kakaoOpenChatUrl.isNullOrBlank() ||
!URLUtil.isValidUrl(manager.kakaoOpenChatUrl)
) {
binding.ivManagerWebsite.visibility = View.GONE
binding.ivManagerOpenChat.visibility = View.GONE
} else {
binding.ivManagerWebsite.visibility = View.VISIBLE
binding.ivManagerWebsite.setOnClickListener {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(manager.websiteUrl)))
}
}
if (
manager.blogUrl.isNullOrBlank() ||
!URLUtil.isValidUrl(manager.blogUrl)
) {
binding.ivManagerBlog.visibility = View.GONE
} else {
binding.ivManagerBlog.visibility = View.VISIBLE
binding.ivManagerBlog.setOnClickListener {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(manager.blogUrl)))
binding.ivManagerOpenChat.visibility = View.VISIBLE
binding.ivManagerOpenChat.setOnClickListener {
startActivity(Intent(Intent.ACTION_VIEW, manager.kakaoOpenChatUrl.toUri()))
}
}
@@ -304,7 +293,7 @@ class LiveRoomDetailFragment(
} else {
binding.ivManagerInstagram.visibility = View.VISIBLE
binding.ivManagerInstagram.setOnClickListener {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(manager.instagramUrl)))
startActivity(Intent(Intent.ACTION_VIEW, manager.instagramUrl.toUri()))
}
}
@@ -316,7 +305,7 @@ class LiveRoomDetailFragment(
} else {
binding.ivManagerYoutube.visibility = View.VISIBLE
binding.ivManagerYoutube.setOnClickListener {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(manager.youtubeUrl)))
startActivity(Intent(Intent.ACTION_VIEW, manager.youtubeUrl.toUri()))
}
}

View File

@@ -11,8 +11,9 @@ data class GetLiveRoomUserProfileResponse(
@SerializedName("gender") val gender: String,
@SerializedName("instagramUrl") val instagramUrl: String,
@SerializedName("youtubeUrl") val youtubeUrl: String,
@SerializedName("websiteUrl") val websiteUrl: String,
@SerializedName("blogUrl") val blogUrl: String,
@SerializedName("kakaoOpenChatUrl") val kakaoOpenChatUrl: String,
@SerializedName("fancimmUrl") val fancimmUrl: String?,
@SerializedName("xUrl") val xUrl: String?,
@SerializedName("introduce") val introduce: String,
@SerializedName("tags") val tags: String,
@SerializedName("isSpeaker") val isSpeaker: Boolean?,