diff --git a/app/build.gradle.kts b/app/build.gradle.kts index a10cad1..92b637d 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -5,6 +5,8 @@ plugins { alias(libs.plugins.android.application) id("org.jetbrains.kotlin.android") id ("kotlin-kapt") + 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.wp.pretty.wallpapers.selection" minSdk = 23 targetSdk = 34 - versionCode = 3 - versionName = "1.2" + versionCode = 4 + versionName = "1.3" setProperty("archivesBaseName", "Prettywallpapers_v" + versionName + "(${versionCode})_$timestamp") @@ -54,6 +56,10 @@ dependencies { implementation ("io.github.youth5201314:banner:2.2.2") implementation ("com.github.bumptech.glide:glide:4.12.0")//添加网络图片 + implementation(platform("com.google.firebase:firebase-bom:32.3.1")) + implementation("com.google.firebase:firebase-analytics-ktx") + implementation("com.google.firebase:firebase-crashlytics-ktx") + val room_version = "2.6.1" implementation("androidx.room:room-runtime:$room_version") annotationProcessor("androidx.room:room-compiler:$room_version") diff --git a/app/src/main/assets/prank_wallpaer.json b/app/src/main/assets/prank_wallpaer.json index 2b169dc..94cf5d0 100644 --- a/app/src/main/assets/prank_wallpaer.json +++ b/app/src/main/assets/prank_wallpaer.json @@ -808,59 +808,6 @@ } ] }, - { - "name": "cute", - "list": [ - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/24281fc765fce9da4c3d9d86e1e9ccf3.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6af1ac41c0bda2023d5b8268b7e1295b.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b226912c3d378bab354b54d936d1750.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f0b2ca838271879067167fb1e1008253.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c5f5f6bb19c8f2544b16257faa89b5ce.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e4b5929651e8c3e6e93b4ce1ced7038c.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/da8a06281bc51b91973f27f70e44fe07.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/24e865884c6a4c6de18da2ba437604ef.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/820dbda148cb9fa49bfad17ac2d97c83.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1014b0d7339fa900038831b0e7eeba2d.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d0099cf6e53cb3856a7853892d633b84.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cd34b1d80f68ea8d551a46b00b859643.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b2906c0930d922b0dfbd2f0016f4a1ea.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0232278e0c136a9742c41ca66ce54bbe.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4e7a1b1ed3bcf5953a7d69b6c8b4d1b4.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b47b25e43ff2d010c9a030351387558.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cc012cb9ac44034c9435a6ee391712d3.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/98546f85441661c87ff8b0d21293f73c.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/88e64d9c2ee5f11771b65623d2947065.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1b10a1b75057cda81f26654161d5ae1c.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8cad4b00392cc69f8436083ac4687551.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/758a4af001554c71cf4d63e70c8878a7.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d5d39cc3011fc72b50bb6222c17974f3.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f131c7e334156fb1135ad92027de754d.jpeg" - } - ] - }, { "name": "beautiful", "list": [ @@ -968,7 +915,7 @@ ] }, { - "name": "quotes", + "name": "Words", "list": [ { "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ffdee201ab115879fd038a7f529d7d2c.jpeg", @@ -1341,6 +1288,54 @@ { "name": "colorful", "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/24281fc765fce9da4c3d9d86e1e9ccf3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6af1ac41c0bda2023d5b8268b7e1295b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b226912c3d378bab354b54d936d1750.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f0b2ca838271879067167fb1e1008253.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c5f5f6bb19c8f2544b16257faa89b5ce.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e4b5929651e8c3e6e93b4ce1ced7038c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/da8a06281bc51b91973f27f70e44fe07.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/24e865884c6a4c6de18da2ba437604ef.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/820dbda148cb9fa49bfad17ac2d97c83.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1014b0d7339fa900038831b0e7eeba2d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d0099cf6e53cb3856a7853892d633b84.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cd34b1d80f68ea8d551a46b00b859643.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b2906c0930d922b0dfbd2f0016f4a1ea.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0232278e0c136a9742c41ca66ce54bbe.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4e7a1b1ed3bcf5953a7d69b6c8b4d1b4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b47b25e43ff2d010c9a030351387558.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cc012cb9ac44034c9435a6ee391712d3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/98546f85441661c87ff8b0d21293f73c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/88e64d9c2ee5f11771b65623d2947065.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1b10a1b75057cda81f26654161d5ae1c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8cad4b00392cc69f8436083ac4687551.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/758a4af001554c71cf4d63e70c8878a7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d5d39cc3011fc72b50bb6222c17974f3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f131c7e334156fb1135ad92027de754d.jpeg" + }, { "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/668845fe70cd30c376a78f566e4b89c6.jpeg", "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2af2a4d4e9ab05a8ed888fb4a704ee07.jpeg" @@ -2137,30 +2132,6 @@ { "name": "teddy", "list": [ - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/880e2d05ba1385f2de52f7a92719c557.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/de1ef1d5e10ff0d4039dacb557a21406.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/687a9886a5007d029012ac65afc54b6c.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f4d9a30b2f2b2a4cf0c831dff44fd3a8.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/01ce70893e7947731369ef22ff20a9ab.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9d824cc7622e39e0eb9b44ae9514c8db.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0a294e1fe43d84eb8b4b3663dc1c06f7.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e5a191f3207eb6276f01845a68a4f47c.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/498b2956356743dd61bcf43c5e2bdfe5.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/44f01787f33c354865ef2e0235a52bb7.jpeg" - }, - { - "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8739a1033149540124a0c9bf2dca71b2.jpeg", - "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/dd3608457a2915a29de559f59927babc.jpeg" - }, { "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/30448f7b2fe2bcdf037fc3d1fc971751.jpeg", "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/998df3180fbf701806e8fcdff50880fc.jpeg" diff --git a/app/src/main/java/com/example/prettywallpapers/activity/IntoActivity.java b/app/src/main/java/com/example/prettywallpapers/activity/IntoActivity.java index 310a6ce..a8850b0 100644 --- a/app/src/main/java/com/example/prettywallpapers/activity/IntoActivity.java +++ b/app/src/main/java/com/example/prettywallpapers/activity/IntoActivity.java @@ -4,6 +4,7 @@ import android.content.Intent; import android.os.Bundle; import android.os.CountDownTimer; import android.util.Log; +import android.view.View; import androidx.activity.EdgeToEdge; import androidx.appcompat.app.AppCompatActivity; @@ -12,22 +13,39 @@ import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; import com.example.prettywallpapers.R; +import com.example.prettywallpapers.other.CustomProgressBar; import com.example.prettywallpapers.toponad.AdManager; import kotlin.Unit; import kotlin.jvm.functions.Function0; +import kotlin.jvm.functions.Function1; public class IntoActivity extends AppCompatActivity { private CountDownTimer countDownTimer; - private Long tim = 8000L; + private Long tim = 10000L; + private CustomProgressBar customProgressBar; + private float count = 0F; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_into); - countDownTimer = AdManager.showWelcomeAd(IntoActivity.this, tim, new Function0() { + customProgressBar = findViewById(R.id.progressBar); + countDownTimer = AdManager.showWelcomeAd(IntoActivity.this, tim, new Function1() { + @Override + public Unit invoke(Long aLong) { + count = count+1; + + Log.d("------------","------------count="+count); + customProgressBar.setProgress(count); + + + return null; + } + },new Function0() { @Override public Unit invoke() { + customProgressBar.setProgress(100); startMainActivity(); return null; } diff --git a/app/src/main/java/com/example/prettywallpapers/activity/MainActivity.java b/app/src/main/java/com/example/prettywallpapers/activity/MainActivity.java index 8ebcf62..f62d6db 100644 --- a/app/src/main/java/com/example/prettywallpapers/activity/MainActivity.java +++ b/app/src/main/java/com/example/prettywallpapers/activity/MainActivity.java @@ -69,6 +69,7 @@ public class MainActivity extends AppCompatActivity { viewPager2 = findViewById(R.id.view_page_main); viewPager2.setAdapter(new FragmentAdapter(this)); tabLayout = findViewById(R.id.app_table); + viewPager2.setUserInputEnabled(false); TabLayoutMediator tabLayoutMediator = new TabLayoutMediator(tabLayout, viewPager2, new TabLayoutMediator.TabConfigurationStrategy() { @Override public void onConfigureTab(@NonNull TabLayout.Tab tab, int position) { diff --git a/app/src/main/java/com/example/prettywallpapers/other/CustomProgressBar.kt b/app/src/main/java/com/example/prettywallpapers/other/CustomProgressBar.kt new file mode 100644 index 0000000..a5fec60 --- /dev/null +++ b/app/src/main/java/com/example/prettywallpapers/other/CustomProgressBar.kt @@ -0,0 +1,62 @@ +package com.example.prettywallpapers.other + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.LinearGradient +import android.graphics.Paint +import android.graphics.RectF +import android.graphics.Shader +import android.util.AttributeSet +import android.view.View + +class CustomProgressBar(context: Context, attrs: AttributeSet?) : View(context, attrs) { + private var progress = 0f // 当前进度 + private val maxProgress = 100f // 最大进度 + private val progressBarHeight = 20f // 进度条高度 + private val cornerRadius = 10f // 圆角半径 + private val backgroundColor = Color.parseColor("#26FFFFFF") + private val startColor = Color.parseColor("#82A1E1") // 起始颜色 + private val middleColor = Color.parseColor("#C4D1EC") // 中间颜色 + private val endColor = Color.parseColor("#5B8BED") // 结束颜色 + private val paint = Paint() + private val paintTow = Paint() + + init { + paint.style = Paint.Style.FILL + paint.isAntiAlias = true + paintTow.style = Paint.Style.FILL + paintTow.isAntiAlias = true + } + + override fun onDraw(canvas: Canvas) { + super.onDraw(canvas) + // 绘制底色矩形 + paint.shader = null // 重置着色器 + paint.color = backgroundColor + val backgroundRect = RectF(0f, (height / 2 - progressBarHeight / 2), width.toFloat(), (height / 2 + progressBarHeight / 2)) + canvas.drawRoundRect(backgroundRect, cornerRadius, cornerRadius, paint) + + + // 计算进度条的宽度 + val progressBarWidth = (width * progress / maxProgress) + + // 创建颜色渐变对象 + val gradient = LinearGradient(0f, 0f, width.toFloat(), 0f, intArrayOf(startColor, middleColor, endColor), null, Shader.TileMode.CLAMP) + paintTow.shader = gradient + + // 绘制带圆角的进度条矩形 + val rect = RectF(0f, (height / 2 - progressBarHeight / 2), progressBarWidth.toFloat(), (height / 2 + progressBarHeight / 2)) + canvas.drawRoundRect(rect, cornerRadius, cornerRadius, paintTow) + } + + fun getProgress():Float{ + return progress + } + + // 设置进度 + fun setProgress(progress: Float) { + this.progress = progress + invalidate() // 请求重绘 + } +} diff --git a/app/src/main/java/com/example/prettywallpapers/prettyadapter/LIkePaperAdapter.java b/app/src/main/java/com/example/prettywallpapers/prettyadapter/LIkePaperAdapter.java index 9c2971c..43d941b 100644 --- a/app/src/main/java/com/example/prettywallpapers/prettyadapter/LIkePaperAdapter.java +++ b/app/src/main/java/com/example/prettywallpapers/prettyadapter/LIkePaperAdapter.java @@ -51,7 +51,7 @@ public class LIkePaperAdapter extends RecyclerView.Adapter { Log.d("------------entity","---------entity"+paperEntities.size()); //ImageView imageView = holder.getImageView(); Glide.with(mycontext).load(prettyPaperEntities.getImage()) - .transform(new RoundedCorners(90)) + .transform(new RoundedCorners(100)) .listener(new RequestListener() { @Override public boolean onLoadFailed(@Nullable GlideException e, @Nullable Object model, @NonNull Target target, boolean isFirstResource) { diff --git a/app/src/main/java/com/example/prettywallpapers/prettyadapter/WallpaperAdapter.java b/app/src/main/java/com/example/prettywallpapers/prettyadapter/WallpaperAdapter.java index 1e38ce9..d6f5738 100644 --- a/app/src/main/java/com/example/prettywallpapers/prettyadapter/WallpaperAdapter.java +++ b/app/src/main/java/com/example/prettywallpapers/prettyadapter/WallpaperAdapter.java @@ -56,7 +56,7 @@ public class WallpaperAdapter extends RecyclerView.Adapter context.startActivity(intent); } }); - InfoAdapter infoAdapter = new InfoAdapter(prettycategory.getList(),context); + InfoAdapter infoAdapter = new InfoAdapter(prettycategory.getList().subList(0,4),context); RecyclerView recyclerViewImage = holder.getRecyclerView_image(); recyclerViewImage.setLayoutManager(new LinearLayoutManager(context, RecyclerView.HORIZONTAL, false)); recyclerViewImage.setAdapter(infoAdapter); diff --git a/app/src/main/java/com/example/prettywallpapers/toponad/AdManager.kt b/app/src/main/java/com/example/prettywallpapers/toponad/AdManager.kt index b7e58d9..749c1f3 100644 --- a/app/src/main/java/com/example/prettywallpapers/toponad/AdManager.kt +++ b/app/src/main/java/com/example/prettywallpapers/toponad/AdManager.kt @@ -73,10 +73,11 @@ object AdManager { @JvmStatic - fun showWelcomeAd(activity: Activity,totalTim: Long, goMain: () -> Unit): CountDownTimer { + fun showWelcomeAd(activity: Activity,totalTim: Long,action:(Long)->Unit, goMain: () -> Unit): CountDownTimer { var alreadyShow = false var timer = object : CountDownTimer(totalTim, 100) { override fun onTick(millisUntilFinished: Long) { + action.invoke(millisUntilFinished) if (!alreadyShow) { showAD(activity) { if (it == type_has_cache) { diff --git a/app/src/main/res/layout/activity_into.xml b/app/src/main/res/layout/activity_into.xml index 078ab9a..9f65bf5 100644 --- a/app/src/main/res/layout/activity_into.xml +++ b/app/src/main/res/layout/activity_into.xml @@ -6,31 +6,35 @@ android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".activity.IntoActivity"> + + android:layout_marginTop="200dp" + android:src="@mipmap/pretty_logo" /> + - + + - - + android:id="@+id/progressBar" + android:layout_marginStart="26dp" + android:layout_marginTop="50dp" + android:layout_marginEnd="26dp" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 2109232..0f301d7 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -49,6 +49,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/view_page_main" + android:paddingBottom="40dp" android:layout_below="@+id/main_top"/> + android:layout_height="32dp"> - + + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@drawable/download" /> + + + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@drawable/share" /> + - \ No newline at end of file diff --git a/app/src/main/res/layout/like_recycle.xml b/app/src/main/res/layout/like_recycle.xml index cc7d3c2..695dcd8 100644 --- a/app/src/main/res/layout/like_recycle.xml +++ b/app/src/main/res/layout/like_recycle.xml @@ -1,29 +1,34 @@ - - - + - - + android:layout_width="150dp" + android:layout_height="210dp" + android:id="@+id/like_paper_recycle_image" + android:scaleType="centerCrop"/> + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/pretty_category_image.xml b/app/src/main/res/layout/pretty_category_image.xml index 298c5d8..ea43528 100644 --- a/app/src/main/res/layout/pretty_category_image.xml +++ b/app/src/main/res/layout/pretty_category_image.xml @@ -1,13 +1,20 @@ - + + + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 27c516c..0592b85 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -6,4 +6,7 @@ #5B8BED #415E9A #91ABDF + #779EED + #C4D1EC + #4F72B8 \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index a04e5ba..67293e8 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,4 +2,6 @@ plugins { alias(libs.plugins.android.application) apply false id("org.jetbrains.kotlin.android") version "1.9.0" 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 } \ No newline at end of file