常驻通知图标

This commit is contained in:
renhaoting 2025-12-31 11:16:19 +08:00
parent e14736ed01
commit 05a8460a05
7 changed files with 31 additions and 0 deletions

View File

@ -30,6 +30,7 @@ import com.gamedog.vididin.main.fragments.task.DailySignSuccessDialog
import com.gamedog.vididin.main.interfaces.OnTabStyleListener
import com.gamedog.vididin.manager.DateChangeReceiver
import com.gamedog.vididin.manager.NotificationController
import com.gamedog.vididin.manager.TaskManager
import com.gamedog.vididin.router.Router
import com.remax.base.report.DataReportManager
import com.remax.base.utils.ActivityLauncher
@ -71,6 +72,7 @@ class MainActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnTabS
override fun ViewBinding.initViews() {
TaskManager.instance().initNotificationData()
activityLauncher = ActivityLauncher(this@MainActivity)
navigatorAdapter = MainTabsAdapter(

View File

@ -21,6 +21,8 @@ import com.gamedog.vididin.manager.helpers.NewbieFirstWithdrawHelper
import com.gamedog.vididin.manager.helpers.NewbieJoinDiscordHelper
import com.gamedog.vididin.youtubestatistic.RewardConst
import com.google.gson.GsonBuilder
import com.remax.notification.newUtil.NotificationDatas
import com.remax.notification.newUtil.NotificationDatas.IResidentDataCallback
import kotlinx.coroutines.sync.Mutex
import kotlinx.coroutines.sync.withLock
import kotlinx.coroutines.*
@ -238,9 +240,25 @@ class TaskManager private constructor() {
return mTaskConfig?.task_module_config?.box_task
}
fun initNotificationData() {
NotificationDatas.setResidentCallback(object : IResidentDataCallback {
override fun getGoldNumber(): Long {
return AccountManager.getGold()
}
override fun getCashNumber(): Double {
return AccountManager.getCash()
}
override fun getBoxRestTimeStr(): String {
return mBoxHelper.getLeftValidBoxTotalDurationStr()
}
override fun hasWithdrawed01(): Boolean {
return newbieFirstWithdrawStatus().getStatusBean().hasClaimReward
}
})
}
}

View File

@ -19,6 +19,7 @@ import java.util.concurrent.ConcurrentHashMap
@SuppressLint("StaticFieldLeak")
object NotificationDatas {
private lateinit var mCallback: IResidentDataCallback
private val mLastRandomIndexMap: MutableMap<String, Int> = mutableMapOf()
const val TIME_GAP_FOR_NOTIFY_INTERVAL = 30 * 1000
@ -238,4 +239,14 @@ object NotificationDatas {
return mRandomConfigList[mLastRandomIndexMap[randomType]!!]
}
interface IResidentDataCallback {
fun getGoldNumber(): Long
fun getCashNumber(): Double
fun getBoxRestTimeStr(): String
fun hasWithdrawed01(): Boolean
}
fun setResidentCallback(callback: IResidentDataCallback) {
mCallback = callback
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB