parent
415383393a
commit
7885200af4
|
@ -35,7 +35,7 @@ android {
|
|||
applicationId "kr.co.vividnext.sodalive"
|
||||
minSdk 23
|
||||
targetSdk 34
|
||||
versionCode 148
|
||||
versionCode 149
|
||||
versionName "1.30.0"
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@ import kr.co.vividnext.sodalive.audio_content.comment.AudioContentCommentReposit
|
|||
import kr.co.vividnext.sodalive.audio_content.order.OrderType
|
||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.Utils
|
||||
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
||||
import kr.co.vividnext.sodalive.mypage.auth.AuthRepository
|
||||
import kr.co.vividnext.sodalive.mypage.auth.AuthVerifyRequest
|
||||
|
@ -302,13 +303,16 @@ class AudioContentDetailViewModel(
|
|||
contentTitle: String,
|
||||
onSuccess: (String) -> Unit
|
||||
) {
|
||||
val shareUrl = "https://voiceon.onelink.me/RkTm?" +
|
||||
"af_dp=voiceon://" +
|
||||
"&deep_link_value=content" +
|
||||
"&deep_link_sub5=$audioContentId" +
|
||||
"&af_og_title=$contentTitle" +
|
||||
"&af_og_description=지금 보이스온에서 이 콘텐츠 감상하기" +
|
||||
"&af_og_image=$contentImage"
|
||||
val params = mapOf(
|
||||
"af_dp" to "voiceon://",
|
||||
"deep_link_value" to "content",
|
||||
"deep_link_sub5" to "$audioContentId",
|
||||
"af_og_title" to contentTitle,
|
||||
"af_og_description" to "지금 보이스온에서 이 콘텐츠 감상하기",
|
||||
"af_og_image" to contentImage
|
||||
)
|
||||
|
||||
val shareUrl = Utils.createOneLinkUrl(params = params)
|
||||
onSuccess(shareUrl)
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
package kr.co.vividnext.sodalive.common
|
||||
|
||||
import java.net.URLEncoder
|
||||
import java.nio.charset.StandardCharsets
|
||||
|
||||
object Utils {
|
||||
fun convertDurationToString(duration: Int, showHours: Boolean = true): String {
|
||||
val durationSeconds = duration / 1000
|
||||
|
@ -26,4 +29,13 @@ object Utils {
|
|||
|
||||
return 1000 * (hours * 3600 + minutes * 60 + seconds)
|
||||
}
|
||||
|
||||
fun createOneLinkUrl(params: Map<String, String>): String {
|
||||
val encodedParams = params.map { (key, value) ->
|
||||
"${URLEncoder.encode(key, StandardCharsets.UTF_8.toString())}=" +
|
||||
URLEncoder.encode(value, StandardCharsets.UTF_8.toString())
|
||||
}.joinToString("&")
|
||||
|
||||
return "https://voiceon.onelink.me/RkTm?$encodedParams"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
|||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.Utils
|
||||
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
||||
import kr.co.vividnext.sodalive.explorer.profile.cheers.PutModifyCheersRequest
|
||||
import kr.co.vividnext.sodalive.report.ReportRepository
|
||||
|
@ -270,14 +271,15 @@ class UserProfileViewModel(
|
|||
profileImage: String,
|
||||
onSuccess: (String) -> Unit
|
||||
) {
|
||||
val shareUrl = "https://voiceon.onelink.me/RkTm?" +
|
||||
"af_dp=voiceon://" +
|
||||
"&deep_link_value=channel" +
|
||||
"&deep_link_sub5=$userId" +
|
||||
"&af_og_title=보이스온" +
|
||||
"&af_og_description=보이스온 ${nickname}님의 채널입니다." +
|
||||
"&af_og_image=$profileImage"
|
||||
|
||||
val params = mapOf(
|
||||
"af_dp" to "voiceon://",
|
||||
"deep_link_value" to "channel",
|
||||
"deep_link_sub5" to "$userId",
|
||||
"af_og_title" to "보이스온",
|
||||
"af_og_description" to "보이스온 ${nickname}님의 채널입니다.",
|
||||
"af_og_image" to profileImage
|
||||
)
|
||||
val shareUrl = Utils.createOneLinkUrl(params = params)
|
||||
onSuccess("보이스온 ${nickname}님의 채널입니다.\n$shareUrl")
|
||||
}
|
||||
|
||||
|
|
|
@ -11,6 +11,7 @@ import kotlinx.coroutines.sync.Mutex
|
|||
import kotlinx.coroutines.sync.withLock
|
||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.Utils
|
||||
import kr.co.vividnext.sodalive.live.LiveRepository
|
||||
import kr.co.vividnext.sodalive.live.room.donation.GetLiveRoomDonationStatusResponse
|
||||
import kr.co.vividnext.sodalive.live.room.donation.LiveRoomDonationResponse
|
||||
|
@ -302,13 +303,16 @@ class LiveRoomViewModel(
|
|||
coverImage: String,
|
||||
onSuccess: (String) -> Unit
|
||||
) {
|
||||
val shareUrl = "https://voiceon.onelink.me/RkTm?" +
|
||||
"af_dp=voiceon://" +
|
||||
"&deep_link_value=live" +
|
||||
"&deep_link_sub5=$roomId" +
|
||||
"&af_og_title=보이스온" +
|
||||
"&af_og_description=지금 보이스온에서 라이브 참여하기" +
|
||||
"&af_og_image=$coverImage"
|
||||
val params = mapOf(
|
||||
"af_dp" to "voiceon://",
|
||||
"deep_link_value" to "live",
|
||||
"deep_link_sub5" to "$roomId",
|
||||
"af_og_title" to "보이스온",
|
||||
"af_og_description" to "지금 보이스온에서 라이브 참여하기",
|
||||
"af_og_image" to coverImage
|
||||
)
|
||||
|
||||
val shareUrl = Utils.createOneLinkUrl(params = params)
|
||||
|
||||
val message = if (isPrivateRoom) {
|
||||
"${SharedPreferenceManager.nickname}님이 귀하를 " +
|
||||
|
|
|
@ -7,6 +7,7 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
|||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.common.Utils
|
||||
import kr.co.vividnext.sodalive.live.LiveRepository
|
||||
|
||||
class LiveRoomDetailViewModel(private val repository: LiveRepository) : BaseViewModel() {
|
||||
|
@ -63,12 +64,15 @@ class LiveRoomDetailViewModel(private val repository: LiveRepository) : BaseView
|
|||
password: Int?,
|
||||
onSuccess: (String) -> Unit
|
||||
) {
|
||||
val shareUrl = "https://voiceon.onelink.me/RkTm?" +
|
||||
"af_dp=voiceon://" +
|
||||
"&deep_link_value=live" +
|
||||
"&deep_link_sub5=$roomId" +
|
||||
"&af_og_title=보이스온" +
|
||||
"&af_og_description=지금 보이스온에서 라이브 참여하기"
|
||||
val params = mapOf(
|
||||
"af_dp" to "voiceon://",
|
||||
"deep_link_value" to "live",
|
||||
"deep_link_sub5" to "$roomId",
|
||||
"af_og_title" to "보이스온",
|
||||
"af_og_description" to "지금 보이스온에서 라이브 참여하기"
|
||||
)
|
||||
|
||||
val shareUrl = Utils.createOneLinkUrl(params = params)
|
||||
|
||||
val message = if (isPrivateRoom) {
|
||||
"${SharedPreferenceManager.nickname}님이 귀하를 " +
|
||||
|
|
Loading…
Reference in New Issue