파이어베이스 다이나믹 링크 제거
This commit is contained in:
		| @@ -139,7 +139,6 @@ dependencies { | ||||
|  | ||||
|     // Firebase | ||||
|     implementation platform('com.google.firebase:firebase-bom:32.2.2') | ||||
|     implementation 'com.google.firebase:firebase-dynamic-links-ktx' | ||||
|     implementation 'com.google.firebase:firebase-crashlytics-ktx' | ||||
|     implementation 'com.google.firebase:firebase-analytics-ktx' | ||||
|     implementation 'com.google.firebase:firebase-messaging-ktx' | ||||
|   | ||||
| @@ -122,6 +122,7 @@ class AudioContentDetailActivity : BaseActivity<ActivityAudioContentDetailBindin | ||||
|         viewModel.getAudioContentDetail(audioContentId = audioContentId) { finish() } | ||||
|     } | ||||
|  | ||||
|     @SuppressLint("UnspecifiedRegisterReceiverFlag") | ||||
|     override fun onResume() { | ||||
|         super.onResume() | ||||
|         val intentFilter = IntentFilter(Constants.ACTION_AUDIO_CONTENT_RECEIVER) | ||||
| @@ -775,20 +776,7 @@ class AudioContentDetailActivity : BaseActivity<ActivityAudioContentDetailBindin | ||||
|             } | ||||
|  | ||||
|             binding.tvShare.visibility = View.VISIBLE | ||||
|             binding.tvShare.setOnClickListener { | ||||
|                 viewModel.shareAudioContent( | ||||
|                     audioContentId = audioContentId, | ||||
|                     contentImage = response.coverImageUrl, | ||||
|                     contentTitle = "${response.title} - ${response.creator.nickname}" | ||||
|                 ) { | ||||
|                     val intent = Intent(Intent.ACTION_SEND) | ||||
|                     intent.type = "text/plain" | ||||
|                     intent.putExtra(Intent.EXTRA_TEXT, it) | ||||
|  | ||||
|                     val shareIntent = Intent.createChooser(intent, "오디오콘텐츠 공유") | ||||
|                     startActivity(shareIntent) | ||||
|                 } | ||||
|             } | ||||
|             binding.tvShare.setOnClickListener {} | ||||
|         } else { | ||||
|             binding.svActionButtons.visibility = View.GONE | ||||
|             binding.llLike.visibility = View.GONE | ||||
|   | ||||
| @@ -1,16 +1,7 @@ | ||||
| package kr.co.vividnext.sodalive.audio_content.detail | ||||
|  | ||||
| import android.net.Uri | ||||
| import androidx.core.net.toUri | ||||
| import androidx.lifecycle.LiveData | ||||
| import androidx.lifecycle.MutableLiveData | ||||
| import com.google.firebase.dynamiclinks.ShortDynamicLink | ||||
| import com.google.firebase.dynamiclinks.ktx.androidParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.dynamicLinks | ||||
| import com.google.firebase.dynamiclinks.ktx.iosParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.shortLinkAsync | ||||
| import com.google.firebase.dynamiclinks.ktx.socialMetaTagParameters | ||||
| import com.google.firebase.ktx.Firebase | ||||
| import com.orhanobut.logger.Logger | ||||
| import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers | ||||
| import io.reactivex.rxjava3.schedulers.Schedulers | ||||
| @@ -139,72 +130,6 @@ class AudioContentDetailViewModel( | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun registerNotification(contentId: Long, creatorId: Long) { | ||||
|         isLoading.value = true | ||||
|         compositeDisposable.add( | ||||
|             repository.registerNotification( | ||||
|                 creatorId, | ||||
|                 "Bearer ${SharedPreferenceManager.token}" | ||||
|             ) | ||||
|                 .subscribeOn(Schedulers.io()) | ||||
|                 .observeOn(AndroidSchedulers.mainThread()) | ||||
|                 .subscribe( | ||||
|                     { | ||||
|                         if (it.success && it.data != null) { | ||||
|                             getAudioContentDetail(contentId) | ||||
|                         } else { | ||||
|                             if (it.message != null) { | ||||
|                                 _toastLiveData.postValue(it.message) | ||||
|                             } else { | ||||
|                                 _toastLiveData.postValue( | ||||
|                                     "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요." | ||||
|                                 ) | ||||
|                             } | ||||
|                         } | ||||
|                         isLoading.value = false | ||||
|                     }, | ||||
|                     { | ||||
|                         isLoading.value = false | ||||
|                         it.message?.let { message -> Logger.e(message) } | ||||
|                         _toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.") | ||||
|                     } | ||||
|                 ) | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun unRegisterNotification(contentId: Long, creatorId: Long) { | ||||
|         isLoading.value = true | ||||
|         compositeDisposable.add( | ||||
|             repository.unRegisterNotification( | ||||
|                 creatorId, | ||||
|                 "Bearer ${SharedPreferenceManager.token}" | ||||
|             ) | ||||
|                 .subscribeOn(Schedulers.io()) | ||||
|                 .observeOn(AndroidSchedulers.mainThread()) | ||||
|                 .subscribe( | ||||
|                     { | ||||
|                         if (it.success && it.data != null) { | ||||
|                             getAudioContentDetail(contentId) | ||||
|                         } else { | ||||
|                             if (it.message != null) { | ||||
|                                 _toastLiveData.postValue(it.message) | ||||
|                             } else { | ||||
|                                 _toastLiveData.postValue( | ||||
|                                     "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요." | ||||
|                                 ) | ||||
|                             } | ||||
|                         } | ||||
|                         isLoading.value = false | ||||
|                     }, | ||||
|                     { | ||||
|                         isLoading.value = false | ||||
|                         it.message?.let { message -> Logger.e(message) } | ||||
|                         _toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.") | ||||
|                     } | ||||
|                 ) | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun toggleExpandDetail() { | ||||
|         _isExpandDetail.value = !_isExpandDetail.value!! | ||||
|     } | ||||
| @@ -371,40 +296,6 @@ class AudioContentDetailViewModel( | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun shareAudioContent( | ||||
|         audioContentId: Long, | ||||
|         contentImage: String, | ||||
|         contentTitle: String, | ||||
|         onSuccess: (String) -> Unit | ||||
|     ) { | ||||
|         isLoading.value = true | ||||
|         Firebase.dynamicLinks.shortLinkAsync(ShortDynamicLink.Suffix.SHORT) { | ||||
|             link = Uri.parse("https://sodalive.net/?audio_content_id=$audioContentId") | ||||
|             domainUriPrefix = "https://sodalive.page.link" | ||||
|             androidParameters { } | ||||
|             iosParameters("kr.co.vividnext.sodalive") { | ||||
|                 appStoreId = "6461721697" | ||||
|             } | ||||
|             socialMetaTagParameters { | ||||
|                 title = contentTitle | ||||
|                 description = "지금 보이스온에서 이 콘텐츠 감상하기" | ||||
|                 imageUrl = contentImage.toUri() | ||||
|             } | ||||
|         }.addOnSuccessListener { | ||||
|             val uri = it.shortLink | ||||
|             if (uri != null) { | ||||
|                 val message = uri.toString() | ||||
|                 onSuccess(message) | ||||
|             } else { | ||||
|                 _toastLiveData.postValue("공유링크를 생성하지 못했습니다.\n다시 시도해 주세요.") | ||||
|             } | ||||
|         }.addOnFailureListener { | ||||
|             _toastLiveData.postValue("공유링크를 생성하지 못했습니다.\n다시 시도해 주세요.") | ||||
|         }.addOnCompleteListener { | ||||
|             isLoading.value = false | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     fun deleteAudioContent(audioContentId: Long, onSuccess: () -> Unit) { | ||||
|         isLoading.value = true | ||||
|  | ||||
|   | ||||
| @@ -116,16 +116,7 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>( | ||||
|                 binding.ivMenu, | ||||
|             ) | ||||
|         } | ||||
|         binding.layoutUserProfile.ivShare.setOnClickListener { | ||||
|             viewModel.shareChannel(userId = userId) { | ||||
|                 val intent = Intent(Intent.ACTION_SEND) | ||||
|                 intent.type = "text/plain" | ||||
|                 intent.putExtra(Intent.EXTRA_TEXT, it) | ||||
|  | ||||
|                 val shareIntent = Intent.createChooser(intent, "채널 공유") | ||||
|                 startActivity(shareIntent) | ||||
|             } | ||||
|         } | ||||
|         binding.layoutUserProfile.ivShare.setOnClickListener {} | ||||
|  | ||||
|         setupLiveView() | ||||
|         setupDonationView() | ||||
| @@ -621,7 +612,7 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>( | ||||
|         binding.tvContentCount.text = activitySummary.contentCount.moneyFormat() | ||||
|     } | ||||
|  | ||||
|     @SuppressLint("NotifyDataSetChanged") | ||||
|     @SuppressLint("NotifyDataSetChanged", "SetTextI18n") | ||||
|     private fun setCheers(cheers: GetCheersResponse) { | ||||
|         binding.layoutUserProfileFanTalk.etCheer.setText("") | ||||
|         cheersAdapter.items.clear() | ||||
|   | ||||
| @@ -1,14 +1,7 @@ | ||||
| package kr.co.vividnext.sodalive.explorer.profile | ||||
|  | ||||
| import android.net.Uri | ||||
| import androidx.lifecycle.LiveData | ||||
| import androidx.lifecycle.MutableLiveData | ||||
| import com.google.firebase.dynamiclinks.ShortDynamicLink | ||||
| import com.google.firebase.dynamiclinks.ktx.androidParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.dynamicLinks | ||||
| import com.google.firebase.dynamiclinks.ktx.iosParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.shortLinkAsync | ||||
| import com.google.firebase.ktx.Firebase | ||||
| import com.orhanobut.logger.Logger | ||||
| import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers | ||||
| import io.reactivex.rxjava3.schedulers.Schedulers | ||||
| @@ -181,39 +174,6 @@ class UserProfileViewModel( | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun unFollow(creatorId: Long) { | ||||
|         _isLoading.value = true | ||||
|         compositeDisposable.add( | ||||
|             userRepository.creatorUnFollow( | ||||
|                 creatorId, | ||||
|                 "Bearer ${SharedPreferenceManager.token}" | ||||
|             ) | ||||
|                 .subscribeOn(Schedulers.io()) | ||||
|                 .observeOn(AndroidSchedulers.mainThread()) | ||||
|                 .subscribe( | ||||
|                     { | ||||
|                         if (it.success && it.data != null) { | ||||
|                             getCreatorProfile(creatorId) | ||||
|                         } else { | ||||
|                             if (it.message != null) { | ||||
|                                 _toastLiveData.postValue(it.message) | ||||
|                             } else { | ||||
|                                 _toastLiveData.postValue( | ||||
|                                     "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요." | ||||
|                                 ) | ||||
|                             } | ||||
|                         } | ||||
|                         _isLoading.value = false | ||||
|                     }, | ||||
|                     { | ||||
|                         _isLoading.value = false | ||||
|                         it.message?.let { message -> Logger.e(message) } | ||||
|                         _toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.") | ||||
|                     } | ||||
|                 ) | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun writeCheers(parentCheersId: Long? = null, creatorId: Long, cheersContent: String) { | ||||
|         if (cheersContent.isBlank()) { | ||||
|             _toastLiveData.postValue("내용을 입력하세요") | ||||
| @@ -306,27 +266,6 @@ class UserProfileViewModel( | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun shareChannel(userId: Long, onSuccess: (String) -> Unit) { | ||||
|         _isLoading.value = true | ||||
|         Firebase.dynamicLinks.shortLinkAsync(ShortDynamicLink.Suffix.SHORT) { | ||||
|             link = Uri.parse("https://sodalive.net/?channel_id=$userId") | ||||
|             domainUriPrefix = "https://sodalive.page.link" | ||||
|             androidParameters { } | ||||
|             iosParameters("kr.co.vividnext.sodalive") { | ||||
|                 appStoreId = "6461721697" | ||||
|             } | ||||
|         }.addOnSuccessListener { | ||||
|             val uri = it.shortLink | ||||
|             if (uri != null) { | ||||
|                 onSuccess("보이스온 ${creatorNickname}님의 채널입니다.\n$uri") | ||||
|             } | ||||
|         }.addOnFailureListener { | ||||
|             _toastLiveData.postValue("공유링크를 생성하지 못했습니다.\n다시 시도해 주세요.") | ||||
|         }.addOnCompleteListener { | ||||
|             _isLoading.value = false | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     fun userBlock(userId: Long) { | ||||
|         _isLoading.value = true | ||||
|         compositeDisposable.add( | ||||
|   | ||||
| @@ -1001,20 +1001,7 @@ class LiveRoomActivity : BaseActivity<ActivityLiveRoomBinding>(ActivityLiveRoomB | ||||
|                 binding.ivEdit.visibility = View.GONE | ||||
|             } | ||||
|  | ||||
|             binding.ivShare.setOnClickListener { | ||||
|                 viewModel.shareRoomLink( | ||||
|                     response.roomId, | ||||
|                     response.isPrivateRoom, | ||||
|                     response.password | ||||
|                 ) { | ||||
|                     val intent = Intent(Intent.ACTION_SEND) | ||||
|                     intent.type = "text/plain" | ||||
|                     intent.putExtra(Intent.EXTRA_TEXT, it) | ||||
|  | ||||
|                     val shareIntent = Intent.createChooser(intent, "라이브 공유") | ||||
|                     startActivity(shareIntent) | ||||
|                 } | ||||
|             } | ||||
|             binding.ivShare.setOnClickListener {} | ||||
|  | ||||
|             if (response.creatorId == SharedPreferenceManager.userId) { | ||||
|                 binding.llViewUsers.visibility = View.VISIBLE | ||||
|   | ||||
| @@ -3,12 +3,6 @@ package kr.co.vividnext.sodalive.live.room | ||||
| import android.net.Uri | ||||
| import androidx.lifecycle.LiveData | ||||
| import androidx.lifecycle.MutableLiveData | ||||
| import com.google.firebase.dynamiclinks.ShortDynamicLink | ||||
| import com.google.firebase.dynamiclinks.ktx.androidParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.dynamicLinks | ||||
| import com.google.firebase.dynamiclinks.ktx.iosParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.shortLinkAsync | ||||
| import com.google.firebase.ktx.Firebase | ||||
| import com.google.gson.Gson | ||||
| import com.orhanobut.logger.Logger | ||||
| import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers | ||||
| @@ -301,43 +295,6 @@ class LiveRoomViewModel( | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun shareRoomLink( | ||||
|         roomId: Long, | ||||
|         isPrivateRoom: Boolean, | ||||
|         password: String?, | ||||
|         onSuccess: (String) -> Unit | ||||
|     ) { | ||||
|         _isLoading.value = true | ||||
|         Firebase.dynamicLinks.shortLinkAsync(ShortDynamicLink.Suffix.SHORT) { | ||||
|             link = Uri.parse("https://sodalive.net/?room_id=$roomId") | ||||
|             domainUriPrefix = "https://sodalive.page.link" | ||||
|             androidParameters { } | ||||
|             iosParameters("kr.co.vividnext.sodalive") { | ||||
|                 appStoreId = "6461721697" | ||||
|             } | ||||
|         }.addOnSuccessListener { | ||||
|             val uri = it.shortLink | ||||
|             if (uri != null) { | ||||
|                 val message = if (isPrivateRoom) { | ||||
|                     "${SharedPreferenceManager.nickname}님이 귀하를 " + | ||||
|                         "보이스온의 비공개라이브에 초대하였습니다.\n" + | ||||
|                         "※ 라이브 참여: $uri\n" + | ||||
|                         "(입장 비밀번호 : $password)" | ||||
|                 } else { | ||||
|                     "${SharedPreferenceManager.nickname}님이 귀하를 " + | ||||
|                         "보이스온의 공개라이브에 초대하였습니다.\n" + | ||||
|                         "※ 라이브 참여: $uri" | ||||
|                 } | ||||
|  | ||||
|                 onSuccess(message) | ||||
|             } | ||||
|         }.addOnFailureListener { | ||||
|             _toastLiveData.postValue("공유링크를 생성하지 못했습니다.\n다시 시도해 주세요.") | ||||
|         }.addOnCompleteListener { | ||||
|             _isLoading.value = false | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     fun creatorFollow(creatorId: Long, roomId: Long, isGetUserProfile: Boolean = false) { | ||||
|         _isLoading.value = true | ||||
|         compositeDisposable.add( | ||||
|   | ||||
| @@ -349,17 +349,5 @@ class LiveRoomDetailFragment( | ||||
|     } | ||||
|  | ||||
|     private fun shareRoom(response: GetRoomDetailResponse) { | ||||
|         viewModel.shareRoomLink( | ||||
|             response.roomId, | ||||
|             response.isPrivateRoom, | ||||
|             response.password | ||||
|         ) { | ||||
|             val intent = Intent(Intent.ACTION_SEND) | ||||
|             intent.type = "text/plain" | ||||
|             intent.putExtra(Intent.EXTRA_TEXT, it) | ||||
|  | ||||
|             val shareIntent = Intent.createChooser(intent, "라이브 공유") | ||||
|             startActivity(shareIntent) | ||||
|         } | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -1,14 +1,7 @@ | ||||
| package kr.co.vividnext.sodalive.live.room.detail | ||||
|  | ||||
| import android.net.Uri | ||||
| import androidx.lifecycle.LiveData | ||||
| import androidx.lifecycle.MutableLiveData | ||||
| import com.google.firebase.dynamiclinks.ShortDynamicLink | ||||
| import com.google.firebase.dynamiclinks.ktx.androidParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.dynamicLinks | ||||
| import com.google.firebase.dynamiclinks.ktx.iosParameters | ||||
| import com.google.firebase.dynamiclinks.ktx.shortLinkAsync | ||||
| import com.google.firebase.ktx.Firebase | ||||
| import com.orhanobut.logger.Logger | ||||
| import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers | ||||
| import io.reactivex.rxjava3.schedulers.Schedulers | ||||
| @@ -63,41 +56,4 @@ class LiveRoomDetailViewModel(private val repository: LiveRepository) : BaseView | ||||
|                 ) | ||||
|         ) | ||||
|     } | ||||
|  | ||||
|     fun shareRoomLink( | ||||
|         roomId: Long, | ||||
|         isPrivateRoom: Boolean, | ||||
|         password: Int?, | ||||
|         onSuccess: (String) -> Unit | ||||
|     ) { | ||||
|         _isLoading.value = true | ||||
|         Firebase.dynamicLinks.shortLinkAsync(ShortDynamicLink.Suffix.SHORT) { | ||||
|             link = Uri.parse("https://sodalive.net/?room_id=$roomId") | ||||
|             domainUriPrefix = "https://sodalive.page.link" | ||||
|             androidParameters { } | ||||
|             iosParameters("kr.co.vividnext.sodalive") { | ||||
|                 appStoreId = "6461721697" | ||||
|             } | ||||
|         }.addOnSuccessListener { | ||||
|             val uri = it.shortLink | ||||
|             if (uri != null) { | ||||
|                 val message = if (isPrivateRoom) { | ||||
|                     "${SharedPreferenceManager.nickname}님이 귀하를 " + | ||||
|                         "보이스온의 비공개라이브에 초대하였습니다.\n" + | ||||
|                         "※ 라이브 참여: $uri\n" + | ||||
|                         "(입장 비밀번호 : $password)" | ||||
|                 } else { | ||||
|                     "${SharedPreferenceManager.nickname}님이 귀하를 " + | ||||
|                         "보이스온의 공개라이브에 초대하였습니다.\n" + | ||||
|                         "※ 라이브 참여: $uri" | ||||
|                 } | ||||
|  | ||||
|                 onSuccess(message) | ||||
|             } | ||||
|         }.addOnFailureListener { | ||||
|             _toastLiveData.postValue("공유링크를 생성하지 못했습니다.\n다시 시도해 주세요.") | ||||
|         }.addOnCompleteListener { | ||||
|             _isLoading.value = false | ||||
|         } | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -9,10 +9,7 @@ import android.os.Looper | ||||
| import android.widget.ImageView | ||||
| import androidx.annotation.OptIn | ||||
| import androidx.constraintlayout.widget.ConstraintLayout | ||||
| import androidx.core.os.bundleOf | ||||
| import androidx.media3.common.util.UnstableApi | ||||
| import com.google.firebase.dynamiclinks.PendingDynamicLinkData | ||||
| import com.google.firebase.dynamiclinks.ktx.dynamicLinks | ||||
| import com.google.firebase.ktx.Firebase | ||||
| import com.google.firebase.remoteconfig.ktx.get | ||||
| import com.google.firebase.remoteconfig.ktx.remoteConfig | ||||
| @@ -98,7 +95,7 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding | ||||
|                         } | ||||
|                     } | ||||
|                 } else { | ||||
|                     checkFirebaseDynamicLink() | ||||
|                     startNextActivity() | ||||
|                 } | ||||
|             } | ||||
|     } | ||||
| @@ -121,10 +118,10 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding | ||||
|             } else if (latestMajor == major && latestMinor == minor && latestPatch > patch) { | ||||
|                 showUpdateDialog(isEssential = false) | ||||
|             } else { | ||||
|                 checkFirebaseDynamicLink() | ||||
|                 startNextActivity() | ||||
|             } | ||||
|         } else { | ||||
|             checkFirebaseDynamicLink() | ||||
|             startNextActivity() | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @@ -136,7 +133,7 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding | ||||
|         } | ||||
|  | ||||
|         val cancelButtonClick = if (!isEssential) { | ||||
|             { checkFirebaseDynamicLink() } | ||||
|             { startNextActivity() } | ||||
|         } else { | ||||
|             null | ||||
|         } | ||||
| @@ -165,49 +162,7 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding | ||||
|         ).show(screenWidth) | ||||
|     } | ||||
|  | ||||
|     private fun checkFirebaseDynamicLink() { | ||||
|         Firebase.dynamicLinks | ||||
|             .getDynamicLink(intent) | ||||
|             .addOnSuccessListener(this) { getDynamicLinkSuccess(it) } | ||||
|             .addOnFailureListener(this) { getDynamicLinkFailure() } | ||||
|     } | ||||
|  | ||||
|     private fun getDynamicLinkSuccess(pendingDynamicLinkData: PendingDynamicLinkData?) { | ||||
|         var deepLink: Uri? = null | ||||
|         if (pendingDynamicLinkData != null) { | ||||
|             deepLink = pendingDynamicLinkData.link | ||||
|         } | ||||
|  | ||||
|         val extras = if (deepLink != null) { | ||||
|             val roomIdString = deepLink.getQueryParameter("room_id") | ||||
|             val channelIdString = deepLink.getQueryParameter("channel_id") | ||||
|             val audioContentIdString = deepLink.getQueryParameter("audio_content_id") | ||||
|  | ||||
|             if (roomIdString != null) { | ||||
|                 bundleOf( | ||||
|                     Constants.EXTRA_ROOM_ID to roomIdString.toLong() | ||||
|                 ) | ||||
|             } else if (channelIdString != null) { | ||||
|                 bundleOf( | ||||
|                     Constants.EXTRA_USER_ID to channelIdString.toLong() | ||||
|                 ) | ||||
|             } else if (audioContentIdString != null) { | ||||
|                 bundleOf( | ||||
|                     Constants.EXTRA_AUDIO_CONTENT_ID to audioContentIdString.toLong() | ||||
|                 ) | ||||
|             } else { | ||||
|                 null | ||||
|             } | ||||
|         } else if (intent.extras != null) { | ||||
|             intent.extras | ||||
|         } else { | ||||
|             null | ||||
|         } | ||||
|  | ||||
|         startNextActivity(extras = extras) | ||||
|     } | ||||
|  | ||||
|     private fun getDynamicLinkFailure() { | ||||
|     private fun startNextActivity() { | ||||
|         val extras = intent.getBundleExtra(Constants.EXTRA_DATA) | ||||
|             ?: if (intent.extras != null) { | ||||
|                 intent.extras | ||||
| @@ -215,10 +170,6 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding | ||||
|                 null | ||||
|             } | ||||
|  | ||||
|         startNextActivity(extras = extras) | ||||
|     } | ||||
|  | ||||
|     private fun startNextActivity(extras: Bundle? = null) { | ||||
|         if (SharedPreferenceManager.isViewedOnboardingTutorial) { | ||||
|             if (SharedPreferenceManager.token.isBlank()) { | ||||
|                 showLoginActivity(extras) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user