Compare commits

...

2 Commits

Author SHA1 Message Date
renhaoting a8ab37a17b 看广告act 2025-11-28 11:25:45 +08:00
renhaoting 86214129b6 title 2025-11-28 11:16:10 +08:00
9 changed files with 112 additions and 1 deletions

View File

@ -12,12 +12,14 @@ import com.gamedog.vididin.router.DefaultFeedbackRouter
import com.gamedog.vididin.router.DefaultPrivacyRouter import com.gamedog.vididin.router.DefaultPrivacyRouter
import com.gamedog.vididin.router.DefaultSplashRouter import com.gamedog.vididin.router.DefaultSplashRouter
import com.gamedog.vididin.router.DefaultVersionRouter import com.gamedog.vididin.router.DefaultVersionRouter
import com.gamedog.vididin.router.DefaultWatchAdRouter
import com.gamedog.vididin.router.DefaultWithdrawRecordRouter import com.gamedog.vididin.router.DefaultWithdrawRecordRouter
import com.gamedog.vididin.router.IRouterFeedback import com.gamedog.vididin.router.IRouterFeedback
import com.gamedog.vididin.router.IRouterPrivacy import com.gamedog.vididin.router.IRouterPrivacy
import com.gamedog.vididin.router.IRouterSplash import com.gamedog.vididin.router.IRouterSplash
import com.gamedog.vididin.router.IRouterVersion import com.gamedog.vididin.router.IRouterVersion
import com.gamedog.vididin.router.IRouterWithdrawRecord import com.gamedog.vididin.router.IRouterWithdrawRecord
import com.gamedog.vididin.router.IRouterWatchAd
import dagger.Module import dagger.Module
import dagger.Provides import dagger.Provides
import dagger.hilt.InstallIn import dagger.hilt.InstallIn
@ -99,3 +101,11 @@ object VersionModule {
@Singleton @Singleton
fun provideRouter(): IRouterVersion = DefaultVersionRouter() fun provideRouter(): IRouterVersion = DefaultVersionRouter()
} }
@Module
@InstallIn(SingletonComponent::class)
object WatchAd {
@Provides
@Singleton
fun provideRouter(): IRouterWatchAd = DefaultWatchAdRouter()
}

View File

@ -13,6 +13,7 @@ import com.gamedog.vididin.router.IRouterPrivacy
import com.gamedog.vididin.router.IRouterSplash import com.gamedog.vididin.router.IRouterSplash
import com.gamedog.vididin.router.IRouterVersion import com.gamedog.vididin.router.IRouterVersion
import com.gamedog.vididin.router.IRouterWithdrawRecord import com.gamedog.vididin.router.IRouterWithdrawRecord
import com.gamedog.vididin.router.IRouterWatchAd
import dagger.hilt.EntryPoint import dagger.hilt.EntryPoint
import dagger.hilt.InstallIn import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent import dagger.hilt.components.SingletonComponent
@ -38,6 +39,7 @@ interface RouterEntryPoint {
fun feedbackRouter(): IRouterFeedback fun feedbackRouter(): IRouterFeedback
fun splashRouter(): IRouterSplash fun splashRouter(): IRouterSplash
fun withdrawRecordRouter(): IRouterWithdrawRecord fun withdrawRecordRouter(): IRouterWithdrawRecord
fun watchAdRouter(): IRouterWatchAd
} }

View File

@ -8,7 +8,6 @@ import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat import androidx.core.view.WindowInsetsCompat
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.ama.core.architecture.appBase.AppViewsActivity import com.ama.core.architecture.appBase.AppViewsActivity
import com.gamedog.vididin.R
import com.gamedog.vididin.main.interfaces.OnTabStyleListener import com.gamedog.vididin.main.interfaces.OnTabStyleListener
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
import kotlin.getValue import kotlin.getValue

View File

