diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1337bab2..df3c42cc 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -189,8 +189,9 @@ dependencies { implementation(libs.kotlinx.coroutines.core) implementation(libs.androidx.lifecycle.runtime.ktx) - // Kakao login SDK + // Kakao SDK implementation(libs.kakao.login) + implementation(libs.kakao.talk) // Hilt for Dependency Injection implementation(libs.hilt.android) diff --git a/app/src/main/java/com/eatssu/android/presentation/mypage/MyPageFragment.kt b/app/src/main/java/com/eatssu/android/presentation/mypage/MyPageFragment.kt index aaea1668..16749e60 100644 --- a/app/src/main/java/com/eatssu/android/presentation/mypage/MyPageFragment.kt +++ b/app/src/main/java/com/eatssu/android/presentation/mypage/MyPageFragment.kt @@ -26,10 +26,13 @@ import com.eatssu.android.presentation.mypage.myreview.MyReviewListComposeActivi import com.eatssu.android.presentation.mypage.terms.WebViewActivity import com.eatssu.android.presentation.mypage.userinfo.UserInfoActivity import com.eatssu.android.presentation.util.showToast +import com.eatssu.common.EventLogger import com.eatssu.common.UiEvent import com.eatssu.common.UiState import com.eatssu.common.enums.ScreenId import com.google.android.gms.oss.licenses.OssLicensesMenuActivity +import com.kakao.sdk.common.util.KakaoCustomTabsClient +import com.kakao.sdk.talk.TalkApiClient import dagger.hilt.android.AndroidEntryPoint import kotlinx.coroutines.flow.collectLatest import kotlinx.coroutines.launch @@ -138,11 +141,15 @@ class MyPageFragment : BaseFragment(ScreenId.MYPAGE_MAIN) } binding.llInquire.setOnClickListener { - startWebView( - getString(R.string.kakao_talk_channel_url), - getString(R.string.contact), - ScreenId.EXTERNAL_INQUIRE - ) + val context = requireContext() + val channelPublicId = "_ZlVAn" + + TalkApiClient.instance.chatChannel(context, channelPublicId) { + val url = TalkApiClient.instance.chatChannelUrl(channelPublicId) + KakaoCustomTabsClient.openWithDefault(context, url) + } + + EventLogger.screenView(ScreenId.EXTERNAL_INQUIRE) } binding.llMyReview.setOnClickListener { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 253683fd..810b9a89 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -44,7 +44,8 @@ glide = "4.15.1" glide-compiler = "4.12.0" compressor = "3.0.1" coroutines = "1.7.3" -kakao-login = "2.8.6" +kakao-login = "2.23.0" +kakao-talk = "2.23.0" hilt = "2.50" androidxHilt = "1.2.0" play-services-base = "18.0.1" @@ -148,6 +149,7 @@ transport-runtime = { group = "com.google.android.datatransport", name = "transp junit = { group = "junit", name = "junit", version.ref = "junit" } compressor = { group = "id.zelory", name = "compressor", version.ref = "compressor" } kakao-login = { group = "com.kakao.sdk", name = "v2-user", version.ref = "kakao-login" } +kakao-talk = { group = "com.kakao.sdk", name = "v2-talk", version.ref = "kakao-talk" } timber = { group = "com.jakewharton.timber", name = "timber", version.ref = "timber" } oss-licenses = { group = "com.google.android.gms", name = "play-services-oss-licenses", version.ref = "ossLicenses" } oss-licenses-plugin = { group = "com.google.android.gms", name = "oss-licenses-plugin", version.ref = "ossLicensesPlugin" }