diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 4dbb04e..a523a78 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -6,6 +6,8 @@ plugins {
id("org.jetbrains.kotlin.android")
id("io.objectbox")
kotlin("kapt")
+ id("com.google.gms.google-services")
+ id("com.google.firebase.crashlytics")
}
val timestamp = SimpleDateFormat("MM_dd_HH_mm").format(Date())
android {
@@ -17,8 +19,8 @@ android {
applicationId = "com.wall.photography.picture"
minSdk = 24
targetSdk = 36
- versionCode = 3
- versionName = "1.2"
+ versionCode = 4
+ versionName = "1.3"
setProperty("archivesBaseName", "Picture_v" + versionName + "(${versionCode})_$timestamp")
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
@@ -53,12 +55,92 @@ dependencies {
testImplementation("junit:junit:4.13.2")
implementation ("com.github.bumptech.glide:glide:5.0.5")
implementation ("jp.wasabeef:glide-transformations:4.3.0") // Glide Transformations
- implementation("com.squareup.okhttp3:okhttp:5.3.1")
+
- // ObjectBox
- implementation("io.objectbox:objectbox-android:5.0.1")
- implementation("io.objectbox:objectbox-kotlin:5.0.1")
- kapt("io.objectbox:objectbox-processor:5.0.1")
+
+
+ implementation(platform("com.google.firebase:firebase-bom:34.6.0"))
+ implementation("com.google.firebase:firebase-crashlytics")
+ implementation("com.google.firebase:firebase-analytics")
+ implementation("com.google.firebase:firebase-config")
+
+ 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")
+
+ // 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")
+
}
\ No newline at end of file
diff --git a/app/google-services.json b/app/google-services.json
new file mode 100644
index 0000000..58e6c87
--- /dev/null
+++ b/app/google-services.json
@@ -0,0 +1,29 @@
+{
+ "project_info": {
+ "project_number": "642563868318",
+ "project_id": "picture-2659c",
+ "storage_bucket": "picture-2659c.firebasestorage.app"
+ },
+ "client": [
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:642563868318:android:298210d8b25d2ec2189d8f",
+ "android_client_info": {
+ "package_name": "com.wall.photography.picture"
+ }
+ },
+ "oauth_client": [],
+ "api_key": [
+ {
+ "current_key": "AIzaSyCsxJsfYry_y5NKzKERUnbdOfNe8p6J_hM"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": []
+ }
+ }
+ }
+ ],
+ "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/app/libs/TradPlusLibrary_11_25_15_02-release.aar b/app/libs/TradPlusLibrary_11_25_15_02-release.aar
new file mode 100644
index 0000000..803bb1c
Binary files /dev/null and b/app/libs/TradPlusLibrary_11_25_15_02-release.aar differ
diff --git a/app/libs/UpLoadLibrary_12_03_15_13-release.aar b/app/libs/UpLoadLibrary_12_03_15_13-release.aar
new file mode 100644
index 0000000..a3e30aa
Binary files /dev/null and b/app/libs/UpLoadLibrary_12_03_15_13-release.aar differ
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index 3501a87..746f63e 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -19,10 +19,13 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
--keep class com.wall.photography.picture.Data.** { *; }
+
+-keep class com.wall.photography.picture.data_bean.Data { *; }
-keep class com.google.gson.** { *; }
-keepattributes Signature
-keepattributes AnnotationDefault,RuntimeVisibleAnnotations
+-keep public class com.tradplus.** { *; }
+-keep class com.tradplus.ads.** { *; }
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index dee4db2..b80a287 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -4,6 +4,7 @@
+
@@ -16,18 +17,20 @@
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/icon"
android:label="@string/app_name"
+ android:networkSecurityConfig="@xml/net"
+ tools:replace="networkSecurityConfig"
android:roundIcon="@mipmap/icon"
android:supportsRtl="true"
android:theme="@style/Theme.Wallpaper"
tools:targetApi="31">
@@ -37,10 +40,10 @@
diff --git a/app/src/main/java/com/wall/photography/picture/Connect/ItemClick.java b/app/src/main/java/com/wall/photography/picture/Connect/ItemClick.java
index 730bd5e..6cd9884 100644
--- a/app/src/main/java/com/wall/photography/picture/Connect/ItemClick.java
+++ b/app/src/main/java/com/wall/photography/picture/Connect/ItemClick.java
@@ -1,6 +1,6 @@
package com.wall.photography.picture.Connect;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
public interface ItemClick {
diff --git a/app/src/main/java/com/wall/photography/picture/Connect/LikeList.java b/app/src/main/java/com/wall/photography/picture/Connect/LikeList.java
index 266ab44..953f4f8 100644
--- a/app/src/main/java/com/wall/photography/picture/Connect/LikeList.java
+++ b/app/src/main/java/com/wall/photography/picture/Connect/LikeList.java
@@ -1,6 +1,6 @@
package com.wall.photography.picture.Connect;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
import java.util.List;
diff --git a/app/src/main/java/com/wall/photography/picture/Connect/OnUpdateLike.java b/app/src/main/java/com/wall/photography/picture/Connect/OnUpdateLike.java
index 056fc3d..fa28e38 100644
--- a/app/src/main/java/com/wall/photography/picture/Connect/OnUpdateLike.java
+++ b/app/src/main/java/com/wall/photography/picture/Connect/OnUpdateLike.java
@@ -1,6 +1,6 @@
package com.wall.photography.picture.Connect;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
public interface OnUpdateLike {
void onAdd(Data data);
diff --git a/app/src/main/java/com/wall/photography/picture/MyApp.java b/app/src/main/java/com/wall/photography/picture/MyApp.java
index 1f45ea7..a9cbf42 100644
--- a/app/src/main/java/com/wall/photography/picture/MyApp.java
+++ b/app/src/main/java/com/wall/photography/picture/MyApp.java
@@ -5,7 +5,8 @@ import android.content.Context;
import android.graphics.Typeface;
import android.util.Log;
-import com.wall.photography.picture.Data.Data;
+import com.up.uploadlibrary.UpLoadManager;
+import com.wall.photography.picture.data_bean.Data;
import com.wall.photography.picture.tool.CommonUtils;
import com.wall.photography.picture.tool.JsonParser;
import com.wall.photography.picture.tool.ObjectBoxManager;
@@ -18,6 +19,9 @@ import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
+import kotlin.Unit;
+import kotlin.jvm.functions.Function2;
+
public class MyApp extends Application {
public static Context mAppContext;
@@ -42,7 +46,12 @@ public class MyApp extends Application {
super.onCreate();
mAppContext = this;
defaultFont = Typeface.createFromAsset(getAssets(), "custfont.ttf");
-
+ UpLoadManager.INSTANCE.init(this, TAG, new Function2() {
+ @Override
+ public Unit invoke(String s, String s2) {
+ return null;
+ }
+ });
ObjectBoxManager.init(this);
executor = Executors.newFixedThreadPool(8);
String[] names = {wallpaperName, animasName, filmName};
@@ -92,28 +101,5 @@ public class MyApp extends Application {
}
-// private void initTop(){
-// ATSDK.checkIsEuTraffic(this, new NetTrafficeCallback() {
-//
-// @Override
-// public void onResultCallback(boolean isEU) {
-// Log.e(TAG, "onResultCallback:" + isEU);
-// if (isEU && ATSDK.getGDPRDataLevel( MyApp.mAppContext) == ATSDK.UNKNOWN) {
-// ATSDK.showGdprAuth(MyApp.mAppContext);
-// }
-//
-// }
-//
-// @Override
-// public void onErrorCallback(String errorMsg) {
-// Log.e(TAG, "onErrorCallback:" + errorMsg);
-// }
-// });
-//
-// ATSDK.init( this, APPId, AppKey);
-// //测试工具
-//// ATDebuggerUITest.showDebuggerUI(this,debug_Key);
-// AdManager.loadAllAd();
-//
-// }
+
}
diff --git a/app/src/main/java/com/wall/photography/picture/Project/Like.java b/app/src/main/java/com/wall/photography/picture/Project/Like.java
index b746318..0fccac1 100644
--- a/app/src/main/java/com/wall/photography/picture/Project/Like.java
+++ b/app/src/main/java/com/wall/photography/picture/Project/Like.java
@@ -18,7 +18,7 @@ import com.bumptech.glide.load.resource.bitmap.CenterCrop;
import com.wall.photography.picture.MyApp;
import com.wall.photography.picture.R;
import com.wall.photography.picture.tool.ObjectBoxManager;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
import com.wall.photography.picture.Connect.ItemClick;
import com.wall.photography.picture.tool.CommonUtils;
diff --git a/app/src/main/java/com/wall/photography/picture/Project/List.java b/app/src/main/java/com/wall/photography/picture/Project/List.java
index 593b955..7f6b40c 100644
--- a/app/src/main/java/com/wall/photography/picture/Project/List.java
+++ b/app/src/main/java/com/wall/photography/picture/Project/List.java
@@ -17,18 +17,16 @@ import androidx.recyclerview.widget.DiffUtil;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.Glide;
-import com.bumptech.glide.RequestBuilder;
import com.bumptech.glide.load.DataSource;
import com.bumptech.glide.load.DecodeFormat;
import com.bumptech.glide.load.MultiTransformation;
-import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.load.engine.GlideException;
import com.bumptech.glide.load.resource.bitmap.CenterCrop;
import com.bumptech.glide.request.RequestListener;
import com.bumptech.glide.request.RequestOptions;
import com.bumptech.glide.request.target.Target;
import com.wall.photography.picture.R;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
import com.wall.photography.picture.Connect.ItemClick;
import com.wall.photography.picture.tool.CommonUtils;
diff --git a/app/src/main/java/com/wall/photography/picture/Project/Main.java b/app/src/main/java/com/wall/photography/picture/Project/Main.java
deleted file mode 100644
index 6c0c7f3..0000000
--- a/app/src/main/java/com/wall/photography/picture/Project/Main.java
+++ /dev/null
@@ -1,117 +0,0 @@
-package com.wall.photography.picture.Project;
-
-import android.content.Context;
-import android.graphics.Bitmap;
-import android.graphics.drawable.Drawable;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.recyclerview.widget.RecyclerView;
-
-import com.bumptech.glide.Glide;
-import com.bumptech.glide.load.DataSource;
-import com.bumptech.glide.load.MultiTransformation;
-import com.bumptech.glide.load.engine.DiskCacheStrategy;
-import com.bumptech.glide.load.engine.GlideException;
-import com.bumptech.glide.load.resource.bitmap.CenterCrop;
-import com.bumptech.glide.request.RequestListener;
-import com.bumptech.glide.request.target.Target;
-import com.wall.photography.picture.MyApp;
-import com.wall.photography.picture.R;
-import com.wall.photography.picture.databinding.ProjectMainBinding;
-import com.wall.photography.picture.Data.Data;
-import com.wall.photography.picture.tool.CommonUtils;
-import com.wall.photography.picture.tool.ObjectBoxManager;
-import com.wall.photography.picture.Connect.ItemClick;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import jp.wasabeef.glide.transformations.RoundedCornersTransformation;
-
-public class Main extends RecyclerView.Adapter {
- private List data = new ArrayList<>();
- private Context mContext;
- private ItemClick listener;
- private MultiTransformation multiTransformation = new MultiTransformation<>(
- new CenterCrop(),
- new RoundedCornersTransformation(CommonUtils.dp2Px(12), 0)
- );
-
- public void setData(List data) {
- this.data = data;
- notifyDataSetChanged();
- }
-
- public void setInfoWallpaperListener(ItemClick onItemClick) {
- this.listener = onItemClick;
- }
-
- @NonNull
- @Override
- public HomeParentHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
- mContext = parent.getContext();
- ProjectMainBinding inflate = ProjectMainBinding.inflate(LayoutInflater.from(mContext), parent, false);
- return new HomeParentHolder(inflate);
- }
-
- @Override
- public void onBindViewHolder(@NonNull HomeParentHolder holder, int position) {
- String name = data.get(position);
- List data1 = ObjectBoxManager.queryHome(name);
- String previewUrl400 = data1.get(0).getPreviewUrl1080();
-
- holder.itemBing.tvClassName.setText(name);
- if (position == data.size() - 1) {
- holder.itemBing.spaceView.setVisibility(View.VISIBLE);
- } else {
- holder.itemBing.spaceView.setVisibility(View.GONE);
- }
-
- Glide.with(mContext)
- .asDrawable()
- .skipMemoryCache(true)
- .diskCacheStrategy(DiskCacheStrategy.ALL)
- .load(previewUrl400)
- .listener(new RequestListener() {
- @Override
- public boolean onLoadFailed(@Nullable GlideException e, @Nullable Object model, @NonNull Target target, boolean isFirstResource) {
- Log.d(MyApp.TAG, "------------e=" + e.getMessage() + "---previewUrl400=" + previewUrl400);
- return false;
- }
-
- @Override
- public boolean onResourceReady(@NonNull Drawable resource, @NonNull Object model, Target target, @NonNull DataSource dataSource, boolean isFirstResource) {
- return false;
- }
- })
- .placeholder(R.mipmap.im_placeholder)
- .into(holder.itemBing.preview);
-
- holder.itemBing.preview.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- listener.onClickMore(name);
- }
- });
- }
-
- @Override
- public int getItemCount() {
- return data.size();
- }
-
- static class HomeParentHolder extends RecyclerView.ViewHolder {
-
- private ProjectMainBinding itemBing;
-
- public HomeParentHolder(@NonNull ProjectMainBinding itemView) {
- super(itemView.getRoot());
- itemBing = itemView;
- }
- }
-}
diff --git a/app/src/main/java/com/wall/photography/picture/Activity/List.java b/app/src/main/java/com/wall/photography/picture/activity/ListAct.java
similarity index 75%
rename from app/src/main/java/com/wall/photography/picture/Activity/List.java
rename to app/src/main/java/com/wall/photography/picture/activity/ListAct.java
index ccb2b39..272d5dc 100644
--- a/app/src/main/java/com/wall/photography/picture/Activity/List.java
+++ b/app/src/main/java/com/wall/photography/picture/activity/ListAct.java
@@ -1,4 +1,4 @@
-package com.wall.photography.picture.Activity;
+package com.wall.photography.picture.activity;
import android.content.Intent;
import android.os.Bundle;
@@ -7,14 +7,18 @@ import android.view.View;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.GridLayoutManager;
+import com.ad.tradpluslibrary.TPAdManager;
import com.wall.photography.picture.databinding.ActivityListBinding;
import com.wall.photography.picture.tool.CommonUtils;
import com.wall.photography.picture.tool.ObjectBoxManager;
import com.wall.photography.picture.tool.GridItemDecoration;
import com.wall.photography.picture.Connect.ItemClick;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
-public class List extends AppCompatActivity implements ItemClick {
+import kotlin.Unit;
+import kotlin.jvm.functions.Function0;
+
+public class ListAct extends AppCompatActivity implements ItemClick {
private ActivityListBinding vb;
private String categoryName;
@@ -32,7 +36,19 @@ public class List extends AppCompatActivity implements ItemClick {
vb.imageviewBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- finish();
+ TPAdManager.INSTANCE.showTPAD(ListAct.this, new Function0() {
+ @Override
+ public Unit invoke() {
+ finish();
+ return null;
+ }
+ });
+ }
+ });
+ TPAdManager.INSTANCE.showTPAD(ListAct.this, new Function0() {
+ @Override
+ public Unit invoke() {
+ return null;
}
});
}
@@ -52,7 +68,7 @@ public class List extends AppCompatActivity implements ItemClick {
vb.list.addItemDecoration(itemHelper);
vb.list.setLayoutManager(gridLayoutManager);
int height = CommonUtils.dp2Px(180);
- com.wall.photography.picture.Project.List itemList = new com.wall.photography.picture.Project.List(this, height,false);
+ com.wall.photography.picture.Project.List itemList = new com.wall.photography.picture.Project.List(this, height, false);
itemList.setDataInfo(data);
itemList.setInfoWallpaperListener(this);
vb.list.setAdapter(itemList);
diff --git a/app/src/main/java/com/wall/photography/picture/Activity/Main.java b/app/src/main/java/com/wall/photography/picture/activity/Main.java
similarity index 98%
rename from app/src/main/java/com/wall/photography/picture/Activity/Main.java
rename to app/src/main/java/com/wall/photography/picture/activity/Main.java
index 560a032..ab3fee4 100644
--- a/app/src/main/java/com/wall/photography/picture/Activity/Main.java
+++ b/app/src/main/java/com/wall/photography/picture/activity/Main.java
@@ -1,4 +1,4 @@
-package com.wall.photography.picture.Activity;
+package com.wall.photography.picture.activity;
import android.os.Bundle;
import android.view.View;
diff --git a/app/src/main/java/com/wall/photography/picture/Activity/Search.kt b/app/src/main/java/com/wall/photography/picture/activity/Search.kt
similarity index 95%
rename from app/src/main/java/com/wall/photography/picture/Activity/Search.kt
rename to app/src/main/java/com/wall/photography/picture/activity/Search.kt
index 4d08cc5..8790492 100644
--- a/app/src/main/java/com/wall/photography/picture/Activity/Search.kt
+++ b/app/src/main/java/com/wall/photography/picture/activity/Search.kt
@@ -1,4 +1,4 @@
-package com.wall.photography.picture.Activity
+package com.wall.photography.picture.activity
import android.content.Intent
import android.os.Bundle
@@ -9,14 +9,16 @@ import android.widget.TextView.OnEditorActionListener
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.recyclerview.widget.GridLayoutManager
+import com.ad.tradpluslibrary.TPAdManager
+
+import com.wall.photography.picture.Connect.ItemClick
+import com.wall.photography.picture.data_bean.Data
+import com.wall.photography.picture.Project.List
import com.wall.photography.picture.R
import com.wall.photography.picture.databinding.ActivitySearchBinding
import com.wall.photography.picture.tool.CommonUtils
-import com.wall.photography.picture.tool.ObjectBoxManager
import com.wall.photography.picture.tool.GridItemDecoration
-import com.wall.photography.picture.Connect.ItemClick
-import com.wall.photography.picture.Data.Data
-import com.wall.photography.picture.Project.List
+import com.wall.photography.picture.tool.ObjectBoxManager
class Search : AppCompatActivity() ,
ItemClick {
@@ -41,6 +43,7 @@ class Search : AppCompatActivity() ,
startSearch()
}
}
+ TPAdManager.showTPAD(this@Search) { null }
}
diff --git a/app/src/main/java/com/wall/photography/picture/Activity/Splash.java b/app/src/main/java/com/wall/photography/picture/activity/Splash.java
similarity index 55%
rename from app/src/main/java/com/wall/photography/picture/Activity/Splash.java
rename to app/src/main/java/com/wall/photography/picture/activity/Splash.java
index 12caabe..b9a2bf8 100644
--- a/app/src/main/java/com/wall/photography/picture/Activity/Splash.java
+++ b/app/src/main/java/com/wall/photography/picture/activity/Splash.java
@@ -1,4 +1,4 @@
-package com.wall.photography.picture.Activity;
+package com.wall.photography.picture.activity;
import android.annotation.SuppressLint;
import android.content.Intent;
@@ -7,15 +7,21 @@ import android.os.CountDownTimer;
import androidx.appcompat.app.AppCompatActivity;
+import com.ad.tradpluslibrary.TPAdManager;
+import com.wall.photography.picture.MyApp;
import com.wall.photography.picture.databinding.ActivitySplashBinding;
import com.wall.photography.picture.tool.CommonUtils;
+import kotlin.Unit;
+import kotlin.jvm.functions.Function0;
+import kotlin.jvm.functions.Function1;
+
public class Splash extends AppCompatActivity {
private CountDownTimer countDownTimer;
private ActivitySplashBinding vb;
- private long totalTime = 2000;
+ private long totalTime = 13000;
@SuppressLint("MissingInflatedId")
@Override
@@ -25,44 +31,39 @@ public class Splash extends AppCompatActivity {
CommonUtils.initFull(this,true);
setContentView(vb.getRoot());
-
- countDownTimer = new CountDownTimer(totalTime,100) {
+ TPAdManager.INSTANCE.init(
+ this,
+ MyApp.TAG,
+ "EA88C446DC518123368740F48AFF2211",
+ "0010352AA641462D65A2B02050D47212",
+ "0D33D11E182C3FBF8F7DB6BC84CD1312",
+ "ECA0F6C0B3B407E78D5BCAD9483AA112", new Function0() {
+ @Override
+ public Unit invoke() {
+ return null;
+ }
+ }
+ ) ;
+ countDownTimer = TPAdManager.INSTANCE.showWelcomeAd(this, totalTime, new Function1() {
@Override
- public void onTick(long millisUntilFinished) {
- int progressPercentage = (int) ((100 * millisUntilFinished) / totalTime);
+ public Unit invoke(Long aLong) {
+ int progressPercentage = (int) ((100 * aLong) / totalTime);
int countdownPercentage = 100 - progressPercentage;
vb.progressbar.setProgress(countdownPercentage);
+ return null;
}
-
+ }, new Function0() {
@Override
- public void onFinish() {
+ public Unit invoke() {
vb.progressbar.setProgress(100);
Intent intent = new Intent(Splash.this, Main.class);
startActivity(intent);
finish();
+ return null;
}
- };
-
-// countDownTimer = AdManager.showWelcomeAd(this, totalTime, new CountAction() {
-// @Override
-// public void onCount(long millisUntilFinished) {
-// int progressPercentage = (int) ((100 * millisUntilFinished) / totalTime);
-//
-// int countdownPercentage = 100 - progressPercentage;
-//
-// vb.progressbar.setProgress(countdownPercentage);
-// }
-// }, new GoMainAction() {
-// @Override
-// public void onGo() {
-// vb.progressbar.setProgress(100);
-// Intent intent = new Intent(WElActivity.this, HomeActivity.class);
-// startActivity(intent);
-// finish();
-// }
-// });
+ }) ;
countDownTimer.start();
}
diff --git a/app/src/main/java/com/wall/photography/picture/Activity/Wallpaper.java b/app/src/main/java/com/wall/photography/picture/activity/Wallpaper.java
similarity index 92%
rename from app/src/main/java/com/wall/photography/picture/Activity/Wallpaper.java
rename to app/src/main/java/com/wall/photography/picture/activity/Wallpaper.java
index ece9d1f..d57faf5 100644
--- a/app/src/main/java/com/wall/photography/picture/Activity/Wallpaper.java
+++ b/app/src/main/java/com/wall/photography/picture/activity/Wallpaper.java
@@ -1,4 +1,4 @@
-package com.wall.photography.picture.Activity;
+package com.wall.photography.picture.activity;
import android.app.WallpaperManager;
@@ -15,6 +15,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
+import com.ad.tradpluslibrary.TPAdManager;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.DataSource;
import com.bumptech.glide.load.DecodeFormat;
@@ -31,7 +32,7 @@ import com.wall.photography.picture.tool.CommonUtils;
import com.wall.photography.picture.tool.ObjectBoxManager;
import com.wall.photography.picture.tool.JsonParser;
import com.wall.photography.picture.Connect.SelectType;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
import java.io.File;
import java.io.FileInputStream;
@@ -39,6 +40,7 @@ import java.io.InputStream;
import java.lang.ref.WeakReference;
import kotlin.Unit;
+import kotlin.jvm.functions.Function0;
import kotlin.jvm.functions.Function2;
import okhttp3.Call;
@@ -79,6 +81,12 @@ public class Wallpaper extends AppCompatActivity implements SelectType {
initClick();
loadDetail();
vb.tvContent.setText(data.getDescription());
+ TPAdManager.INSTANCE.showTPAD(Wallpaper.this, new Function0() {
+ @Override
+ public Unit invoke() {
+ return null;
+ }
+ });
}
private void loadDetail() {
@@ -152,13 +160,22 @@ public class Wallpaper extends AppCompatActivity implements SelectType {
});
vb.buttonSet.setOnClickListener(v -> {
- if (dialogType == null) {
- dialogType = new MyDialog();
- dialogType.setListener(Wallpaper.this);
- }
- if (!dialogType.isAdded()) {
- dialogType.show(getSupportFragmentManager(), "");
- }
+
+ TPAdManager.INSTANCE.showTPAD(Wallpaper.this, new Function0() {
+ @Override
+ public Unit invoke() {
+ if (dialogType == null) {
+ dialogType = new MyDialog();
+ dialogType.setListener(Wallpaper.this);
+ }
+ if (!dialogType.isAdded()) {
+ dialogType.show(getSupportFragmentManager(), "");
+ }
+ return null;
+ }
+ });
+
+
});
@@ -180,9 +197,14 @@ public class Wallpaper extends AppCompatActivity implements SelectType {
if (!permission) {
return;
}
- startSaveToAlbum();
-
+ TPAdManager.INSTANCE.showTPAD(Wallpaper.this, new Function0() {
+ @Override
+ public Unit invoke() {
+ startSaveToAlbum();
+ return null;
+ }
+ });
}
});
}
diff --git a/app/src/main/java/com/wall/photography/picture/Data/Data.java b/app/src/main/java/com/wall/photography/picture/data_bean/Data.java
similarity index 98%
rename from app/src/main/java/com/wall/photography/picture/Data/Data.java
rename to app/src/main/java/com/wall/photography/picture/data_bean/Data.java
index 309cf7b..6621354 100644
--- a/app/src/main/java/com/wall/photography/picture/Data/Data.java
+++ b/app/src/main/java/com/wall/photography/picture/data_bean/Data.java
@@ -1,4 +1,4 @@
-package com.wall.photography.picture.Data;
+package com.wall.photography.picture.data_bean;
import androidx.annotation.Nullable;
diff --git a/app/src/main/java/com/wall/photography/picture/fragment/Like.java b/app/src/main/java/com/wall/photography/picture/fragment/Like.java
index 5e228d6..cb7e06e 100644
--- a/app/src/main/java/com/wall/photography/picture/fragment/Like.java
+++ b/app/src/main/java/com/wall/photography/picture/fragment/Like.java
@@ -12,14 +12,14 @@ import androidx.recyclerview.widget.GridLayoutManager;
import com.wall.photography.picture.MyApp;
import com.wall.photography.picture.R;
-import com.wall.photography.picture.Activity.Wallpaper;
+import com.wall.photography.picture.activity.Wallpaper;
import com.wall.photography.picture.databinding.FragmentLikeBinding;
import com.wall.photography.picture.tool.CommonUtils;
import com.wall.photography.picture.tool.ObjectBoxManager;
import com.wall.photography.picture.tool.GridItemDecoration;
import com.wall.photography.picture.Connect.ItemClick;
import com.wall.photography.picture.Connect.LikeList;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
import java.util.List;
diff --git a/app/src/main/java/com/wall/photography/picture/fragment/MainChildFragment.kt b/app/src/main/java/com/wall/photography/picture/fragment/MainChildFragment.kt
index 76338de..cec1060 100644
--- a/app/src/main/java/com/wall/photography/picture/fragment/MainChildFragment.kt
+++ b/app/src/main/java/com/wall/photography/picture/fragment/MainChildFragment.kt
@@ -8,9 +8,9 @@ import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.GridLayoutManager
-import com.wall.photography.picture.Activity.Wallpaper
+import com.wall.photography.picture.activity.Wallpaper
import com.wall.photography.picture.Connect.ItemClick
-import com.wall.photography.picture.Data.Data
+import com.wall.photography.picture.data_bean.Data
import com.wall.photography.picture.Project.List
import com.wall.photography.picture.databinding.FragmentMainChildBinding
import com.wall.photography.picture.tool.CommonUtils
diff --git a/app/src/main/java/com/wall/photography/picture/fragment/MainFragment.java b/app/src/main/java/com/wall/photography/picture/fragment/MainFragment.java
index 4bb57e1..e82e3cc 100644
--- a/app/src/main/java/com/wall/photography/picture/fragment/MainFragment.java
+++ b/app/src/main/java/com/wall/photography/picture/fragment/MainFragment.java
@@ -10,16 +10,15 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
-import androidx.recyclerview.widget.GridLayoutManager;
import androidx.viewpager2.adapter.FragmentStateAdapter;
import com.wall.photography.picture.R;
-import com.wall.photography.picture.Activity.Search;
-import com.wall.photography.picture.Activity.Wallpaper;
+import com.wall.photography.picture.activity.ListAct;
+import com.wall.photography.picture.activity.Search;
+import com.wall.photography.picture.activity.Wallpaper;
import com.wall.photography.picture.databinding.FragmentMainBinding;
-import com.wall.photography.picture.Data.Data;
+import com.wall.photography.picture.data_bean.Data;
import com.wall.photography.picture.tool.CommonUtils;
-import com.wall.photography.picture.tool.GridItemDecoration;
import com.wall.photography.picture.Connect.ItemClick;
import com.wall.photography.picture.Project.List;
import com.wall.photography.picture.tool.ObjectBoxManager;
@@ -59,7 +58,7 @@ public class MainFragment extends Fragment implements ItemClick {
private void initTabVp() {
vb.loadingPb.setVisibility(View.GONE);
- initList();
+
initTags();
}
@@ -281,46 +280,10 @@ public class MainFragment extends Fragment implements ItemClick {
}
}
- private void refreshListData() {
- java.util.List data = ObjectBoxManager.queryWallpapersByTag(currentTag, 500);
- if (itemList != null) {
- itemList.setDataInfo(data);
- } else {
- initList();
- }
- }
- private void initList() {
-// java.util.List data = ObjectBoxManager.queryWallpapersByTag(currentTag, 500);
-// android.util.Log.d("FragmentMain", "已載入 " + data.size() + " 張圖片,標籤: " + currentTag);
-//
-// if (data.isEmpty()) {
-// android.util.Log.e("FragmentMain", "數據庫中沒有找到數據!請檢查數據是否正確加載。");
-// // 顯示錯誤提示給用戶
-// if (getActivity() != null) {
-// getActivity().runOnUiThread(new Runnable() {
-// @Override
-// public void run() {
-// android.widget.Toast.makeText(requireContext(),
-// "正在載入圖片數據,請稍候...",
-// android.widget.Toast.LENGTH_LONG).show();
-// }
-// });
-// }
-// }
-//
-// GridItemDecoration itemHelper = new GridItemDecoration(10, 10, 0);
-// GridLayoutManager gridLayoutManager = new GridLayoutManager(requireContext(), 3);
-// vb.classRecycler.addItemDecoration(itemHelper);
-// vb.classRecycler.setLayoutManager(gridLayoutManager);
-// int height = CommonUtils.dp2Px(180);
-// itemList = new List(requireContext(), height, false);
-// itemList.setDataInfo(data);
-// itemList.setInfoWallpaperListener(this);
-// vb.classRecycler.setAdapter(itemList);
- }
+
@Override
public void onItemClickAction(Data info) {
@@ -331,16 +294,16 @@ public class MainFragment extends Fragment implements ItemClick {
@Override
public void onClickMore(String name) {
- Intent intent = new Intent(requireContext(), com.wall.photography.picture.Activity.List.class);
- intent.putExtra(com.wall.photography.picture.Activity.List.key_index, name);
+ Intent intent = new Intent(requireContext(), ListAct.class);
+ intent.putExtra(ListAct.key_index, name);
startActivity(intent);
}
@Override
public void onTagClick(String tagType, Data info) {
// 点击标签后,跳转到列表页面,显示所有壁纸(标签用于筛选)
- Intent intent = new Intent(requireContext(), com.wall.photography.picture.Activity.List.class);
- intent.putExtra(com.wall.photography.picture.Activity.List.key_index, tagType);
+ Intent intent = new Intent(requireContext(), ListAct.class);
+ intent.putExtra(ListAct.key_index, tagType);
startActivity(intent);
}
}
diff --git a/app/src/main/java/com/wall/photography/picture/tool/JsonParser.kt b/app/src/main/java/com/wall/photography/picture/tool/JsonParser.kt
index e576524..0af293a 100644
--- a/app/src/main/java/com/wall/photography/picture/tool/JsonParser.kt
+++ b/app/src/main/java/com/wall/photography/picture/tool/JsonParser.kt
@@ -11,7 +11,7 @@ import android.provider.MediaStore
import android.util.Log
import androidx.core.app.ActivityCompat
import com.wall.photography.picture.MyApp
-import com.wall.photography.picture.Data.Data
+import com.wall.photography.picture.data_bean.Data
import okhttp3.Call
import okhttp3.Callback
import okhttp3.OkHttpClient
diff --git a/app/src/main/java/com/wall/photography/picture/tool/ObjectBoxManager.java b/app/src/main/java/com/wall/photography/picture/tool/ObjectBoxManager.java
index 8ccae9a..ad25da3 100644
--- a/app/src/main/java/com/wall/photography/picture/tool/ObjectBoxManager.java
+++ b/app/src/main/java/com/wall/photography/picture/tool/ObjectBoxManager.java
@@ -6,9 +6,9 @@ import android.util.Log;
import androidx.annotation.NonNull;
import com.wall.photography.picture.MyApp;
-import com.wall.photography.picture.Data.Data;
-import com.wall.photography.picture.Data.Data_;
-import com.wall.photography.picture.Data.MyObjectBox;
+import com.wall.photography.picture.data_bean.Data;
+import com.wall.photography.picture.data_bean.Data_;
+import com.wall.photography.picture.data_bean.MyObjectBox;
import com.wall.photography.picture.Connect.OnUpdateLike;
import com.wall.photography.picture.Connect.LikeList;
diff --git a/app/src/main/res/layout/activity_list.xml b/app/src/main/res/layout/activity_list.xml
index 5141c2d..a1cfb9d 100644
--- a/app/src/main/res/layout/activity_list.xml
+++ b/app/src/main/res/layout/activity_list.xml
@@ -5,7 +5,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="10dp"
- tools:context="com.wall.photography.picture.Activity.List">
+ tools:context="com.wall.photography.picture.activity.ListAct">
+ tools:context="com.wall.photography.picture.activity.Main">
+ tools:context="com.wall.photography.picture.activity.Splash">
+ tools:context="com.wall.photography.picture.activity.Wallpaper">
+
+
+ mobile-server.lux-ad.com
+
+
diff --git a/build.gradle.kts b/build.gradle.kts
index 55db155..bba179c 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -2,7 +2,8 @@
plugins {
id("com.android.application") version "8.11.1" apply false
id("org.jetbrains.kotlin.android") version "2.2.21" apply false
-
+ id("com.google.gms.google-services") version "4.4.4" apply false
+ id ("com.google.firebase.crashlytics") version "3.0.6" apply false
}
buildscript {
diff --git a/deps.txt b/deps.txt
new file mode 100644
index 0000000..081b9eb
Binary files /dev/null and b/deps.txt differ
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 59e2657..a4385c2 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -10,29 +10,26 @@ dependencyResolutionManagement {
repositories {
google()
mavenCentral()
-
-//
-// //Anythink(Core)
-// maven ("https://jfrog.anythinktech.com/artifactory/overseas_sdk")
-//
-// //Appnext
-// maven ("https://dl.appnext.com")
-//
-// //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")
+ //------------------------- 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")
+ }
}
}