@ -0,0 +1,64 @@
package com.gamedog.vididin.features.watchad
import android.app.Activity
import android.content.Intent
import android.view.LayoutInflater
import androidx.activity.viewModels
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.updatePadding
import com.ama.core.architecture.appBase.AppViewsActivity
import com.gamedog.vididin.main.interfaces.OnTabStyleListener
import dagger.hilt.android.AndroidEntryPoint
import kotlin.getValue
import com.gamedog.vididin.databinding.ActivityWatchAdBinding as ViewBinding
import com.gamedog.vididin.main.MainUiState as UiState
import com.gamedog.vididin.main.MainViewModel as ViewModel
@AndroidEntryPoint
class WatchAdActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnTabStyleListener {
override val mViewModel: ViewModel by viewModels()
override fun inflateViewBinding(inflater: LayoutInflater) = ViewBinding.inflate(inflater)
override fun ViewBinding.initViews() {
with(binding) {
}
}
override fun ViewBinding.initWindowInsets() {
ViewCompat.setOnApplyWindowInsetsListener(contentRoot) { v, insets ->
val systemBars =
insets.getInsets(WindowInsetsCompat.Type.systemBars() or WindowInsetsCompat.Type.displayCutout())
v.updatePadding(top = systemBars.top)
insets
}
}
override fun ViewBinding.initListeners() {
//TODO("Not yet implemented")
}
override fun ViewBinding.initObservers() {
//TODO("Not yet implemented")
}
override fun ViewBinding.onUiStateCollect(uiState: UiState) {
//TODO("Not yet implemented")
}
override fun onTabIsDarkFont(isDarkFont: Boolean) {
//TODO("Not yet implemented")
}
companion object {
internal fun startActivity(activity: Activity) {
activity.startActivity(Intent(activity.applicationContext, WatchAdActivity::class.java))
}
}
}

View File

@ -39,7 +39,11 @@ object Router : RouterContract {
get() = routerEntryPoint.feedbackRouter() get() = routerEntryPoint.feedbackRouter()
override val WithdrawRecord: IRouterWithdrawRecord override val WithdrawRecord: IRouterWithdrawRecord
get() = routerEntryPoint.withdrawRecordRouter() get() = routerEntryPoint.withdrawRecordRouter()
override val Splash: IRouterSplash override val Splash: IRouterSplash
get() = routerEntryPoint.splashRouter() get() = routerEntryPoint.splashRouter()
override val WatchAd: IRouterWatchAd
get() = routerEntryPoint.watchAdRouter()
} }

View File

@ -27,5 +27,7 @@ interface RouterContract {
val Feedback: IRouterFeedback val Feedback: IRouterFeedback
val WithdrawRecord: IRouterWithdrawRecord val WithdrawRecord: IRouterWithdrawRecord
val Splash: IRouterSplash val Splash: IRouterSplash
val WatchAd: IRouterWatchAd
} }

View File

@ -5,6 +5,7 @@ import com.gamedog.vididin.features.feedback.FeedbackActivity
import com.gamedog.vididin.features.privacy.PrivacyActivity import com.gamedog.vididin.features.privacy.PrivacyActivity
import com.gamedog.vididin.features.splash.SplashActivity import com.gamedog.vididin.features.splash.SplashActivity
import com.gamedog.vididin.features.version.VersionActivity import com.gamedog.vididin.features.version.VersionActivity
import com.gamedog.vididin.features.watchad.WatchAdActivity
import com.gamedog.vididin.features.withdrawrecord.WithdrawRecordActivity import com.gamedog.vididin.features.withdrawrecord.WithdrawRecordActivity
@ -38,3 +39,9 @@ class DefaultVersionRouter: IRouterVersion {
} }
} }
class DefaultWatchAdRouter: IRouterWatchAd {
override fun startActivity(activity: Activity) {
WatchAdActivity.Companion.startActivity(activity)
}
}

View File

@ -23,4 +23,8 @@ interface IRouterSplash {
fun startActivity(activity: Activity) fun startActivity(activity: Activity)
} }
interface IRouterWatchAd {
fun startActivity(activity: Activity)
}

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/content_root" >
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/tv_date_win"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:src="@mipmap/bg_record_win_rgiht"
/>
</LinearLayout>