From 09551fccb460349e9cab7367493cd192ed378cba Mon Sep 17 00:00:00 2001 From: yuqian Date: Tue, 16 Dec 2025 15:13:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=85=A5tradplus?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/gradle.xml | 3 +- .idea/vcs.xml | 6 ++ build.gradle.kts | 3 + gradle.properties | 2 +- settings.gradle.kts | 20 ++++ test2/build.gradle.kts | 90 +++++++++++++++++- ...r Exquisite_v1.0(1)_12_05_14_18-release.dm | Bin 2735 -> 0 bytes ...r Exquisite_v2.0(2)_12_16_14_45-release.dm | Bin 0 -> 5034 bytes ...r Exquisite_v1.0(1)_12_05_14_18-release.dm | Bin 2678 -> 0 bytes ...r Exquisite_v2.0(2)_12_16_14_45-release.dm | Bin 0 -> 4914 bytes test2/release/output-metadata.json | 10 +- test2/src/main/AndroidManifest.xml | 3 + .../wallpaper/CollectionActivity.java | 9 +- .../wallpaper/FullImageActivity.java | 17 +++- .../wallpaper/StartuppageActivity.java | 43 ++++++--- .../wallpaper/WallpaperApplication.java | 12 +++ 16 files changed, 192 insertions(+), 26 deletions(-) create mode 100644 .idea/vcs.xml delete mode 100644 test2/release/baselineProfiles/0/Wallpaper Exquisite_v1.0(1)_12_05_14_18-release.dm create mode 100644 test2/release/baselineProfiles/0/Wallpaper Exquisite_v2.0(2)_12_16_14_45-release.dm delete mode 100644 test2/release/baselineProfiles/1/Wallpaper Exquisite_v1.0(1)_12_05_14_18-release.dm create mode 100644 test2/release/baselineProfiles/1/Wallpaper Exquisite_v2.0(2)_12_16_14_45-release.dm diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 4d9e023..793e600 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -5,7 +5,9 @@ diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index 327342f..34fbe2f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { alias(libs.plugins.android.application) 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 + } diff --git a/gradle.properties b/gradle.properties index 4387edc..5a6751e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -6,7 +6,7 @@ # http://www.gradle.org/docs/current/userguide/build_environment.html # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. -org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 +org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=U # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. For more details, visit # https://developer.android.com/r/tools/gradle-multi-project-decoupled-projects diff --git a/settings.gradle.kts b/settings.gradle.kts index 1ab5744..5591c2b 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -20,6 +20,26 @@ dependencyResolutionManagement { google() // 用于依赖 mavenCentral() maven { url = uri("https://jitpack.io") } + //------------------------- TradPlus + // Ironsource + maven { url = uri("https://android-sdk.is.com/") } + // Pangle + maven { + url = uri("https://artifact.bytedance.com/repository/pangle") + } + // Chartboost + maven { url = uri("https://cboost.jfrog.io/artifactory/chartboost-ads/") } + maven { + name = "Chartboost Mediation’s maven repo" + url = uri("https://cboost.jfrog.io/artifactory/chartboost-mediation") + } + // Mintegral + //Launch GP market application, Android X Version + //If you fail to pull the code using gradle, add the maven warehouse configuration to the project root build.gradle file + maven { + url = + uri("https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea") + } } } diff --git a/test2/build.gradle.kts b/test2/build.gradle.kts index 7452b49..860376c 100644 --- a/test2/build.gradle.kts +++ b/test2/build.gradle.kts @@ -3,6 +3,8 @@ import java.util.Date plugins { alias(libs.plugins.android.application) + id("com.google.gms.google-services") + id("com.google.firebase.crashlytics") } val timestamp = SimpleDateFormat("MM_dd_HH_mm").format(Date()) @@ -14,8 +16,8 @@ android { applicationId = "com.wall.exquisite.wallpaper" minSdk = 24 targetSdk = 36 - versionCode = 1 - versionName = "1.0" + versionCode = 2 + versionName = "2.0" setProperty("archivesBaseName","Wallpaper Exquisite_v"+versionName+"(${versionCode})_$timestamp") testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } @@ -76,4 +78,88 @@ dependencies { implementation(files("libs/TradPlusLibrary_11_25_15_02-release.aar")) implementation(files("libs/UpLoadLibrary_12_03_15_13-release.aar")) + implementation ("com.squareup.okhttp3:okhttp:4.12.0") + implementation("com.squareup.okhttp3:logging-interceptor:4.12.0") + + implementation ("com.google.android.gms:play-services-ads-identifier:18.0.1") + + // TradPlus + implementation("com.tradplusad:tradplus:14.5.0.1") + //noinspection GradleCompatible + implementation("androidx.legacy:legacy-support-v4:1.0.0") + implementation("androidx.appcompat:appcompat:1.3.0-alpha02") + // Meta + implementation("com.facebook.android:audience-network-sdk:6.20.0") + implementation("com.tradplusad:tradplus-facebook:1.14.5.0.1") + // Applovin + implementation("com.applovin:applovin-sdk:13.3.1") + implementation("com.tradplusad:tradplus-applovin:9.14.5.0.1") + implementation("com.google.android.gms:play-services-ads-identifier:18.2.0") + // Ironsource + implementation("com.ironsource.sdk:mediationsdk:8.10.0") + implementation("com.tradplusad:tradplus-ironsource:10.14.5.0.1") + implementation("com.google.android.gms:play-services-appset:16.0.0") + implementation("com.google.android.gms:play-services-ads-identifier:17.0.0") + implementation("com.google.android.gms:play-services-basement:17.5.0") + // Adcolony + implementation("com.adcolony:sdk:4.8.0") + implementation("com.tradplusad:tradplus-adcolony:4.14.5.0.1") + implementation("com.google.android.gms:play-services-ads-identifier:17.0.0") + // Pangle + implementation("com.tradplusad:tradplus-pangle:19.14.5.0.1") + implementation("com.pangle.global:pag-sdk:7.3.0.3") + // UnityAds + implementation("com.tradplusad:tradplus-unity:5.14.5.0.1") + implementation("com.unity3d.ads:unity-ads:4.15.1") + // Chartboost + implementation("com.tradplusad:tradplus-chartboostx:15.14.5.0.1") + implementation("com.chartboost:chartboost-sdk:9.8.3") + implementation("com.google.android.gms:play-services-ads-identifier:17.0.0") + implementation("com.google.android.gms:play-services-base:17.4.0") + // Inmobi + implementation("com.tradplusad:tradplus-inmobix:23.14.5.0.1") + implementation("com.inmobi.monetization:inmobi-ads-kotlin:10.8.3") + implementation("androidx.core:core-ktx:1.5.0") + implementation("com.inmobi.omsdk:inmobi-omsdk:1.5.2.0") + // Fyber + implementation("com.fyber:marketplace-sdk:8.3.7") + implementation("com.tradplusad:tradplus-fyber:24.14.5.0.1") + implementation("com.google.android.gms:play-services-ads-identifier:17.0.0") + implementation("com.google.android.gms:play-services-base:17.4.0") + // Start.io + implementation("com.startapp:inapp-sdk:5.2.3") + implementation("com.tradplusad:tradplus-startapp:28.14.5.0.1") + // Mintegral + implementation("com.tradplusad:tradplus-mintegralx_overseas:18.14.5.0.1") + implementation("androidx.recyclerview:recyclerview:1.1.0") + implementation("com.mbridge.msdk.oversea:mbridge_android_sdk:16.9.71") + // Liftoff + implementation("com.tradplusad:tradplus-vunglex:7.14.5.0.1") + implementation("com.vungle:vungle-ads:7.5.0") + // Yandex + implementation("com.yandex.android:mobileads:7.13.0") { + exclude(group = "com.caverock", module = "androidsvg-aar") + } + implementation("com.tradplusad:tradplus-yandex:50.14.6.10.1") + // Bigo + implementation("com.bigossp:bigo-ads:5.4.0") + implementation("com.tradplusad:tradplus-bigo:57.14.5.0.1") + // Cross Promotion + implementation("com.tradplusad:tradplus-crosspromotion:27.14.5.0.1") + // TP Exchange + // 请注意保持与主包版本同步更新 + implementation("com.google.code.gson:gson:2.8.6") + implementation("com.tradplusad:tp_exchange:40.14.5.0.1") + + // Google UMP + implementation ("com.google.android.ump:user-messaging-platform:3.2.0") + + // TradPlus Tools + // implementation 'com.tradplusad:tradplus-tool:1.1.4' + + //firebase + 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") } \ No newline at end of file diff --git a/test2/release/baselineProfiles/0/Wallpaper Exquisite_v1.0(1)_12_05_14_18-release.dm b/test2/release/baselineProfiles/0/Wallpaper Exquisite_v1.0(1)_12_05_14_18-release.dm deleted file mode 100644 index 38f2bc9ca9eeb94d9adc01558d8c097fa7fe02b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2735 zcmZ{mc{CJy8^>pCBfC_xWsQ3k8S9WCYqEqCWt$j`Y-4GdF;XH+23N>7(dCU4!Z1jK zDa$2GrAApMlVzk~jIpnGI_I8qd*5^3=Xbv6d4A{jJikA_&p#h0J8qsM0DgXcz)tu* z55O-W#Hqt0Z-n|pVl=}ekpVy)f7Ax20BC{r0NnpH8gsJDKQ$L8yK%J1kt^r&v&Rt# z06;+iK&UJL00ck`Sr-5T003AY01yPgLwus5{G&Ae{LyHjgYyLuF0fG4*ie7FtwK^) zwhWTiAA>m_tpmJ_YB0=H<6R=2Gf!7$N=YSaxE8=2UyxH@+g5Gi5(+Lml7;1<@G!H9 zbI8F{750u-o>xwVF0gD$0xXZ{i#;Q{H2q=VGICDFkk&n`K9OY)a~?Xu*2ZSIuegzI zn57z!T$xiZduzu|8u*|K_bp#~!nLrg#dG(I4qd4bL8&e|Zhf_0l@um;f0{|ACvbO+ zJzdbDW)=s3Q5!V!bzcJ|z0+&kLhtv^$r2<)4aDu6?p};#*o!h*Ng@(UPT68@jrf>No@0)oTv?3_;mBEOu)$9TK`r` z(P*BN)V>+F`2FWr{vtJ6s9GXHEO#MMAvJaGuzA{jGpp>sYAK+d^5gfa6^i}KehbZQ zcoNl2k6~_2LN_K!X4~DOXBl7EuR7=(yO^)+k|^q60lo6L%k>9tEh}EVmb;+wUM%2p z7uY)fuu{-`4z$Mx+j|qjf03_Znx$G=X^FTU-iR>O)J)Q(q`Gw2E8`< z`;xWjj#_XGCZs>F?D{-#`eC62i%Rxe{`7;X*L$Y@=KgNyaM-KIbpwT{Y65ZpER5!S z=%Uxf4=cGKwRN1alJclSb*G#aa)1;&#gvNC*iw&W)xV|pz_xYv8xPoX;oT>$eO;0; zT$+%p*m3f?84!XWzDc{s>hCAkIBJBi2-s7{c?km*JzM)t^9riWXX$CKo9!2bs$mJT zf;RH8XYT$HYz`kJeQ)L*TP@V7HecYqGvCDE_3wE_LC^F6|wgn{)kQ#N5N0kY2}W_ zVw{IR%LxX_jFy`)HJ! z#?$X`J+fPUWM{-9tJFH8nWtCj>ego7tSvs6u*tLT&Ew-DU8_CpPoI=7nJN$Ck!$ui zgN0=u5|k|ti*6od<$mO*!?mD;!r7r{BoS>pZ9o2tlp5a7w0FziO%NtZG2oY#ID07 zh>uS2Wu@b#D<>J{kUL;Uc#Iwc_gCon#39;W>X=R77HI}{gZlHeBDMq zNE;M4CMvVD4H92wiu)jOK#{7W@9R4ueEAzPkbO5Yq=t;Z^*HCOO;rkK62U#jD2=mf zqZhq*-}qk3!6uR(^M!^p@UI+kqwc-pF)ARoSb2$x308E>kYT7pp`=y5-a5D?poCsHloq6jwPjW|di z>t|Ao%<3cPp^KjHq}1H^dogZD-oHi!J#jj*56y3K+jCJ4f=R3 zli~4!wV)lJi-BWCrI~6X4z-gY_UA1WF7(H%!VpSXmfqufN8OS>zMgnSe3PjD-tI&0 zk+tt2*VA0LRTV|0AEZ5JkLiEKrrr~M-TIm@6I(UR&){y4%(4&y$HJB$*>tRn!@Y3V zBqF9Fp|m%p9dYq39R=LRzU$Ir=ffy>gz-(N(wQsRILe*5FDVhLgUc-)Y1U_;N}C;G zyO8rNMtYH0W_|M1%v-15x<@WUYIH+ z&iufTv(VS8vq~6SipNL*L|9-K>9hv9r*Q#pj22VIn312q!xbzYYHoI-4H= zz;WdCe^Ex5Ln6PTOejzaIJX}j84A$S(&lgpf|c) zne+B4Y2r75ZYBxtVH1(x2|GzcXkVwxH5BjRrGX`Bboc0MKPgw3f|wYErZoayP#y8KSH=iw`8O0L}CrJ)Ev3u}v#VxubX)3J-?PP3iZU!PFE^;<=up;};}YHU;lnnJ`@x+8 z?Y)ACH77ameJAiSyYAWs)rs$Qhalvhy{k9|!Fk+LT{W6f^tYfLB&qeuut2+5Xx8!;F%#%}C8 zV`uEd^y$0a|Mm5L%l|&teLeSce)oCK^W4vU&biM|M~j@|55R>B7XZ}0@uq;^g!bI_ z@N#ms_6iX8@N%~&8@zmb>)Zf{ib(><|8i6~Z()Dg!1K20TuaFS0L^oUUq0^VC++9~ zfZ}Up07^ipE;{m>H~_Hp69AwAKwPY$P&=rwt)0Ig-m_=SLH1nQJ80RU0Ae;ZBm7vfKLU$5*DP~~z+eURU` zW|f(Hf56xT;bK|OUq4urTWtt&qG_k|zyDy}@9GwPCjmn9Xf^cL5T0Gn#@D<)A=#?bvY( zmYJyP9-&JU{Ptaaemp5Kij>4jJ8J0HN65WvKoK=V2`M9%^j!NS#ESMF)839rq>rim zf`6p-sFRXu@w3K|NzTnVnw|%Aup^-#4`~k+-@9<%PZ{#d-?O_C4qe_cL zdNz#fBgM*X7>z;}t81?Zwn1(w=`W>NRrHE5tx6k&h==psMZq7H3}`%*y6GM#9eXLk zn`WE^Ni3LWTgw=odp=a_pv79i$en&gVdslS#!G0oSZkH;qL);Pme{hqHW z*HYC4fCPjQJsym5tm)PP6c#e9qQfavJ4n1$FXQXMDHk zbS8$*-uEsJzK=EnZB@aUR)4lx%eAF$3ICAc?MgQPolGsZ0@ep+tBVS(L5qwi4zqZ z*~QU^Eyes?Dmhi81sUP2m{3cnKsSFX^gRM@S9p!`2C2@ZR^v33y!}b2^0NCC)ydrU z5LMcr`N0BmPTfRE96T18W``dO+qjib+yC{%OaS!+VfGUjORDM!2f<;Ed(u`_YZw#DSwR2I zu-1BISEMJV<)W7QU@WSVI2XwuJX{@;K3yd&$2V2;fxDj?Kj{+Z78*i=;4Oz`Y+XLY zyFW!uGz|Q#4rfLAPNZ47<`B=D62qVjYdAtTFvu}TG>O7cOa zQEm;7oRt^qmt2^P_SaqF#h8T0Xx_PalZ-c$BJueZ9pHa-!q2!x1H&RDjV^kNg|Ba> z5R81EZl;A$+HPcOXh$k4^oY6A6>UD!tmQnLP9ayXhf6((-t92a*(4q9w#vqp_gN_@j~I??)OAwY4cv)nYvSXA_6YgSy0 zf2ZU@$CPPnE9Qhjjk#{=)#r`~ZlcBJtUlK1ZKY8a@>!5WKSKt|Uu{ZVMVPX>qAN?H zBu(7w<&yE2kcxOzViwZNt5GkF=EwSx$8g&5hH^k*X|%BkC~cS6W-8?taP1j(k3M7T zu*?7|R7-O&%vkCbk`cmpJ1^0#-M-j8aG5 zj`N^gl%$1M71vHIT4$tFKvN#~cOIl(t?m$e)B04|0xy#^B| ze2q;o36zYK-gt_#vDlBhXM>M^G?+3Y&p2P(uAnfV*wI~(xB4=7x}bKom|%)D1CJc- zVlBt*aMIV+XoBAiu0PvEOrj1k zw|i=zolP@|DC{1bdTvf2w2`m0fnrc>Ly)m3FL9-GEo#ExFc?|;)^(sh`!qd_Lw{>1 zWUoaeFN`^T?_{&%M%Ye-gSo@2+a)qZD&F&}c}tHA#qmn!vNA6X`4$8vVm;y%pIM6+ zzVDn|Y-u#l&}F*yzY~s(w|D-c?O}DG!X-)_DvGc54wXVr1Hx#!MxWgIN*}X8OLnlG z3U|t9<=k?fgGHI!`Nkf%FLYV&5#trr?C)!C(rTtmb!jLX_}{BCguf9n8jE&k075N# zZIXPJ%n%;-h8(;Ot%bfD4`uFqS-@yGMAXwc1hq~(KTKX%Nz3=KGB?FaFO4d(gDy?f zjE=3>8#3__W6;6DR@{6@nvPH&aQ^A>lLV)Ov*v_e0p3V-c|x=$7Rf%)7JO-RB9Ys| zv?EL6EMq{r;n?WMC;gbfl98RI;)1+xQXez1g(U`x=&9wrP+9pDxi-|Pn|(ANaiQA% zH9d%e?HZjQWsL!wk|a>stZ#WyPwRjs$ET(P9iRg~WzW%uvzKe44rxKlL~APD#f1ni zUub(9-$a3-IR0fk#F4wBx9I zXfk3gf?=1NUOd>*K`_L>+X^e$f;q?*36#KU6<-|y;pI!HPsSuiqy{O%+CNrrr16`n zYs*m`a3^sbz&N3Idf1GapyQA))F>=EL#cyOHrQNMy~_5jJ0}(`>tT_lN-J~6o`K!s zy_LKf8>B^&J4)`Lir#0TkVR>hElXaw2-9H8jB`dX!YaWmE-vtB27;98yc@N}GO-2yV z7yHNU$q9JA^)K9J@|gVhYq_`#gjCSkHVm;5U3+wDV_v$uPeH6|5*k1%vU-_mB2s4@ z2$j25oCnExiMdRIT!8j<1~!Nlfg_n(oV^{M*JK{ei80=DJgEIBJOR#-C34_cSPmdu zsH$&qa*SR3qEV>zlFOj)d)7U2jt&SY9V_h&dD7JZByq0?&yy6o-kDg-N-fVetk*$} z+O`&g-$&G~=8TqE*DHR4%M`zJ&ZblJ#y+SwC&y9ukZr&T$%=E1P@DE3UkRyY(7%3Ae@TtE!KswzKJFk9Si7Wb@9H846Wl&85rd>`33!9H5b=t{cdY@NUYBvf~6$8d|E%S)lqZz&Wr=2}FV^FIU zDtog-{1#K8+WPlD$<_8lHp7ec2~Ym>^Zwu7!#CN1q4xX*E}ELm5uDhM>iQku&$=3^ zqUPxPtj{d)l~vD9sMZ$=%BRltK-+K*H*^{IRsmVSB|TI4s_t)M7|6?Ae8*{Z2lPO+4g)K7PS zzdsGu=#(AO{r{?xe@%NPo=>z+;YsyjqhWCEq}=HqX>p3YC{xwA^{}JSW^I>nQZl7K zV!go_>B?(*DII=&ywjqylSZaaKyfp-w@5vlLCSkA?MD(v_1)(3#RpC`f*!9g7$C}@ zbH!FC_&-^Yx7)T0kW)d7Ym9^@Zg5otvq1YV+rU@o#2-<+IOdbdt@aJ5DZ0N4uglL? z4jCQy?HGh|4c}27lf~iD)PYOiHrTI5bNQqT(N!}w3&}_|CVu^C!B?1c=Lnk+<$v0f zPX`1XpL{2W+F+v)vmTFds_gq$c@ExrBg9;n%>#~Ld+a%eui&OW1{!x-&E~RflqJ(0 zgQnhWf7)-jzZUcEzZPx3!V@S*#t^1DsQULXj!-BBm0Ip}=w+9sPbSc_{0y-_`bJ>x zSKo0BoR}}wZ!8%nrO)N!{-X~3E#lYsGsj8P#}@~8e!F`wCq;v>*5`2&rH(J5N_kV~ zdA;}-CNdCchV$yRY@#s5?WEkz>mJz1_B4KE{d1C_r|}KXy=IKqWf+O2AH};N<5aV& zGC0wnTnCDveR~*mXS$pr?4{o$WiYo7&AXXqNY%9X1iK5VvT|o&Y522S6ZnB&sd9t- z+h>pdOYwRW42;~Ie`;^{O!n7O!pXI*G|PYuHfoguf34)^n>#umku}F4-y@5Czp}O` zRMGq9gtvvn*FnCaNIKKBz?;i$uN-I;~!t}6I zyqkiZo%TBI)@#9>!lh>$pYNrr|2^RUEUmvMKeueJbaMLVRK%~(_>9<=y}tddg459G zuSZhn1%L$Exq_%wkK&wcw(bsRt^XnJN<`55r#~7!?xFDxyhOJgP9aC6RdifQyZH`z zZsK7xm#RICjxZ7jquc#yaw#0;8YL#p`N3qsp7qC9<0G@{3|RCOj{MljX+d+m z0JuqZaYVRkJl8VB_|{`=>tY6Ne!feb=DhD?A+pRwuNt+cCcR7i`?^5Q87ux7`A*X_ zZ?yQBW;ZK-9Plni^X&Y`VuTv_{=2+Y17uTV<3WHaZ3I<@w z6wITS0f51C)%l;42p!<>l!z-CmJCet@Nxx+ii)4}8`sXU*@|u4>QZytQNpEw z!GtuLhqEVcGF*uEap`P~5w(mY6&LMeM(#@ogGY+$`6@IC@S8uT8C%NV-CZOKXXjHZ zM_X4{vegs@lZc5soLrDfZkYb`p$jPtn~}Y0gUlvAg^84fgmlvlRYnS=Yxdi#2-F zG0RCcBne4FS^K;%4z}5hzQ@8JV@)4ISRJHR4eDy$F}e;nbbBReo#$SU_jRAGgeywQ zzQ6y)L!IUx$2{0ylCTssms9s`HR!XX4*GembfEJnE;X3p=>3jQTlFZV!;a20hEYC^ zINZmt8nbe7w}JdiyCRz)Bc2cHB_)HGb?dT1HyBJeDxE|+UBCP2P~g<60W<{##b*Xi-xAf`R9U&v^@C`qldf=n_@@ literal 0 HcmV?d00001 diff --git a/test2/release/baselineProfiles/1/Wallpaper Exquisite_v1.0(1)_12_05_14_18-release.dm b/test2/release/baselineProfiles/1/Wallpaper Exquisite_v1.0(1)_12_05_14_18-release.dm deleted file mode 100644 index 7694b1222e9621c02a79ef9bb07a388f166b5dec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2678 zcmZ{mS5y<&7KRf8LjW){+68Cw&;vWQw5Gxn51%!|`lZto=o$?@GV z9)Ia3$796_LQ;+pio2tYLak7?sO^}lh+|tqSa{#?h{w*S*E9vi= zdnT(`J!uvUgBbST}CnV*g*<5K~vyIYtm=oV!T{C$t-V;o`cE0NuZ+Zdlb5P`>2-*_UXNI}jr zJ~`x@WuQr=&8=wE#Pak#*-~v@9yPIp#GSk~7|~{+OT8|wNDOhzNQAG$6(>j-9rRN= zvbC_qq>r_b0I0+ITS=%(R10&VD_&kq9;UDUwR4PVHpfg~sxn9|D^z}@kkT0TT!7!T zDW@Yxz-QZMBZq*WQT4e(XW|%enp&T-Hpn0P#SJtG=OsjpHAQ8FB(oCS!N>7=IOs!( z36Nhc_dZZvNc)!VLe9&d zcE{RgcqV8CVI(?o=sO`2O-aQrC79TiSbuy^P^}}m+8NuJI&8UD{ReC$v4K0?-cd8K zgGiSf8JX4nX6+MmzIq$B{6YbAu~R$loobczZhHdiP^&=FX{tK=h&TGj!dnLUI*48o z!yG$h5UP6Ge$Rcr(d5|*AaCHrLyT!qwI}GCPlHHFe7tC)ygg*c`&d7FR_ZH^!A4tBEBm z4lv?ZFj>0|g&r>Rshj5KNyidwb!JkmG4&fT=885Or$zeDb8JVRcEwZr*Ro=*%g)2? z%?A|lHwSntSS4i0GSI>tbjo067K>D*gD-6+IH>1}q4#T%*RiP*m)UU1r|gPCFbr79 zpj11l036KzLIoO9JZ4emO?;>?GY>*|TstZiR$J5kb0W?5C4z5CAyf z<{YN{S*G`}0F%q3cK_bzApMH&9}6i7r6?ZOdASUXC2LQQ^97J>OX85J8w>zbO z=GC6GWOgcSZ+IPpwC;oyGgL~LrN%_wj~lW5$QvlH1@|Rm^72olv@0<;yK!Z-xDi4p zj&(Y-vyekA5^7lJJAGg{5Py75uVq1Z(rHmGbo)_Xnom-iU6I>v^CZgAR(MPe)17So z1TD7LiRA_bRX@^EtMiDlnI%73Sg4sdfEXau629y`U4A;SsCY7asCiqs`7-vgEZ>(s zB&eZL17^_1S$ipH0&{41JMMJH;7VS98h!p%=`64o1 z{G<6LF+1BL&A;bg=)`;t{+a%rukmNMh9VIWFnD0NUAFMYjecZplnXR|5FY3v>22P- zq?m#}^&9+?L9<`5&~KSs-9gRjkfe?r`JedJv_}-_<8lc(?KUgZWzF)*l->(V3%y_R zHw)JAhS%3A=`OVmj)DB9T2L_pEa5~ZxMPQN&6KUErdK~$wDiaI4L3hspV{e!YbGO2 ztHDBoKjIU_gy;_yRINM_LmKYoB7QbO4mIO#5+td9K7Ey)r_q<5*8p`VvgRkSpOj04z~C97BizUcDyAlvuS5JjCjbo#XKVP zM=3r?TVb?#a#-ZG`OY5Z@T#X6>n?C#vjn?C|0>z};^iPE8Mjv2nbzu$rggixHs5of zWH(Nx1p&d^>))B&oN3l zeC)2z@tezNxeoiWc}KP^_l)9PE6tmyq`VQwM64~fXSguyGhY2(;gArFmqrL)Eu!ha z*V!&hjT{=dlY}0Wnx3t9>7H0^N;*oEWLILX(UPa;cBy!h@wruoj$Djb3i340TEyL>X|K<`q( z`NI_Tjtwf6TB)({`T_0M;Yw?lm1~8~!IP;S!6@QtZxsA5dGJ43K0jinD0Aj{vPQvd(~uIB&%I^ZuRaW>QTdN0Sq-*+v; zEEZ6I14-K_B2#b(yn~3g^qTdh)E>u<1Us1B{A{)a<$hj7hP>AwPG6Hd?!&CS%Q5n zqnyv-^fPch``cpawiC^>0v%4;Ii4rxK7*9_k+6&ksGd%I-7>y6<>n|9pM}#%cqZ`S z#z@A&)C;ngfW~5Wu7*uUQ_{&({Ct-nI~SLtT~{yynxW<>kPukUkbC*bT}JOAtT EA5Iwf4FCWD diff --git a/test2/release/baselineProfiles/1/Wallpaper Exquisite_v2.0(2)_12_16_14_45-release.dm b/test2/release/baselineProfiles/1/Wallpaper Exquisite_v2.0(2)_12_16_14_45-release.dm new file mode 100644 index 0000000000000000000000000000000000000000..63c1f4ac313806bfcddff75e45501620d1750fdd GIT binary patch literal 4914 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 + \ No newline at end of file diff --git a/test2/src/main/java/com/wall/exquisite/wallpaper/CollectionActivity.java b/test2/src/main/java/com/wall/exquisite/wallpaper/CollectionActivity.java index 275fb69..cdfa5db 100644 --- a/test2/src/main/java/com/wall/exquisite/wallpaper/CollectionActivity.java +++ b/test2/src/main/java/com/wall/exquisite/wallpaper/CollectionActivity.java @@ -13,6 +13,9 @@ import androidx.core.view.WindowCompat; import androidx.core.view.WindowInsetsControllerCompat; import androidx.recyclerview.widget.GridLayoutManager; import androidx.recyclerview.widget.RecyclerView; + +import com.ad.tradpluslibrary.TPAdManager; + import java.util.ArrayList; import java.util.List; @@ -30,6 +33,7 @@ public class CollectionActivity extends AppCompatActivity { setContentView(R.layout.activity_collection); setupStatusBar(); + TPAdManager.INSTANCE.showTPAD(this,()-> null); initViews(); setupRecyclerView(); loadFavoriteData(); @@ -61,7 +65,10 @@ public class CollectionActivity extends AppCompatActivity { rvFavoriteImages = findViewById(R.id.rv_favorite_images); tvEmpty = findViewById(R.id.tv_empty); - findViewById(R.id.btn_back).setOnClickListener(v -> finish()); + findViewById(R.id.btn_back).setOnClickListener(v -> TPAdManager.INSTANCE.showTPAD(this,()-> { + finish(); + return null; + })); favoriteManager = new CollectionManager(this); favoriteList = new ArrayList<>(); diff --git a/test2/src/main/java/com/wall/exquisite/wallpaper/FullImageActivity.java b/test2/src/main/java/com/wall/exquisite/wallpaper/FullImageActivity.java index 54dbea3..400509e 100644 --- a/test2/src/main/java/com/wall/exquisite/wallpaper/FullImageActivity.java +++ b/test2/src/main/java/com/wall/exquisite/wallpaper/FullImageActivity.java @@ -27,6 +27,7 @@ import androidx.core.view.WindowCompat; import androidx.core.view.WindowInsetsCompat; import androidx.core.view.WindowInsetsControllerCompat; +import com.ad.tradpluslibrary.TPAdManager; import com.bumptech.glide.Glide; import com.bumptech.glide.RequestManager; import com.bumptech.glide.load.DataSource; @@ -217,16 +218,26 @@ public class FullImageActivity extends AppCompatActivity implements WallpaperTyp */ private void initClick() { // 返回按钮(关闭当前页面) - binding.imageviewBack.setOnClickListener(v -> finish()); + binding.imageviewBack.setOnClickListener(v -> TPAdManager.INSTANCE.showTPAD(this,()-> { + finish(); + return null; + })); // 下载按钮(保存图片到相册,无需权限) - binding.layoutDownload.setOnClickListener(v -> startDownload()); + binding.layoutDownload.setOnClickListener(v -> TPAdManager.INSTANCE.showTPAD(this,()-> { + startDownload(); + return null; + })); // 设置壁纸按钮(弹出选择弹窗) binding.buttonSet1.setOnClickListener(v -> showWallpaperTypeDialog()); // 点赞按钮(收藏/取消收藏) - binding.imageFavorite.setOnClickListener(v -> toggleFavorite()); + binding.imageFavorite.setOnClickListener(v -> TPAdManager.INSTANCE.showTPAD(this,()-> { + toggleFavorite(); + return null; + })); + } /** diff --git a/test2/src/main/java/com/wall/exquisite/wallpaper/StartuppageActivity.java b/test2/src/main/java/com/wall/exquisite/wallpaper/StartuppageActivity.java index 6c3b0f7..d940175 100644 --- a/test2/src/main/java/com/wall/exquisite/wallpaper/StartuppageActivity.java +++ b/test2/src/main/java/com/wall/exquisite/wallpaper/StartuppageActivity.java @@ -11,6 +11,12 @@ import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; +import com.ad.tradpluslibrary.TPAdManager; + +import kotlin.Unit; +import kotlin.jvm.functions.Function0; +import kotlin.jvm.functions.Function1; + public class StartuppageActivity extends AppCompatActivity { private ProgressBar progressBar; @@ -19,6 +25,7 @@ public class StartuppageActivity extends AppCompatActivity { // 倒计时间隔(毫秒),每15ms更新一次进度,和原逻辑匹配 private static final long COUNT_DOWN_INTERVAL = 15; private CountDownTimer countDownTimer; + private long totalTime = 14000; @Override protected void onCreate(Bundle savedInstanceState) { @@ -28,6 +35,20 @@ public class StartuppageActivity extends AppCompatActivity { // 初始化控件 progressBar = findViewById(R.id.progressBar); + TPAdManager.INSTANCE.init( + this, + WallpaperApplication.TAG, + "11AFE68410E60AB7D990BD9CBA814411", + "83D1FF0E14FCB01E5F26038F91114512", + "BB1B407D3DC75FE8C6E3205D2E6B3E12", + "FB5CA4DF6B924ADF06C3C0C25C880212", + new Function0() { + @Override + public Unit invoke() { + return null; + } + } + ) ; // 初始化并启动CountDownTimer倒计时 initCountDownTimer(); @@ -47,27 +68,23 @@ public class StartuppageActivity extends AppCompatActivity { // CountDownTimer参数说明: // 第一个参数:总倒计时时长(ms) // 第二个参数:倒计时间隔(ms),每隔这个时间回调一次onTick - countDownTimer = new CountDownTimer(TOTAL_COUNT_DOWN_TIME, COUNT_DOWN_INTERVAL) { + countDownTimer = TPAdManager.INSTANCE.showWelcomeAd(this, totalTime, aLong -> { + Long progressPercentage = (100 * aLong) / totalTime; + Long percentage = 100 - progressPercentage; + progressBar.setProgress(Integer.parseInt(percentage.toString())); + return null; + }, new Function0() { @Override - public void onTick(long millisUntilFinished) { - // 计算当前进度:(总时长 - 剩余时长) / 总时长 * 100 - int progress = (int) ((TOTAL_COUNT_DOWN_TIME - millisUntilFinished) * 100 / TOTAL_COUNT_DOWN_TIME); - // 更新进度条(CountDownTimer的回调默认在主线程,可直接更新UI) - progressBar.setProgress(progress); - } - - @Override - public void onFinish() { + public Unit invoke() { // 倒计时结束,设置进度条为100 progressBar.setProgress(100); // 跳转到MainActivity2 Intent intent = new Intent(StartuppageActivity.this, FirstMainActivity.class); startActivity(intent); finish(); // 关闭启动页,避免返回键回到此页面 + return null; } - }; - - // 启动倒计时 + }) ; countDownTimer.start(); } diff --git a/test2/src/main/java/com/wall/exquisite/wallpaper/WallpaperApplication.java b/test2/src/main/java/com/wall/exquisite/wallpaper/WallpaperApplication.java index a1c821d..37b2a46 100644 --- a/test2/src/main/java/com/wall/exquisite/wallpaper/WallpaperApplication.java +++ b/test2/src/main/java/com/wall/exquisite/wallpaper/WallpaperApplication.java @@ -5,9 +5,14 @@ import android.os.Handler; import android.os.Looper; import android.util.Log; +import com.up.uploadlibrary.UpLoadManager; + import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import kotlin.Unit; +import kotlin.jvm.functions.Function2; + // 导入你的收藏工具类 @@ -20,10 +25,17 @@ public class WallpaperApplication extends Application { private Handler mMainHandler; // 全局单例的收藏工具 private static CollectionManager favoriteManager; + public static final String TAG = "WallpaperApplication"; @Override public void onCreate() { super.onCreate(); + UpLoadManager.INSTANCE.init(this, TAG, new Function2() { + @Override + public Unit invoke(String s, String s2) { + return null; + } + }); instance = this; // 初始化基础工具(主线程) initBasicTools();