app后台 提现通知 时间间隔
This commit is contained in:
parent
c36b187f6b
commit
5e5ba292bd
|
|
@ -51,7 +51,12 @@ class SpUtil private constructor(spFileName: String) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Volatile
|
// notification 相关
|
||||||
|
const val NOTIFI_LAST_WITHDRAW_SHOW_MS = "NOTIFI_LAST_WITHDRAW_SHOW_MS"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Volatile
|
||||||
private var instance: SpUtil? = null
|
private var instance: SpUtil? = null
|
||||||
fun instance(prefName: String = DEFAULT_SP_NAME): SpUtil {
|
fun instance(prefName: String = DEFAULT_SP_NAME): SpUtil {
|
||||||
return instance ?: synchronized(this) {
|
return instance ?: synchronized(this) {
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ import java.util.concurrent.ConcurrentHashMap
|
||||||
|
|
||||||
@SuppressLint("StaticFieldLeak")
|
@SuppressLint("StaticFieldLeak")
|
||||||
object NotificationDatas {
|
object NotificationDatas {
|
||||||
|
const val GAP_FOR_WITHDRAW_NOTIFY = 30 * 1000
|
||||||
|
|
||||||
var context: Context = BaseApp.appContext()
|
var context: Context = BaseApp.appContext()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,16 @@
|
||||||
|
package com.remax.notification.newUtil
|
||||||
|
|
||||||
|
import com.ama.core.architecture.util.SpUtil
|
||||||
|
|
||||||
|
object NotificationRecorder {
|
||||||
|
|
||||||
|
fun saveLastWithdrawShowTime(newLastShowTime: Long) {
|
||||||
|
SpUtil.instance().putLong(SpUtil.NOTIFI_LAST_WITHDRAW_SHOW_MS, newLastShowTime)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun getLastWithdrawShowTime() : Long {
|
||||||
|
return SpUtil.instance().getLong(SpUtil.NOTIFI_LAST_WITHDRAW_SHOW_MS)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -23,12 +23,15 @@ import com.remax.notification.TaskStateNewBieFirstWithDraw2
|
||||||
import com.remax.notification.controller.NotificationTriggerController
|
import com.remax.notification.controller.NotificationTriggerController
|
||||||
import com.remax.notification.check.NotificationCheckController
|
import com.remax.notification.check.NotificationCheckController
|
||||||
import com.remax.notification.newUtil.NotificationDatas
|
import com.remax.notification.newUtil.NotificationDatas
|
||||||
|
import com.remax.notification.newUtil.NotificationDatas.GAP_FOR_WITHDRAW_NOTIFY
|
||||||
import com.remax.notification.newUtil.NotificationDatas.NOTI_TYPE_BG_WITHDRAW
|
import com.remax.notification.newUtil.NotificationDatas.NOTI_TYPE_BG_WITHDRAW
|
||||||
|
import com.remax.notification.newUtil.NotificationRecorder
|
||||||
import com.remax.notification.newUtil.NotificationUtil
|
import com.remax.notification.newUtil.NotificationUtil
|
||||||
import com.remax.notification.utils.NotiLogger
|
import com.remax.notification.utils.NotiLogger
|
||||||
import com.remax.notification.utils.FCMTopicManager
|
import com.remax.notification.utils.FCMTopicManager
|
||||||
import com.remax.notification.service.FCMService
|
import com.remax.notification.service.FCMService
|
||||||
import com.remax.notification.service.NotificationKeepAliveServiceManager
|
import com.remax.notification.service.NotificationKeepAliveServiceManager
|
||||||
|
import com.remax.notification.utils.DateUtil
|
||||||
import com.remax.notification.utils.Topic
|
import com.remax.notification.utils.Topic
|
||||||
import com.remax.notification.worker.NotificationKeepAliveWorker
|
import com.remax.notification.worker.NotificationKeepAliveWorker
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
|
|
@ -343,10 +346,13 @@ class NotificationTimingController private constructor() : LifecycleObserver {
|
||||||
|
|
||||||
|
|
||||||
private fun showNotifyWithdraw() {
|
private fun showNotifyWithdraw() {
|
||||||
val hasClaimedSmallCash = SpUtil.instance().getObject<TaskStateNewBieFirstWithDraw2>(SpUtil.KEY_NEWBIE_FIRST_WITHDRAW)?.hasClaimReward
|
if (System.currentTimeMillis() - NotificationRecorder.getLastWithdrawShowTime() >= GAP_FOR_WITHDRAW_NOTIFY) {
|
||||||
NotificationDatas.getConfigForType(NOTI_TYPE_BG_WITHDRAW)?.let {
|
|
||||||
it.content = String.format(it.content, if (hasClaimedSmallCash == null || !hasClaimedSmallCash) 0.1 else 50)
|
val hasClaimedSmallCash = SpUtil.instance().getObject<TaskStateNewBieFirstWithDraw2>(SpUtil.KEY_NEWBIE_FIRST_WITHDRAW)?.hasClaimReward
|
||||||
NotificationUtil.getInstance().showHeadsUpNotification(it)
|
NotificationDatas.getConfigForType(NOTI_TYPE_BG_WITHDRAW)?.let {
|
||||||
|
it.content = String.format(it.content, if (hasClaimedSmallCash == null || !hasClaimedSmallCash) 0.1 else 50)
|
||||||
|
NotificationUtil.getInstance().showHeadsUpNotification(it)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue