删掉max集成

This commit is contained in:
litingting 2024-07-03 16:50:54 +08:00
parent cfa327d14e
commit ee5b4e51e0
10 changed files with 25 additions and 275 deletions

View File

@ -3,13 +3,10 @@ import java.text.SimpleDateFormat
plugins { plugins {
alias(libs.plugins.android.application) alias(libs.plugins.android.application)
alias(libs.plugins.jetbrains.kotlin.android) alias(libs.plugins.jetbrains.kotlin.android)
id("applovin-quality-service")
id("com.google.gms.google-services") id("com.google.gms.google-services")
id("com.google.firebase.crashlytics") id("com.google.firebase.crashlytics")
} }
applovin {
apiKey = "gOk7rpCP2naSEBtPcs45qG898lZ0W4AGOK7NvppKss0DZsVbbRTUSTuv4EyztWXLOFVOFf767ZeE7z2zP5rFsD"
}
val timestamp = SimpleDateFormat("MM_dd_HH_mm").format(Date()) val timestamp = SimpleDateFormat("MM_dd_HH_mm").format(Date())
android { android {
namespace = "com.sunny.app.soft.timberkeyboardnew" namespace = "com.sunny.app.soft.timberkeyboardnew"
@ -63,12 +60,6 @@ dependencies {
annotationProcessor ("com.github.bumptech.glide:compiler:4.12.0") annotationProcessor ("com.github.bumptech.glide:compiler:4.12.0")
implementation("com.applovin:applovin-sdk:12.5.0")
implementation("com.applovin.mediation:vungle-adapter:7.3.2.2")
implementation("com.applovin.mediation:bytedance-adapter:5.9.0.6.0")
implementation ("com.applovin.mediation:mintegral-adapter:16.7.51.0")
implementation("com.applovin.mediation:unityads-adapter:4.12.0.0")
implementation(platform("com.google.firebase:firebase-bom:32.3.1")) implementation(platform("com.google.firebase:firebase-bom:32.3.1"))
implementation("com.google.firebase:firebase-analytics-ktx") implementation("com.google.firebase:firebase-analytics-ktx")

View File

@ -2,12 +2,6 @@ package com.sunny.app.soft.timberkeyboardnew
import android.app.Application import android.app.Application
import android.content.Context import android.content.Context
import android.content.Intent
import androidx.localbroadcastmanager.content.LocalBroadcastManager
import com.applovin.sdk.AppLovinMediationProvider
import com.applovin.sdk.AppLovinSdk
import com.applovin.sdk.AppLovinSdkInitializationConfiguration
import com.facebook.FacebookSdk
class App : Application() { class App : Application() {
@ -30,15 +24,6 @@ class App : Application() {
private fun initMAX() { private fun initMAX() {
val initConfig =
AppLovinSdkInitializationConfiguration.builder(SDK, this)
.setMediationProvider(AppLovinMediationProvider.MAX)
.build()
AppLovinSdk.getInstance(this).initialize(initConfig) {
initOK = true
LocalBroadcastManager.getInstance(this).sendBroadcast(Intent(AD_INIT))
}
AppLovinSdk.getInstance(this).settings.setVerboseLogging(true)
AppLovinSdk.getInstance(this).showMediationDebugger();
} }
} }

View File

@ -1,8 +0,0 @@
package com.sunny.app.soft.timberkeyboardnew.max;
import com.applovin.mediation.MaxAd;
public interface MaxListener {
void onFail(MaxAd ad);
void onHidden( );
}

View File

@ -1,91 +0,0 @@
package com.sunny.app.soft.timberkeyboardnew.max;
import androidx.annotation.NonNull;
import com.applovin.mediation.MaxAd;
import com.applovin.mediation.MaxAdListener;
import com.applovin.mediation.MaxError;
import com.applovin.mediation.ads.MaxInterstitialAd;
import com.sunny.app.soft.timberkeyboardnew.App;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class MaxManager {
private static final String one_AD = "28199ac21a0f949c";
private static final String two_Ad = "6c78e8d532d1fe28";
private static final String three_ad = "8f21ab262b435489";
private static List<MaxInterstitialAd> adList = new ArrayList<>();
public static MaxInterstitialAd getAd(List<MaxInterstitialAd> list) {
Collections.shuffle(list);
for (MaxInterstitialAd ad : list) {
if (ad.isReady()) {
return ad;
}
}
return null;
}
public static List<MaxInterstitialAd> onLoadAd() {
if (adList.isEmpty()) {
MaxInterstitialAd AdT = new MaxInterstitialAd(two_Ad, App.appContext);
MaxInterstitialAd AdOne = new MaxInterstitialAd(one_AD, App.appContext);
MaxInterstitialAd AdThree = new MaxInterstitialAd(three_ad, App.appContext);
adList.add(AdOne);
adList.add(AdT);
adList.add(AdThree);
}
for (MaxInterstitialAd ad : adList) {
if (!ad.isReady()) {
ad.loadAd();
}
}
return adList;
}
public static void setMyListener(MaxInterstitialAd ad, MaxListener maxListener) {
ad.setListener(new MaxAdListener() {
@Override
public void onAdLoaded(@NonNull MaxAd maxAd) {
}
@Override
public void onAdDisplayed(@NonNull MaxAd maxAd) {
}
@Override
public void onAdHidden(@NonNull MaxAd maxAd) {
maxListener.onHidden();
}
@Override
public void onAdClicked(@NonNull MaxAd maxAd) {
}
@Override
public void onAdLoadFailed(@NonNull String s, @NonNull MaxError maxError) {
}
@Override
public void onAdDisplayFailed(@NonNull MaxAd maxAd, @NonNull MaxError maxError) {
maxListener.onFail(maxAd);
}
});
}
}

View File

@ -1,86 +0,0 @@
package com.sunny.app.soft.timberkeyboardnew.max
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.content.IntentFilter
import android.os.CountDownTimer
import android.util.Log
import androidx.localbroadcastmanager.content.LocalBroadcastManager
import com.applovin.mediation.MaxAd
import com.applovin.mediation.ads.MaxInterstitialAd
import com.sunny.app.soft.timberkeyboardnew.App
object WelComManager {
private lateinit var timer: CountDownTimer
private var need_Show = true
private lateinit var lists: List<MaxInterstitialAd>
fun initTimer(context: Context,countTime:Long,goMainAction: () -> Unit):CountDownTimer{
need_Show = true
timer = object : CountDownTimer(countTime, 100) {
override fun onTick(millisUntilFinished: Long) {
if (need_Show) {
startShowAd {
Log.d("----------","--onTick----------it=$it")
if(it){
goMainAction.invoke()
}
}
}
}
override fun onFinish() {
if (need_Show) {
startShowAd {
Log.d("----------","--onFinish----------it=$it")
goMainAction.invoke()
}
}
}
}
startAd(context)
return timer
}
private fun startAd(context: Context) {
if (!App.initOK) {
LocalBroadcastManager.getInstance(context).registerReceiver(object : BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
lists = MaxManager.onLoadAd()
timer.start()
Log.d("------------", "------------1sucess")
}
}, IntentFilter(App.AD_INIT))
} else {
lists = MaxManager.onLoadAd()
timer.start()
Log.d("------------", "------------2sucess")
}
}
private fun startShowAd(action: (go:Boolean) -> Unit) {
val checkCacheAd = MaxManager.getAd(lists)
if (checkCacheAd == null) {
action.invoke(false)
} else {
need_Show = false
MaxManager.setMyListener(checkCacheAd, object : MaxListener {
override fun onFail(ad: MaxAd?) {
action.invoke(true)
}
override fun onHidden() {
action.invoke(true)
}
})
checkCacheAd.showAd()
}
}
}

View File

@ -8,21 +8,15 @@ import android.graphics.drawable.BitmapDrawable
import android.util.Log import android.util.Log
import android.view.View import android.view.View
import android.widget.Toast import android.widget.Toast
import com.applovin.mediation.MaxAd
import com.applovin.mediation.ads.MaxInterstitialAd
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.bumptech.glide.load.DataSource import com.bumptech.glide.load.DataSource
import com.bumptech.glide.load.engine.DiskCacheStrategy
import com.bumptech.glide.load.engine.GlideException import com.bumptech.glide.load.engine.GlideException
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions
import com.bumptech.glide.request.RequestListener import com.bumptech.glide.request.RequestListener
import com.bumptech.glide.request.RequestOptions
import com.bumptech.glide.request.target.Target import com.bumptech.glide.request.target.Target
import com.sunny.app.soft.timberkeyboardnew.R import com.sunny.app.soft.timberkeyboardnew.R
import com.sunny.app.soft.timberkeyboardnew.data.entity.BackgroundEntity import com.sunny.app.soft.timberkeyboardnew.data.entity.BackgroundEntity
import com.sunny.app.soft.timberkeyboardnew.databinding.ActivityDownloadBinding import com.sunny.app.soft.timberkeyboardnew.databinding.ActivityDownloadBinding
import com.sunny.app.soft.timberkeyboardnew.max.MaxListener
import com.sunny.app.soft.timberkeyboardnew.max.MaxManager
import com.sunny.app.soft.timberkeyboardnew.tools.AppConstant import com.sunny.app.soft.timberkeyboardnew.tools.AppConstant
import com.sunny.app.soft.timberkeyboardnew.tools.KeyboardManager import com.sunny.app.soft.timberkeyboardnew.tools.KeyboardManager
import com.sunny.app.soft.timberkeyboardnew.tools.ZipTools import com.sunny.app.soft.timberkeyboardnew.tools.ZipTools
@ -47,7 +41,7 @@ class DownloadActivity :
private lateinit var unzipPath: String private lateinit var unzipPath: String
private lateinit var sp: SharedPreferences private lateinit var sp: SharedPreferences
private lateinit var ads:List<MaxInterstitialAd>
override fun setRootView(): View { override fun setRootView(): View {
binding = ActivityDownloadBinding.inflate(layoutInflater) binding = ActivityDownloadBinding.inflate(layoutInflater)
return binding.root return binding.root
@ -57,7 +51,7 @@ class DownloadActivity :
super.initView() super.initView()
backgroundEntity = intent.getSerializableExtra(AppConstant.KEY_EXTRA) as BackgroundEntity backgroundEntity = intent.getSerializableExtra(AppConstant.KEY_EXTRA) as BackgroundEntity
ads = MaxManager.onLoadAd() // TODO: load Ad
sp = getSharedPreferences( sp = getSharedPreferences(
AppConstant.SHARE_NAME, Context.MODE_PRIVATE AppConstant.SHARE_NAME, Context.MODE_PRIVATE
@ -95,20 +89,8 @@ class DownloadActivity :
} }
private fun onShowAd() { private fun onShowAd() {
val checkCacheAd = MaxManager.getAd(ads)
if (checkCacheAd == null) {
} else {
MaxManager.setMyListener(checkCacheAd, object : MaxListener {
override fun onFail(ad: MaxAd) {
startSetSkin() startSetSkin()
} }
override fun onHidden() {
startSetSkin()
}
})
checkCacheAd.showAd()
}
}
private fun initButton() { private fun initButton() {
binding.downloadBack.setOnClickListener(this) binding.downloadBack.setOnClickListener(this)
binding.btnDownload.setOnClickListener(this) binding.btnDownload.setOnClickListener(this)

View File

@ -1,24 +1,12 @@
package com.sunny.app.soft.timberkeyboardnew.ui.activity package com.sunny.app.soft.timberkeyboardnew.ui.activity
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent import android.content.Intent
import android.content.IntentFilter
import android.os.CountDownTimer import android.os.CountDownTimer
import android.util.Log
import android.view.View import android.view.View
import androidx.localbroadcastmanager.content.LocalBroadcastManager
import com.applovin.mediation.MaxAd
import com.applovin.mediation.ads.MaxInterstitialAd import com.applovin.mediation.ads.MaxInterstitialAd
import com.sunny.app.soft.timberkeyboardnew.App
import com.sunny.app.soft.timberkeyboardnew.databinding.ActivityLoadingBinding import com.sunny.app.soft.timberkeyboardnew.databinding.ActivityLoadingBinding
import com.sunny.app.soft.timberkeyboardnew.max.MaxListener
import com.sunny.app.soft.timberkeyboardnew.max.MaxManager
import com.sunny.app.soft.timberkeyboardnew.max.WelComManager
import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
class LoadingActivity : BaseActivity() { class LoadingActivity : BaseActivity() {
@ -40,13 +28,24 @@ class LoadingActivity : BaseActivity() {
} }
override fun initView() { override fun initView() {
super.initView() super.initView()
timer = WelComManager.initTimer(this,countTime) {
timer = object :CountDownTimer(10000,200){
override fun onTick(millisUntilFinished: Long) {
}
override fun onFinish() {
intoMainActivity() intoMainActivity()
} }
} }
}
private fun intoMainActivity() { private fun intoMainActivity() {
val intent = Intent(this, MainActivity::class.java) val intent = Intent(this, MainActivity::class.java)
startActivity(intent) startActivity(intent)

View File

@ -1,18 +1,14 @@
package com.sunny.app.soft.timberkeyboardnew.ui.fragment package com.sunny.app.soft.timberkeyboardnew.ui.fragment
import android.content.Intent import android.content.Intent
import android.util.Log
import android.view.View import android.view.View
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import com.applovin.mediation.MaxAd
import com.applovin.mediation.ads.MaxInterstitialAd
import com.sunny.app.soft.timberkeyboardnew.App import com.sunny.app.soft.timberkeyboardnew.App
import com.sunny.app.soft.timberkeyboardnew.R import com.sunny.app.soft.timberkeyboardnew.R
import com.sunny.app.soft.timberkeyboardnew.data.DataManager import com.sunny.app.soft.timberkeyboardnew.data.DataManager
import com.sunny.app.soft.timberkeyboardnew.data.entity.CategoryEntity import com.sunny.app.soft.timberkeyboardnew.data.entity.CategoryEntity
import com.sunny.app.soft.timberkeyboardnew.databinding.FragmentHomeBinding import com.sunny.app.soft.timberkeyboardnew.databinding.FragmentHomeBinding
import com.sunny.app.soft.timberkeyboardnew.max.MaxListener
import com.sunny.app.soft.timberkeyboardnew.max.MaxManager
import com.sunny.app.soft.timberkeyboardnew.tools.AppConstant import com.sunny.app.soft.timberkeyboardnew.tools.AppConstant
import com.sunny.app.soft.timberkeyboardnew.ui.activity.SelectActivity import com.sunny.app.soft.timberkeyboardnew.ui.activity.SelectActivity
import com.sunny.app.soft.timberkeyboardnew.ui.adapter.HomeViewAdapter import com.sunny.app.soft.timberkeyboardnew.ui.adapter.HomeViewAdapter
@ -22,7 +18,7 @@ class HomeFragment :
BaseFragment() { BaseFragment() {
private lateinit var binding: FragmentHomeBinding private lateinit var binding: FragmentHomeBinding
private lateinit var ads:List<MaxInterstitialAd>
private lateinit var data:CategoryEntity private lateinit var data:CategoryEntity
override fun setRootView(): View { override fun setRootView(): View {
binding = FragmentHomeBinding.inflate(layoutInflater) binding = FragmentHomeBinding.inflate(layoutInflater)
@ -31,7 +27,7 @@ class HomeFragment :
override fun initView() { override fun initView() {
super.initView() super.initView()
ads = MaxManager.onLoadAd() // TODO: loadAd
initTitle() initTitle()
initViewPager() initViewPager()
} }
@ -64,20 +60,8 @@ class HomeFragment :
fun onShowAd() { fun onShowAd() {
val checkCacheAd = MaxManager.getAd(ads)
if (checkCacheAd == null) {
} else {
MaxManager.setMyListener(checkCacheAd, object : MaxListener {
override fun onFail(ad: MaxAd) {
enterList() enterList()
} }
override fun onHidden() {
enterList()
}
})
checkCacheAd.showAd()
}
}
private fun initTitle() { private fun initTitle() {
binding.homeTitle.text = App.appContext.getString(R.string.app_name) binding.homeTitle.text = App.appContext.getString(R.string.app_name)

View File

@ -5,8 +5,3 @@ plugins {
id("com.google.gms.google-services") version "4.3.15" apply false id("com.google.gms.google-services") version "4.3.15" apply false
id ("com.google.firebase.crashlytics") version "2.9.2" apply false id ("com.google.firebase.crashlytics") version "2.9.2" apply false
} }
buildscript{
dependencies{
classpath("com.applovin.quality:AppLovinQualityServiceGradlePlugin:+")
}
}

View File

@ -9,7 +9,7 @@ pluginManagement {
} }
mavenCentral() mavenCentral()
gradlePluginPortal() gradlePluginPortal()
maven{url = uri("https://artifacts.applovin.com/android")}
} }
} }
dependencyResolutionManagement { dependencyResolutionManagement {
@ -17,8 +17,7 @@ dependencyResolutionManagement {
repositories { repositories {
google() google()
mavenCentral() mavenCentral()
maven { url = uri("https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea") }
maven { url = uri("https://artifact.bytedance.com/repository/pangle") }
} }
} }