diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 8668483..f7e83c9 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -4,6 +4,8 @@ plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("io.objectbox") + id("com.google.gms.google-services") + id("com.google.firebase.crashlytics") } val timestamp = SimpleDateFormat("MM_dd_HH_mm").format(Date()) android { @@ -15,8 +17,8 @@ android { applicationId = "com.prank.tool.sounds.app" minSdk = 24 targetSdk = 35 - versionCode = 1 - versionName = "1.0" + versionCode = 2 + versionName = "1.1" setProperty("archivesBaseName", "Prank Tools_V" + versionName + "(${versionCode})_$timestamp") testInstrumentationRunner = "androidx.sounds.runner.AndroidJUnitRunner" vectorDrawables { @@ -62,5 +64,90 @@ implementation("androidx.appcompat:appcompat:1.6.1") implementation ("com.github.bumptech.glide:glide:4.16.0") implementation ("com.airbnb.android:lottie:5.2.0") + implementation(files("libs/TopOnLibrary_06_27_16_00-release.aar")) + implementation(files("libs/UpLoadLibrary_07_03_11_54-release.aar")) + implementation(platform("com.google.firebase:firebase-bom:33.7.0")) + implementation("com.google.firebase:firebase-crashlytics") + implementation("com.google.firebase:firebase-analytics") + implementation("com.google.firebase:firebase-config") + + //-----------------------------------------------TopOn(Mintegral、Pangle、UnitAds、Digital Turbine(Fyber)、Chartboost&Helium、Ironsource、Liftoff(Vungle)、Inmobi、Start.io、Bigo) + //TU (Necessary) + implementation("com.thinkup.sdk:core-tpn:6.4.90") + implementation("com.thinkup.sdk:nativead-tpn:6.4.90") + implementation("com.thinkup.sdk:banner-tpn:6.4.90") + implementation("com.thinkup.sdk:interstitial-tpn:6.4.90") + implementation("com.thinkup.sdk:rewardedvideo-tpn:6.4.90") + implementation("com.thinkup.sdk:splash-tpn:6.4.90") + + //Androidx (Necessary) + implementation("androidx.appcompat:appcompat:1.6.1") + implementation("androidx.browser:browser:1.4.0") + + //StartApp + implementation("com.thinkup.sdk:adapter-tpn-startapp:6.4.90") + implementation("com.startapp:inapp-sdk:5.0.2") + + //Vungle + implementation("com.thinkup.sdk:adapter-tpn-vungle:6.4.90") + implementation("com.vungle:vungle-ads:7.5.0") + implementation("com.google.android.gms:play-services-basement:18.1.0") + implementation("com.google.android.gms:play-services-ads-identifier:18.0.1") + + //UnityAds + implementation("com.thinkup.sdk:adapter-tpn-unityads:6.4.90") + implementation("com.unity3d.ads:unity-ads:4.14.0") + + //Ironsource + implementation("com.thinkup.sdk:adapter-tpn-ironsource:6.4.90") + implementation("com.ironsource.sdk:mediationsdk:8.7.0") + implementation("com.google.android.gms:play-services-appset:16.0.2") + implementation("com.google.android.gms:play-services-ads-identifier:18.0.1") + implementation("com.google.android.gms:play-services-basement:18.1.0") + + //Bigo + implementation("com.thinkup.sdk:adapter-tpn-bigo:6.4.90") + implementation("com.bigossp:bigo-ads:5.3.0") + + //Pangle + implementation("com.thinkup.sdk:adapter-tpn-pangle:6.4.90.1") + implementation("com.pangle.global:pag-sdk:7.2.0.6") + implementation("com.google.android.gms:play-services-ads-identifier:18.2.0") + + //Inmobi + implementation("com.thinkup.sdk:adapter-tpn-inmobi:6.4.90") + implementation("com.inmobi.monetization:inmobi-ads-kotlin:10.8.2") + + //Mintegral + implementation("com.thinkup.sdk:adapter-tpn-mintegral:6.4.90") + implementation("com.mbridge.msdk.oversea:mbridge_android_sdk:16.9.71") + implementation("androidx.recyclerview:recyclerview:1.1.0") + + //Chartboost + implementation("com.thinkup.sdk:adapter-tpn-chartboost:6.4.90") + implementation("com.chartboost:chartboost-sdk:9.8.3") + implementation("com.chartboost:chartboost-mediation-sdk:4.9.2") + implementation("com.chartboost:chartboost-mediation-adapter-chartboost:4.9.8.1.0") + implementation("com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:1.0.0") + implementation("com.squareup.okhttp3:logging-interceptor:4.10.0") + implementation("com.squareup.okhttp3:okhttp:4.10.0") + implementation("com.squareup.retrofit2:converter-scalars:2.9.0") + implementation("com.squareup.retrofit2:retrofit:2.9.0") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.1") + + //Fyber + implementation("com.thinkup.sdk:adapter-tpn-fyber:6.4.90") + implementation("com.fyber:marketplace-sdk:8.3.7") + implementation("com.google.android.gms:play-services-ads-identifier:18.0.1") + + //Tramini + implementation("com.thinkup.sdk:tramini-plugin-tpn:6.4.90") + + // Debugger UI Tools + implementation("com.anythink.sdk:debugger-ui:1.1.0") + + //----------------------------------------------TopOn + } \ No newline at end of file diff --git a/app/libs/TopOnLibrary_06_27_16_00-release.aar b/app/libs/TopOnLibrary_06_27_16_00-release.aar new file mode 100644 index 0000000..2500938 Binary files /dev/null and b/app/libs/TopOnLibrary_06_27_16_00-release.aar differ diff --git a/app/libs/UpLoadLibrary_07_03_11_54-release.aar b/app/libs/UpLoadLibrary_07_03_11_54-release.aar new file mode 100644 index 0000000..5a50672 Binary files /dev/null and b/app/libs/UpLoadLibrary_07_03_11_54-release.aar differ diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index cfdc988..a02182e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,7 +1,7 @@ - + + + + + + + + + { - String name = binding.saveEdit.getText().toString().trim(); - boolean b = Db.checkName(name); - if (!TextUtils.isEmpty(name)) { - if(!b){ - binding.saveEdit.setText(""); - Toast.makeText(ViewSaveSound.this, getString(R.string.name_hint), Toast.LENGTH_SHORT).show(); - return; + + AdManager.showTopOn(ViewSaveSound.this, new onActionListener() { + @Override + public void onAction() { + String name = binding.saveEdit.getText().toString().trim(); + boolean b = Db.checkName(name); + if (!TextUtils.isEmpty(name)) { + if(!b){ + binding.saveEdit.setText(""); + Toast.makeText(ViewSaveSound.this, getString(R.string.name_hint), Toast.LENGTH_SHORT).show(); + return; + } + saveData(name); + Toast.makeText(ViewSaveSound.this, getString(R.string.save_tips), Toast.LENGTH_SHORT).show(); + finish(); + } else { + Toast.makeText(ViewSaveSound.this, getString(R.string.save_tip), Toast.LENGTH_SHORT).show(); + } } - saveData(name); - Toast.makeText(ViewSaveSound.this, getString(R.string.save_tips), Toast.LENGTH_SHORT).show(); - finish(); - } else { - Toast.makeText(ViewSaveSound.this, getString(R.string.save_tip), Toast.LENGTH_SHORT).show(); - } + }); + + + }); } diff --git a/app/src/main/java/com/prank/tool/sounds/app/activity/ViewSplash.java b/app/src/main/java/com/prank/tool/sounds/app/activity/ViewSplash.java index 78d04ad..bbff7ec 100644 --- a/app/src/main/java/com/prank/tool/sounds/app/activity/ViewSplash.java +++ b/app/src/main/java/com/prank/tool/sounds/app/activity/ViewSplash.java @@ -6,12 +6,17 @@ import android.os.CountDownTimer; import androidx.appcompat.app.AppCompatActivity; +import com.ad.toponlibrary.AdManager; import com.prank.tool.sounds.app.common.MyUtils; import com.prank.tool.sounds.app.databinding.ViewSplashBinding; +import kotlin.Unit; +import kotlin.jvm.functions.Function0; +import kotlin.jvm.functions.Function1; + public class ViewSplash extends AppCompatActivity { - private long time = 1000; + private long time = 12000; private ViewSplashBinding binding; private CountDownTimer countDownTimer; @@ -21,19 +26,22 @@ public class ViewSplash extends AppCompatActivity { binding = ViewSplashBinding.inflate(getLayoutInflater()); setContentView(binding.getRoot()); MyUtils.setStatusBarTextColor(this, true); - countDownTimer = new CountDownTimer(time, 200) { + + countDownTimer = AdManager.showWelcomeAd(this, time, new Function1() { @Override - public void onTick(long millisUntilFinished) { - int progressPercentage = (int) ((100 * millisUntilFinished) / time); + public Unit invoke(Long aLong) { + int progressPercentage = (int) ((100 * aLong) / time); int Percentage = 100 - progressPercentage; binding.loadingPb.setProgress(Percentage); + return null; } - + }, new Function0() { @Override - public void onFinish() { + public Unit invoke() { welcomeMain(); + return null; } - }; + }); countDownTimer.start(); } diff --git a/build.gradle.kts b/build.gradle.kts index 0f3fea3..3726a71 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,6 +2,9 @@ plugins { id("com.android.application") version "8.6.0" apply false id("org.jetbrains.kotlin.android") version "2.0.0" apply false + + id("com.google.gms.google-services") version "4.4.2" apply false + id ("com.google.firebase.crashlytics") version "3.0.2" apply false } buildscript { diff --git a/settings.gradle.kts b/settings.gradle.kts index fd5c7ed..d593a52 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -12,6 +12,25 @@ dependencyResolutionManagement { repositories { google() mavenCentral() + + //TU(Core) + maven ( "https://jfrog.anythinktech.com/artifactory/overseas_sdk") + + //Ironsource + maven ( "https://android-sdk.is.com/") + + //Pangle + maven ("https://artifact.bytedance.com/repository/pangle") + + //Mintegral + maven ("https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea") + + //Chartboost + maven ( "https://cboost.jfrog.io/artifactory/chartboost-ads") + maven ("https://cboost.jfrog.io/artifactory/chartboost-mediation") + + //TopOn集成测试工具 + maven ( "https://jfrog.anythinktech.com/artifactory/debugger") } }