gaid 업데이트 추가
This commit is contained in:
parent
78dd3b2785
commit
1712f509dc
|
@ -0,0 +1,7 @@
|
||||||
|
package kr.co.vividnext.sodalive.main
|
||||||
|
|
||||||
|
import com.google.gson.annotations.SerializedName
|
||||||
|
|
||||||
|
data class GaidUpdateRequest(
|
||||||
|
@SerializedName("adid") val adid: String
|
||||||
|
)
|
|
@ -59,6 +59,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
checkPermissions()
|
checkPermissions()
|
||||||
pushTokenUpdate()
|
pushTokenUpdate()
|
||||||
|
gaidUpdate()
|
||||||
|
|
||||||
getMemberInfo()
|
getMemberInfo()
|
||||||
getEventPopup()
|
getEventPopup()
|
||||||
|
@ -338,6 +339,10 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun gaidUpdate() {
|
||||||
|
viewModel.fetchAndUpdateGaid(context = applicationContext)
|
||||||
|
}
|
||||||
|
|
||||||
private fun getMemberInfo() {
|
private fun getMemberInfo() {
|
||||||
viewModel.getMemberInfo {
|
viewModel.getMemberInfo {
|
||||||
notificationSettingsDialog.show(screenWidth)
|
notificationSettingsDialog.show(screenWidth)
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
package kr.co.vividnext.sodalive.main
|
package kr.co.vividnext.sodalive.main
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
import androidx.lifecycle.LiveData
|
import androidx.lifecycle.LiveData
|
||||||
import androidx.lifecycle.MutableLiveData
|
import androidx.lifecycle.MutableLiveData
|
||||||
|
import com.google.android.gms.ads.identifier.AdvertisingIdClient
|
||||||
import com.google.gson.annotations.SerializedName
|
import com.google.gson.annotations.SerializedName
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
@ -15,6 +17,7 @@ import kr.co.vividnext.sodalive.settings.event.EventItem
|
||||||
import kr.co.vividnext.sodalive.settings.event.EventRepository
|
import kr.co.vividnext.sodalive.settings.event.EventRepository
|
||||||
import kr.co.vividnext.sodalive.settings.notification.UpdateNotificationSettingRequest
|
import kr.co.vividnext.sodalive.settings.notification.UpdateNotificationSettingRequest
|
||||||
import kr.co.vividnext.sodalive.user.UserRepository
|
import kr.co.vividnext.sodalive.user.UserRepository
|
||||||
|
import java.util.concurrent.Executors
|
||||||
|
|
||||||
class MainViewModel(
|
class MainViewModel(
|
||||||
private val userRepository: UserRepository,
|
private val userRepository: UserRepository,
|
||||||
|
@ -153,4 +156,26 @@ class MainViewModel(
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun fetchAndUpdateGaid(context: Context) {
|
||||||
|
Executors.newSingleThreadExecutor().execute {
|
||||||
|
try {
|
||||||
|
val adInfo = AdvertisingIdClient.getAdvertisingIdInfo(context)
|
||||||
|
adInfo.id?.let { gaid ->
|
||||||
|
val request = GaidUpdateRequest(adid = gaid)
|
||||||
|
compositeDisposable.add(
|
||||||
|
userRepository.updateGaid(
|
||||||
|
request,
|
||||||
|
token = "Bearer ${SharedPreferenceManager.token}"
|
||||||
|
)
|
||||||
|
.subscribeOn(Schedulers.io())
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe({}, {})
|
||||||
|
)
|
||||||
|
}
|
||||||
|
} catch (e: Exception) {
|
||||||
|
e.printStackTrace()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ import io.reactivex.rxjava3.core.Single
|
||||||
import kr.co.vividnext.sodalive.common.ApiResponse
|
import kr.co.vividnext.sodalive.common.ApiResponse
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.MemberBlockRequest
|
import kr.co.vividnext.sodalive.explorer.profile.MemberBlockRequest
|
||||||
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
||||||
|
import kr.co.vividnext.sodalive.main.GaidUpdateRequest
|
||||||
import kr.co.vividnext.sodalive.main.PushTokenUpdateRequest
|
import kr.co.vividnext.sodalive.main.PushTokenUpdateRequest
|
||||||
import kr.co.vividnext.sodalive.mypage.MyPageResponse
|
import kr.co.vividnext.sodalive.mypage.MyPageResponse
|
||||||
import kr.co.vividnext.sodalive.mypage.profile.ProfileResponse
|
import kr.co.vividnext.sodalive.mypage.profile.ProfileResponse
|
||||||
|
@ -137,4 +138,10 @@ interface UserApi {
|
||||||
@Part multipartFile: MultipartBody.Part,
|
@Part multipartFile: MultipartBody.Part,
|
||||||
@Header("Authorization") authHeader: String
|
@Header("Authorization") authHeader: String
|
||||||
): Single<ApiResponse<String>>
|
): Single<ApiResponse<String>>
|
||||||
|
|
||||||
|
@PUT("/member/adid/update")
|
||||||
|
fun updateGaid(
|
||||||
|
@Body request: GaidUpdateRequest,
|
||||||
|
@Header("Authorization") authHeader: String
|
||||||
|
): Single<ApiResponse<Any>>
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ import io.reactivex.rxjava3.core.Single
|
||||||
import kr.co.vividnext.sodalive.common.ApiResponse
|
import kr.co.vividnext.sodalive.common.ApiResponse
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.MemberBlockRequest
|
import kr.co.vividnext.sodalive.explorer.profile.MemberBlockRequest
|
||||||
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
||||||
|
import kr.co.vividnext.sodalive.main.GaidUpdateRequest
|
||||||
import kr.co.vividnext.sodalive.main.PushTokenUpdateRequest
|
import kr.co.vividnext.sodalive.main.PushTokenUpdateRequest
|
||||||
import kr.co.vividnext.sodalive.mypage.MyPageResponse
|
import kr.co.vividnext.sodalive.mypage.MyPageResponse
|
||||||
import kr.co.vividnext.sodalive.mypage.profile.ProfileResponse
|
import kr.co.vividnext.sodalive.mypage.profile.ProfileResponse
|
||||||
|
@ -108,4 +109,11 @@ class UserRepository(private val userApi: UserApi) {
|
||||||
fun getProfile(token: String): Single<ApiResponse<ProfileResponse>> {
|
fun getProfile(token: String): Single<ApiResponse<ProfileResponse>> {
|
||||||
return userApi.getMyProfile(authHeader = token)
|
return userApi.getMyProfile(authHeader = token)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun updateGaid(
|
||||||
|
request: GaidUpdateRequest,
|
||||||
|
token: String
|
||||||
|
): Single<ApiResponse<Any>> {
|
||||||
|
return userApi.updateGaid(request, authHeader = token)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue