commit 075c078f9fc04780689b600b9f665e878ad00191 Author: litingting Date: Thu Aug 1 15:46:20 2024 +0800 V1.0.1(2) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..aa724b7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/WallpapersGallery.jks b/WallpapersGallery.jks new file mode 100644 index 0000000..d4fa34b Binary files /dev/null and b/WallpapersGallery.jks differ diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts new file mode 100644 index 0000000..84a8b54 --- /dev/null +++ b/app/build.gradle.kts @@ -0,0 +1,67 @@ + +import java.util.Date +import java.text.SimpleDateFormat + +val timestamp = SimpleDateFormat("MM_dd_HH_mm").format(Date()) + +plugins { + alias(libs.plugins.android.application) + id("org.jetbrains.kotlin.android") + kotlin("kapt") +} + +android { + namespace = "com.app.wallpaper" + compileSdk = 34 + + defaultConfig { + applicationId = "com.wallpapers.gallery" + minSdk = 23 + targetSdk = 34 + versionCode = 2 + versionName = "1.0.1" + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + } + + buildTypes { + release { + isMinifyEnabled = true + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), + "proguard-rules.pro" + ) + } + } + kotlinOptions { + jvmTarget = "1.8" + } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } + defaultConfig { + setProperty("archivesBaseName", "Wallpapers Gallery_V" + versionName + "(${versionCode})_$timestamp") + } + + buildFeatures { + viewBinding = true + dataBinding = true + } +} + +dependencies { + + implementation(libs.appcompat) + implementation(libs.material) + implementation(libs.activity) + implementation(libs.constraintlayout) + implementation(libs.navigation.fragment) + implementation(libs.navigation.ui) + testImplementation(libs.junit) + androidTestImplementation(libs.ext.junit) + androidTestImplementation(libs.espresso.core) + implementation("androidx.room:room-runtime:2.4.0") + implementation("com.github.bumptech.glide:glide:4.16.0") + implementation("com.google.code.gson:gson:2.10.1") + kapt("androidx.room:room-compiler:2.5.0") +} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..8a5d310 --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,38 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile +-keepclassmembers class com.app.wallpaper.getdata.SetData { + public static final java.lang.String abc; + public static final int vs; +} + +-keepclassmembers class * { + @androidx.room.Query ; +} + +-keep class com.app.wallpaper.mydao.AppDatabase { *; } +-keep class com.app.wallpaper.getdata.GetWalls { *; } +-keepclassmembers class com.app.wallpaper.getdata.Urldata { *; } +-keep class com.google.gson.** { *; } +-keepattributes Signature +-keep class com.google.gson.reflect.TypeToken { *; } +-keep class * extends com.google.gson.reflect.TypeToken +-keepattributes AnnotationDefault,RuntimeVisibleAnnotations \ No newline at end of file diff --git a/app/src/androidTest/java/com/app/wallpaper/ExampleInstrumentedTest.java b/app/src/androidTest/java/com/app/wallpaper/ExampleInstrumentedTest.java new file mode 100644 index 0000000..a9bd53b --- /dev/null +++ b/app/src/androidTest/java/com/app/wallpaper/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.app.wallpaper; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.app.wallpaper", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..7349a61 --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/assets/test_new.json b/app/src/main/assets/test_new.json new file mode 100644 index 0000000..90f3e36 --- /dev/null +++ b/app/src/main/assets/test_new.json @@ -0,0 +1,2199 @@ +[ + { + "name": "feature", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0778d29d9df3135981fa983db6447d4c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d799900c0ed4448a858fabe9a97adb74.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/272d39eb140f03699f83bbda9349c459.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4ac3e89c29f60f667f5e660afdf52b56.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1020c6c57366c85cd8b4b54e93f86b97.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1c262081e6674c7de6a054a101003010.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1bbcf0d4423449788cbc823441a3639a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0bf796c657ed4d6f71a87506f78d5810.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2424f1aa727ae9998ae1896fea634fde.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6bd0da2bb67ec66df6561b99da4fe673.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ae4f3823580d67ab9d463e05210632c5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4f15ec61b970ad24aa43ac8d99dbfc0f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/867581cd8ec5402839879c70a86d5166.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/58150630175fc68e38afe28ebf58688c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/148499404d85516a86eeb5c2c30fafbd.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c29589dcf6ba78637c76d85e1e1db531.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8358b0d4f247220a75f9131ca89df811.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/985eda6fe511752a4ec54f66e8e26dd0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ec66c00d9a660921829c0d4fd3e917d3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/599361f146a794b01489fcefa1cbb16f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/989ccbceb5d165cc4b44ced23af4d5fb.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3bddefab997f67cfec336f798eb925fe.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b168d2f6250ef71dbf83d18d02df1f92.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1e7e5b04a7eda5b49eaa0a2dd5fcf2c7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e668bf697bd9da5e701254835b4b8a03.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0309bd16868cd842263f21ff87637d8c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d6826260e5e7a32f2db53404e409db44.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/77685bf7b59906eb1890967a7d78c0bf.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b655bc8400774e2dc940b5a8291e2ca5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d99334875d0273aad4beab313723af81.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5542893618e601a7db59c526a067c6ff.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7814197400d16b8e9ca06a6875ceaec8.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d3829f608614d5e9d137db8ee5297f3c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/debff43be7b79def16d495317b9b162f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe49725650ad74103700769b9fc07a8f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d225f44145583267ae3d1a8e901a6e68.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b5bbb4b172e7ae28a052f4224af6274d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/650bd8e37f13c1eaa8a1d1ca243ffa01.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d59cc6ba4993bcf62c3869127a3c2941.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/85be37b1adb78db46d6966b85cd5189e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3b508cc58811b2724545896cbfcd66ac.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a96d12131ce5b9d173c5aea321c8b673.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5f26ebb7007c731156c4403ea27669a8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e1218d89013e8d9abf06eac0499ff773.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0c24b7c474b8e1a7faec82c8b371652f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/43adb1e59c4f757682af55d4f0eb7408.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2e02d2a00372e65792c82b7e35a0a86e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ae39c963c68945c5e069c6f82a27370f.jpeg" + } + ] + }, + { + "name": "recent", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e3e9cfd7ecb0f9291a40577ccd5a6041.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/35b096446e9a5d5f48ceb0200a8f998a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3302cc89be481f9e8be2b774d343bf70.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6731cfb0425ed903dd67f628b5f5ced3.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/55d37297cc7df4da112af4c0cbee8f2e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c74de3ce566ef40635140c5691c30ee0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3d9089bab7ae0ab40de9bbc277a08102.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/01951bbd70547362a3a2d2a579f1fca1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d86f07746d129601913d2bf09599f6e8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/29c711336f36473a3cacd4d9661f953a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c189c2a257a0591c3ff5060c235c7342.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2d414e582fa323d82be316c3c5265458.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/34b31bde41c0dd74259b980c5574ae7d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f0ad74fb14620bfd31b92844a776838e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/918df6433d6270c8fbb76a15b76de80c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/504a42911500aacde17bb218207b3531.jpeg" + }, + { + "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/4bbb47d8bff5055f0e37eeba14c8d54d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5cccc2952253bbc0f2db3ebfeba29e86.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/11011f8b92d505d3f837afe073439ca1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/be9d97e50fa5c89937e387da6649e3b7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cee1c646c05356637b33824c062af74f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2ae06375abbba1052b00f9a2fb88e91a.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/cd179543db4aec47c8f7f77535dcb65d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7cf87093c5f2ec0a387101b2bd232548.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7e73c464a7b8e9f2cffbb4d0eab7b853.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/89ef11e052582cf67c8e6c176dccc0af.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/be89338c4809aaf5dcf3cc468432998e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe3b2513bcfb731520bc4dcd979e5193.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3324c4475f6a4f1f64f069645548e452.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/372858e338cfdd52fe4a163031801de4.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f16d889afe61d0ca3f2d0ac01c5567c6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/366370cfb9d839055295c07b80ccd3bc.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/67311a260e3c5e11a55cb79f02309b3d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/35c14f8ae14b38fa7cae5a1aa488cc0b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/972225d59df46a33b68af9e58f40c909.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9cd75c731b123ce5f9ae92302e0d87c6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bf0ea47cb17bef915b374b1c40c41f73.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6a9c235c9ba3b42943506fc45ad5c340.jpeg" + } + ] + }, + { + "name": "popular", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cb1e57d9a8a8b74bd9da3a59d048b5f5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/450cfe73f9504835f27f7e86dff24d7f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/81ae1e4670fb3719e5149a3cdf31c6ed.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/51beb1bca04103db52e4cde6ca12db42.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/78f2465fbc4b4b16e56e277b637f624f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f2957601d332beb1c0818e558954677e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/dbdf62f151e267ba7802a97963880aa2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7901ff103a96ad19ddb27f3ed9954d16.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/289e1219ab8467f96c5c347c30292256.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/eb969501fdbf447733185cf031756673.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ae68d5364057f54c4b23053ae905ef8f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c71e0bd1bbef6f57aba91d4021d2dfe1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8340b18893dc7e581c7711b7f021696e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9610d175c7297c23b2674bdc2ba9f028.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ea63e7a22d6d2496808afc0a17fa3cd1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/edabc252391faab49916d2395f505e31.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/42d801957f9d055d3f4f60999f481468.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3fdcdfbb606f595acb4cba594c9823b6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b2f935524830f3794ed9eb61f159a077.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/21f1ae5d466213bc80cd0252f3c7500e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0fa1ddf9b0d7f9dbce03c2b49c89a031.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/82b9f33f8ddb023c2c73c2e09bd3baa4.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7f5d11d128e59c04e4d1131a318ec896.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0826bdb695449da604e3d25ded709279.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a009573cdab9a4850445d5d698bb22da.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/10e8fc4ca6804fe916703c206261c1a1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0cd6f33c960555cb30762fff3a1a6f4d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fa1741c49fb23d1e637c535e42cd3362.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a80f6d5a542033cd6a24f2d38eb3c49e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3e2fbd850eaa5474dc781acbc4c87703.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2ea3d1518f8638dfbff7b964d9892016.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/177321414002c6c067cd405796f96c62.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7223d7220b8f4efd273ad003a11f6208.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a4ffaeb15e4d4b3a177c3a834ed76d45.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1e28cc9646b74982c4cec3bce7acc42a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7f0918eb3f9952a596e2adf5d5a651a9.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bdc268b8397278fa0628fe61f132df64.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7a57a628d003214321a7409d960d2851.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8e12c5e967878d797e5c725e814976b5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ccd577df5c7eeadb88e58b8cf47389d6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4982759d3ea2405e951424a91297b040.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a39cf4fdb28e0043e6105ef0dbc559ca.jpeg" + } + ] + }, + { + "name": "anime", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/78a53756b869919dea40478e803165fe.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4dedaccf8e3cdec4bab521ba2714735d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4dd0d2e4064d4af51bb6e549acf0e501.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/602390b4d293d0cdad5da081c13022fc.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/df23c4c23b0925dede1db7e356283018.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b3965a3626d46538f4a0b11daae6a3e1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9bf9b79cebaa4b52c37fee1f955ac402.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1c2ed514290a4cfda6bc4e98d5b8a5f7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7b45001ef70ee19976d32cf8700a69f0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2b4f7512223f83bdb017c9a5d970cce9.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0ef461ff981673439ac38b940bd0f074.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/07ad3e82b58c6d36d88c9c99b37679f5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b36fe9cc5d414cac38151c0b0c65bf20.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2ee74b808098313b403e34c2a6eb491c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/69b5e49a24c369469489504a9d9681a1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e68fbb1af288ce35966b7c0f4bdd04eb.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b85c20a2c96eea953ed23f726a98c0c4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b560d9e78414ac96252a8e04e20566a9.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e736ce9da0035a817b842133021eb4b8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9d90a6d43d192e5635feff690427a150.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/db40bb1805b2254b5fbe68fe1823188f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6828f927c1d96becfdde853947bd5d90.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a1c69f392b70126f542e141975d314a3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c4894eb33963529eae0438d8a44acbc9.jpeg" + } + ] + }, + { + "name": "unicorn", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f394722f00db0df931ea62d8e0f1f273.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/66e51fb0c777083a33c87169ff431c27.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ff25d42e887bfbfa61a5eff4b36d9d06.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3720df372357721e3186d0f025958030.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/dc416b31766e700005b3b0df4450d6a1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0c95535f5c0fada4c4593c5f1a0be14f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/79411da09cb235ede0b2ab924e6e2d06.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b5ef56ab8d5990c2a930d317ee96ee36.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1422cb5eb8b0bb96a97c96e63343f3bd.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/18c3f3530da6e190ff5e846ac69b9b64.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3302cc89be481f9e8be2b774d343bf70.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6731cfb0425ed903dd67f628b5f5ced3.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3d9089bab7ae0ab40de9bbc277a08102.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/01951bbd70547362a3a2d2a579f1fca1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/918df6433d6270c8fbb76a15b76de80c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/504a42911500aacde17bb218207b3531.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f16d889afe61d0ca3f2d0ac01c5567c6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/366370cfb9d839055295c07b80ccd3bc.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5ee5a0fa74677e71bd0725fbe45cb366.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4bb474acc1ec0e4aff17aa4af4b6d4bb.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0ec424dc828fd2853048f18928e0a7c2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/251834a8101d69114ab0784723f8e1cd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9e60ffa21331c941eb650abf0c37a5ba.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3aec495a951c17fde82b3f5c4e01f2d0.jpeg" + } + ] + }, + { + "name": "kitty", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0b52fe7cc5b2cf2d11cda94cf6dd77a9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/77b08753cd065bd8e60873b1c119538d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6f597bb789e69b5099a9b162402d01ed.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/56a10bb51d1cfba6130267eaae6cb04a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/272d39eb140f03699f83bbda9349c459.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4ac3e89c29f60f667f5e660afdf52b56.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ae4f3823580d67ab9d463e05210632c5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4f15ec61b970ad24aa43ac8d99dbfc0f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/867581cd8ec5402839879c70a86d5166.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/58150630175fc68e38afe28ebf58688c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ec66c00d9a660921829c0d4fd3e917d3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/599361f146a794b01489fcefa1cbb16f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e668bf697bd9da5e701254835b4b8a03.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0309bd16868cd842263f21ff87637d8c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/beaca60353062f6c1e9a36957544bdba.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a7eb342b2a9d0346a496c6d9cb120c01.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4d895490519264d13e299f4fd28919a9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6afc0f5710de7fda93ab55648409980d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2609dde32e4f0051a6f66f4b12826b4d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/478cd1c814900b9dd701b4bca1e54947.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cc1035518da3dc3729539e67d9468438.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/67618a0e1eea172dac6c703e35855855.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c84cadf74e82489d4393ea2a87fca733.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0019ce6a88fee8f46f49bb41be2b6441.jpeg" + } + ] + }, + { + "name": "puppies", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d86f07746d129601913d2bf09599f6e8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/29c711336f36473a3cacd4d9661f953a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c720292e6ea423293bb091bc480c6ad9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ff93949342ba0e426c817bbc5fce12ad.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/98014a9710bece6882888ddceb23dc32.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7bba897872dc9faed84a1acb3327d5fa.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/62fb7f25795e2d724d555148cb30a451.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/72740366db66e229b6c40c191f817432.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9b98a18fc98e5fa3a1487db0434bb7d6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3106a24bcae3c124d665fd44fba845f5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/dd240b9fd1605c52c8863199fd70e831.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7f3ce5f13125e69448ad53980ddd4fdb.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0d1effad93377d18abe6fc22a138c69b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fa5dbf215afefd0ae9f596fce08f38fa.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b7fd0e5add46a012d9a6046206cd9e16.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7de53bb7a75291e06fcef8d9ac1ddc56.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e3659d15d752e31538a9734ddd20fe29.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/faa543a594e77ba804280b43d4570e50.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2765e0596a7812d27f3a458a0a8ed7a2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8454af8507862961ddbec63df4fc77fd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe6eccc7de59c72cc10b84e8d8b51122.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/94c2adf3f30aa2cc60cb6ae3cd8893fd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3191053cec0c972447e04a290b36da35.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/adc5c0404bf29146ab3fad4d94716695.jpeg" + } + ] + }, + { + "name": "flowers", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2a05f339aa023822a6b07c843910241d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c7a1784fb016359f7a62a882333cc83b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/88ef144fa47bcfa667f5cf8b393f15ef.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/80fbbe4db60cee5a851552309d2a27ab.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/474eb2d318fe9bfa401853fb453e2f67.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/de801fce754539f923b3780b499a4b7b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a4d6778694fd960e4313f40ac5cbecab.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f19573e9f1e0be8280bbce83da13d933.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0d5331f838ca904c1cbb519c776905a7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/99bee1bc7a1bc9d44696904142209414.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0240d8aaa69a5c630de599d5d4429bde.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d382d58c793cf7d3ca832066a3827d38.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c77b66a3c34a2c0105cca3053873c1a8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b648ee0784da5e81ec5a59c9af08de16.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/121f1331fca3bd3a6e6135490c89938e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b42e5db9694f6f33e1c760710250998.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3ecfbfc0a45a8c031f6545bd0d280e06.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5a154380a7c6b21d9da29332e81f5d89.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0cebbb0341983039f6d670a26b18e25e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/df515f3f6d988bb65d4c7e7cb28aefcc.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4bbb47d8bff5055f0e37eeba14c8d54d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5cccc2952253bbc0f2db3ebfeba29e86.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cee1c646c05356637b33824c062af74f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2ae06375abbba1052b00f9a2fb88e91a.jpeg" + } + ] + }, + { + "name": "eiffel tower", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d7ea774c7936847034e7d47c6a4c3621.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b6cde087dab857fdb24b0f0abd2385fa.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b05d98248da1854f0d001bd31cebd50b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/64f877e613f049e7df32c7b9414f2986.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1c5fdc499db061366c8656ef36f4e3be.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/575e8ac5ae86f5a71babe3f0d2e39c75.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/942ba18550e178e99b2b5fe9c948d922.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c71782bae143242c0074e74c878133d0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ef357333eed8615bf5284267f74bf2fe.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/06c69621517662ff720a79b17b1dabf0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/49916fd9085dda6a71b00fd3a457c0f5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f44233ad373660d4ad249729756e09c8.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0778d29d9df3135981fa983db6447d4c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d799900c0ed4448a858fabe9a97adb74.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2424f1aa727ae9998ae1896fea634fde.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6bd0da2bb67ec66df6561b99da4fe673.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b655bc8400774e2dc940b5a8291e2ca5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d99334875d0273aad4beab313723af81.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/83754be173a128765774ab3a7fd8c06a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2aae7ca7704008b14bec39265bfb52bf.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3f10efadf6c5a9d36d9939f57b5d1ec6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/63e1919d03e3d76b73721d03c104d84f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/33b3eca75cb6fa3e5fd59d500a9b5e98.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9e5de7535d8e8cc5f6c8d4eae55126a0.jpeg" + } + ] + }, + { + "name": "dreamy", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/078a2934e9bd4e91691040427e42c1cf.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b66b86b24e7d5998b3ea5a6536929fa6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b863a36001829c01eb171176397497f0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c051996948ac224e19503e3d465742a7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/57755c4ea1bb81e508da774cedfb24e9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bcdd01e3664006072f8ddcdc85e3b5b0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d4cca417535f5bb86b74e7c8750b5f2a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e841a09e1457a0e4b238ffee72f398dd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2906bd996dbcfba67ad9f896a6711446.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c6bf40fde3ebbe5c41f7ce0738a468c8.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/811fa5797c92e0de20dc2132c291afbe.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4505f7034a3c5f78f21d80167f841907.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4d0f72c74b8beeebea65063c65d13af6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2f36ef1fcbd0d5e5efb7a3be5f2fac2b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/95ef79cf7f81d6939ac82dcbf931864c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5cb63c0e9ca2cb2f1e992a8a245128aa.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/caf42023af67eee943621b568b9162ac.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ff723d610b9d1b5523434576d2ce9101.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c86ba2f342308fe2a38b1d4b7ed4eb1a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/46f3be40c9b3889e7224e8cb56319250.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4f45c624dd0901130541594a848163be.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f4ebd02e92d77f3dbf24166defbdd138.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/42c6a6c39534182eef8f116e71d195c0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4b7da710445e2fd3b2f0a7324c2bde86.jpeg" + } + ] + }, + { + "name": "animals", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/10a20226dda3cf01850566e1cfe2e57b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ad04501013a619c9b579dc2d9e593bf2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c4d6e38cc92cde5aea884c9903225ea0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/203ae96d3b0763a7b0eb7e6d79cd5dc6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6860012997011bb06dec0a49116de185.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/36f7575ba012f8cb6bed9d1b9722e641.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c37d2250a6b9c8c2a5aeb6fded4e7674.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a6ec47edb79b4fac2e29a36995e43c91.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e3e9cfd7ecb0f9291a40577ccd5a6041.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/35b096446e9a5d5f48ceb0200a8f998a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c189c2a257a0591c3ff5060c235c7342.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2d414e582fa323d82be316c3c5265458.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b168d2f6250ef71dbf83d18d02df1f92.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1e7e5b04a7eda5b49eaa0a2dd5fcf2c7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d6826260e5e7a32f2db53404e409db44.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/77685bf7b59906eb1890967a7d78c0bf.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5e48ade076bf1b4666be781a3f60a364.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/51d60a01780b82e442d7455da61ab4bd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ec08144b3a106eb6ecdd916767be8846.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/443479fa063df85622caefed1f272af2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/859c9b58b3ed1c0c2992cc8cb06eac68.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b2dc1214b7b4e83bcc41a97469957831.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/578f979da129c8982239fc1c055d7be5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aaf9d9ef5f9f8399f43af626aef4eeb3.jpeg" + } + ] + }, + { + "name": "nature", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0a0068552c7716f4e62b52389be2e7aa.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aeaf0a95791d5064adf22a0dffc59692.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bfaa2acb7046d6937dcfb46242c5a202.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/89791fbf31f2da53a81fb1c39e33da87.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ba3a3d8e2a3fe678059d336209e27701.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/71963582a1f4ee889921cc7200c26e5e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/095d0022318d6bcf03f27cf0ab25f22a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a2ef86f9dc2917e54557ad506ef1367f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d033305ce11a4c25d9e1d0522f2d0a93.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5d119c5c88b9e44955e83f3d3a0928b3.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/15132506d53f73a734acb50beb849545.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8db8e4798e05c61a0417ba4e327ecf00.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/080a1110ddb3fa6a5f6f4bcc9aeffe49.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cf726d392b71b1f8cddf643211f7af61.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a5f34b87339fd4ab81acbe341ef8c0d0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/188f4a1bfb8c25d8751092d6718f12ad.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aa21124ef9606a1b0e0e42ef753e4d50.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e55d82f968397ae6dcd18d6a7a30dd9a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f699e3ede507b1a95c837e599c32b22f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe8ef87ce0f9151dd2c0fe481ec4e5c2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1ecd1bed38f70bed2add2a2eb317773d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8d3d8f4e415ce64cd89047c0428bfd3c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2e42b89b829991d004e5e060599484ce.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/76e3bb52aee44228dd554a7334c6d192.jpeg" + } + ] + }, + { + "name": "cute", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6a53bf315f64477d85ceb46298475b8d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7a5e9212400d93fd5f5d6c1848b3d76e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/faca01a3f8f50e688c415ce07618afc1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/60964777dd2e91bd861003491672df01.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/55d37297cc7df4da112af4c0cbee8f2e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c74de3ce566ef40635140c5691c30ee0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/34b31bde41c0dd74259b980c5574ae7d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f0ad74fb14620bfd31b92844a776838e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bf0ea47cb17bef915b374b1c40c41f73.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6a9c235c9ba3b42943506fc45ad5c340.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b75d67fc3ad3d42e15d0b4649d8d441a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/62d6ffc99089529d2b1c467ca03666d6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cb1bb4486e126723a2c843c905aa3b42.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/035c6e43e25cad1cb4279aff04bee5a7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/693f3467d3bf6de2da34b0c22fedf2ad.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/724df23f2bb16727e55244d81561edb0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4c0df0ba0870937fe64587fc0b8ac063.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a6b3bd73747b3fb5b178e6912c3be861.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9c9ae9ac1d94a4f5a61bf18f3d684530.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/97b0432b9b9f09c559744bfdb911a17d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/67598f5f32668b6ef71a99ee0f050aa0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7c3f81d287bc3c1395719402dea36d8e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d40e843f1fa10744440f0eaec29e7229.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d05352377021cc5e405fe88821480370.jpeg" + } + ] + }, + { + "name": "shiny", + "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": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a2e09a56793fbf9e8104833a199cf332.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0045a8e120149c1088dcc90669b4e08c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cd179543db4aec47c8f7f77535dcb65d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7cf87093c5f2ec0a387101b2bd232548.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5f26ebb7007c731156c4403ea27669a8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e1218d89013e8d9abf06eac0499ff773.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/67aa353cca55c1f24e58ef45e3a5c6e5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d2519f822e57c6aff440cd4332af7f4f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0694fbdefd7db30ee4333ce44ab2a714.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e9bdabc1b3ba7a403e171546082493a7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/09cefec8744f0519b4aa53a03ee96eb2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/39069a1ba9f5f562ad9be1e90a3523e0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/426c845a56fccf9bdf3c44d00a59752c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/684de08213628b07807220c38178738f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cac87875aabdf876822ab2516cb5de59.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6db71ec61388d168ad2783e99db6b609.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/480f2e01bf1a96e8b90a9113d13b62b7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5eabc418e04a5a30a0fbe499e1efcac8.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5e045e28cd394835269b56db2ab6e802.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e74092825564916b21361112850f480c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f4b9b08157677c6810af55fd5cf83da1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ab2b4d493687e922ebe45f59762f02e4.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/deda1a7c162a65ec39fdc40c61948ca1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b93df15ac5a817fe8f6e8a0554bf0fa8.jpeg" + } + ] + }, + { + "name": "love", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/93d96dd6956db5e77d25d83b9f46624c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7929459c12e04cfdc0613518a620b44b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/51037b9c0935a2c86396465a1de1f52c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/179aad0c6e8aa2ae39968fb7f5032b8b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ed0d1f8a494b2c06d794950020b2a749.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4b6ee5717edd896ec043cf3334ecb34d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a8b304c4b10d1eb6e801bffb5523a172.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5e05b76527a6419da4c49e7a7c5384c0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b0cb65c664af3ff0da7128a04e225f50.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/45ee864553aba2ec2afbd716d3e52c31.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1310f244a991fdb069160761f8de158a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ede74b0bb28389cb84ab07d73769eb1f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4b8d810f46ae48d41365785e23ec4323.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9a9b8f5d923e89cfb62a7a0ffec3f960.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/13cd7ff65ba2bcaac5d6f22366c58202.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/776f1fbcb7d725ab06a97f150031b7f7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3d3b1ecdbfb3d16e1436e8bd534a4c2f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7f51dc4f7d3c5afd2f79dde65d05d06e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/057a57e2faf946c072036415e87388d1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4e374a92eeab672b4c9f3fc1c5ea656f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e217fb318f662b3ae2ad809d4c7fd4ea.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/37b6f39d7af382b776d3ce5e6538b2ac.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/912f9ee70a291ee29f8b41ff37a89a47.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ce81187ea521f83f620504211691d73f.jpeg" + } + ] + }, + { + "name": "quotes", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ffdee201ab115879fd038a7f529d7d2c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3deec3b8eaeff16459a684cef5224b9b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/087bcabb11186877ed51153251452811.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b5e16400a1374c454205bc7ca4608755.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ed717aa6c0e717092e06aab549ddc46e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d660026484e39cc9ef8da58eebd9fcd0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b938904303b0d74b1a89b36f9100e443.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f859acceb653463a5d9f078eda7677fa.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/08338ff92c3404ae6359b5e841dd84e1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7cc7dbfa76593d16ebaff1d0c1995d9e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/877798c6dba982df8abe9e0c24d85554.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d9e0886ab6d82cc9edaba2f3bf29b45c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5a169595dfe60147918f274b5948f8ed.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/051543e0172b6a65a5a97ac4f745864c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6064a6c9c3d4995dc8540bad7ca388e7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/45249e3ba3cea2622081a776e8401be5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1359974cb4104bfae720e689606e41c7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5104e818b965bbd76c857576ded2995e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c24b5eeb7ed4b024a2344bf97b64ec74.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3c5edd88e066ebe850ad70c7f693b4ba.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aaac63a5fc32c88cf009a3957efccadf.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/47bd8da3f04ee58223a9b5cf1340ecf5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bcdaf95a07aaa42e25a6255c9315c163.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/26ea478a38e8f2928dbc5c2f93613b78.jpeg" + } + ] + }, + { + "name": "kawaii", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/de00f68d508f814beb905cd2fcb105b6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/59eecae04d88aafdfc27dbdbed3f7206.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b7add655c7ad129e7450d854a0341650.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e6586942bcbcf272455f955dab228758.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/78fc2b822fc1a02e3583d7063eed2f42.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/51031999d7d436985551cd19524cce39.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0648300ae38fcf09b0c3300a5e449b68.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c0d0a8288565b29075544088820b9196.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e69aace3e80d2d71cf76be55a84ebf43.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a17b655882dc9019556634041e3e54da.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8838852f7f5c55ea50bf8c40395e7f1b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/08ae5cc9a44ab440a176c337f31db1b3.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0dbf4bef14fcea43de65e98db86b1762.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5d6c2c5ac1f65e58a62563c2798ba285.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c8ea3a5375cc689bf4b090278fcced39.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a2c978ae492d3cc9e13c6d129b6b13b2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a17e0fd585efa8294dbcb79e65e3e461.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/348636ce36c77a6d43dca03f96c5b4c2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/04ad0f6fbad1a9f3a10ee9f0869c4f3e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4b60fdedab1f57d3138e37fa83487750.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ce89d0109e3478b933f4703da1bde5ea.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3e7139fb80bcc35494089b7f758ea196.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cc50f8a9fabda92ec8a7c35d296df81b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aa33283ac8c8fbbee4a1108093a89cd8.jpeg" + } + ] + }, + { + "name": "butterflies", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/14bec2138e0dbbb8269fcd823373ec81.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2be531772db23680710b0ae0f6bbd6b1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8dd1d28b5f19d212233e4f75d65cdca6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/87d643a67dc0871e3e1ad8acb2b3f724.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6144a94883258aed87fb9081bbde0a85.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1015aaf11c417698c54b0dbdd2507533.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/369cd1449d89059d62604705e2dc19d8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9a85fb68e67b7ab16005a28d4c45424e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/159dd4cf025079e2b74b2aba1f314c44.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/492151fa770793fe78525ec147302d2f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/989ccbceb5d165cc4b44ced23af4d5fb.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3bddefab997f67cfec336f798eb925fe.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5a3ed58b628e39741823c75510447418.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5eaee4c2cfb09a49bae3118fc322f74a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/47a0c3f8480c6a26097e4a14b85c79b9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/11097c38b1eb9bbfab9efad792ac199a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4501359f8f47768f7c2367a46bddc234.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a2c77e8179234381002c83ae14bdbd48.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/08a1c3f034284f1a493a6f187bb85c0c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f56209ad01c3d8c4d8d570c78b2d321f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/080f21125226515b4183aaad249bab0c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e3f9b89e0a25a4a2495d5ad929c9a8a4.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c246da9b3a6fce305f59857ba29b6ca9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/30a65880137fcd20402d8f44fee72a04.jpeg" + } + ] + }, + { + "name": "ice-cream", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1bbcf0d4423449788cbc823441a3639a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0bf796c657ed4d6f71a87506f78d5810.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8358b0d4f247220a75f9131ca89df811.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/985eda6fe511752a4ec54f66e8e26dd0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e60779bcac97c31e5f130e4607e30b1a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c8227946e82f8c43f9107f29d4326472.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/72306be102fb449d09c2f00190f333fd.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/14a353980ccf8e144edd511bdfb9799a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e6ce9107ee6b132fda1e001f8b2e0e8f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/25ec4e031b8f3bfbcdcd81827e71f825.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4b0e7d38bb0836de4740dc922939d2ec.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6c69e1301b8393af85d61975349c4e20.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c5b5aa7d87bc73fcdee4da3d278bed94.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e3bb6d6572b6ff014c96a80a90892ce5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d3e93e7cf84e728ab4dcf86fc01ab361.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/db897544aa8015654df9a0cd9b009778.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a23f6c91d445fc7a32a4a6fd1cf12a75.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a952d9915b1b949d90476bb006d6c0a2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0b1104aef0f0dd0521e5da2f7993d5f7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/44ba5f78bd0b3e990940502309abadf5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e13b63c99f9a6e82b7c0980cc94da4fa.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f32eae2014ba84d2b15b0d41379bba9b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/90841637e3f0cce0538e4426c68a6943.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7d40d8b4e91953b74f9c266ff9fc68cd.jpeg" + } + ] + }, + { + "name": "birds", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d027d5c75d46118a8ff86257f87a7818.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/eb8cff06bba7da5f3bdc7171815f30b0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8d4d9ae904e7a71209b10016bfec4bd1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/828ff8fc1ed118e468421e5ed95a2a35.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/be89338c4809aaf5dcf3cc468432998e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe3b2513bcfb731520bc4dcd979e5193.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5542893618e601a7db59c526a067c6ff.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7814197400d16b8e9ca06a6875ceaec8.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d3829f608614d5e9d137db8ee5297f3c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/debff43be7b79def16d495317b9b162f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d59cc6ba4993bcf62c3869127a3c2941.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/85be37b1adb78db46d6966b85cd5189e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0c24b7c474b8e1a7faec82c8b371652f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/43adb1e59c4f757682af55d4f0eb7408.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2e02d2a00372e65792c82b7e35a0a86e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ae39c963c68945c5e069c6f82a27370f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/894b85fa369566d7e2adb08262ed5ff1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ca49e82a5023d37b4688ccf83efe4498.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/706208a5352e89a17885d147d6af3c09.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/edc67a8b37dd34ce6718b1df35825ffb.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/044937e0563345d553840b90d0e61be4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/71628f9256f7f1ab27872acf6477f697.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/328abe84ad5f964b94ff0d7b128786d2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d8a80f5ddadeac8e549369a33c79597d.jpeg" + } + ] + }, + { + "name": "candy", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d0522722bb51d48e79670f07e4ec94ed.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e249865fcb0a40a9e64fbb125b467643.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7df5fa01d881b56217af64f6087659d4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/022ab40bf75c2776f1a572aa0ac5df1d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c1c89540c0984a8ba945491cd5c6b7c5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4269ba8af3a09f1eb7508a8c683ee95e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/faae25973297f58826e3dbbd6dedad01.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3a850e4d137838c44ecf7bf8076c26aa.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8d6ed2580036c383d616cf91d49e0de4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/841e3504782891d665afe31f7bfbe978.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/db2cce3d9886840acc73fe04a4866616.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/14276e9295ce0546bdeb49e4eb3306a2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3aaeeb8ba9ae4185ff0d26964a5db981.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c69415f2ec008bb7fbe539e30dfcb9de.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/78b0c5abef0124866da1737390c67d48.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/380fb2476aa8b349823b6e0322eddd23.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/95278ef7f3d338ea46c30b1888978d9e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/042e0a31ada56ebda3f5442e8eb34ef9.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a6cabf09b53438313c6b0946d2f89482.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/369d8e92d8e657a35dd155de50596d4b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ad431bd7fd80af02e5df091d2e120637.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0312324215018a0c977a0f112c943e11.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1377058581145493d9197e7c1a748b92.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6b859cbfb8e5a0e2707a968529c578b9.jpeg" + } + ] + }, + { + "name": "illustration", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/741a4f4e3c11a30f5f250eabb255f3d5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0bd89baff334793eac9ea18c651d43b5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/81702ed7640a6daeab89fd4b0c98c2d6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/03b4dbbbdb7aebfe12bdc83b24c7aca1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/92917715228fe766a637a656292bfbc4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2a33be25f5b8814ed2c8851a689af012.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e9157866f994b85102cd97bc54612259.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/15c3470351ef15d4b70ac27163436fec.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/17daa8c07a3f781442edd568402deb82.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cb7e6acc06046411f4e38d9b55e0caf5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d3e3fa690356c5001bafb8c8305ffff2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/db0ca82d6c484a62c108e8adb59be9f7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8a2e145771139c9e991db7c956c38841.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/17698bc166342dae3d26689fae4a1bc4.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6e7aa9b6e4095bfb4648f01e2139e9c3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bfcc8cee57bd706e4bbb617f4364b5a5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fc8df50b6f78190fe5e7c35ea6eeb1ea.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4dfafb09122ae33d4265a94e0dd1828b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c39330313f2d91d61925f2d6c6c11bbb.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fd6534f02987b5013d02af06248a59cf.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9ebcd0acaaee434fa2c0e74ffd215b6a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b7ac0f961b92d435edbe7c889dc1a42e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7f418c2d149b613ba571389ef6f3451d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1d5ef3ee8ba83245c8217a30b83c094a.jpeg" + } + ] + }, + { + "name": "colorful", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/668845fe70cd30c376a78f566e4b89c6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2af2a4d4e9ab05a8ed888fb4a704ee07.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4d6d2a80e17b46f459aea4ea31471688.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/454f45d1b513cbae0c4e7351e8057d09.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7d01634d7be19062a291c2eaa66f0a37.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/82a495cba8b841b470d60b0d8857c3b7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cf6f68211e4bc3a1c1115cb32a0bd6a6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f0e1f8bf73ecaef233849432e3082c89.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/148499404d85516a86eeb5c2c30fafbd.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c29589dcf6ba78637c76d85e1e1db531.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe49725650ad74103700769b9fc07a8f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d225f44145583267ae3d1a8e901a6e68.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3edba426a028daaa7ae362c1055632ac.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/44b748e4dae8df99c456db5aa4604045.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6b7550a3ff14a128e9a02ada2b572b40.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/07a96f1f7ebb02460216deafae5bcf88.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/19124bb0d51f3f5ea5cb2431d0919560.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/60cf1643be379cc8ccc80c56efce5c57.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d8c484f95fc7351a6543b39817a18b53.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b11b5feaf6323a144ac13712f190263e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/502f49c26a43a476417831fcdaf650ba.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a7d15918016792d6890ff7166cc9a90e.jpeg" + } + ] + }, + { + "name": "pattern", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b570d932db8d172bb9c1aca58972d4d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9e75b52e8e3fee0ad35f4145935c2cb2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1f124d5bf89f413c949793f4b591a9e1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/349336135eba300962ae430776ae6d4c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/06ebb4a1f5827ae8273e369e2a82459f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/56bcea9c32c4530147b08a1c1cfd9d54.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0c1c1c6e7f2eae50a86d07a36d5fa456.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9d87dd39a721b4c8174be3679d0281bd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5864be060552a76cfa1f04895c6c2c44.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/366b452a51da9516d27582ed9b5803d6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/11011f8b92d505d3f837afe073439ca1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/be9d97e50fa5c89937e387da6649e3b7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/67311a260e3c5e11a55cb79f02309b3d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/35c14f8ae14b38fa7cae5a1aa488cc0b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/35627b141d46bd0fbb70487d7dc5dc29.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b7fe31e18aa622380b3fee4fa40fc43d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/99de9d5fde1d8fc483f63f06df86aee5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/15b39d3aae2b66b7c704e58b89c883af.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/880abdcadb53b481895d12edc442db52.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b1b5314cf76b80346abb27aac02a4dc7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1a5b7adf5708439b8af308a695099bb9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/751b6a2c6c7f062f063bea6c2be0a16b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2fe8b8c170d118590d0f829dabd5fc19.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fb202786278612845f98c13bf0392023.jpeg" + } + ] + }, + { + "name": "floral", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4ae5e4942ebe89d59e9cdc92b2805ccb.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2831602ba02537da94d995723ccf7267.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/972225d59df46a33b68af9e58f40c909.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9cd75c731b123ce5f9ae92302e0d87c6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/70eed4bbdd63ea47beb432b9a5580f87.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/85816e5c08c19d9716853fd321d62033.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0bdf89c9dda92361b5d8593cc6c7efdd.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d8df828b0499ab638241f42c50b4ddb6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ffd4604630a16fc82d6885ddf73aa678.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b519b193e3cbb2b7d844a2af3e8d0119.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3ab2c34127f56d39bfac35a2bb3e37b2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5a39160d0276c27416e1d55fe16f8d71.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/41b710ad68114f57b9d786081d36c74b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/492e2ca90e94c9f08081d7a7819a8796.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/29ea32d16853c15fc3584fa9ec55f4a6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/588c792796e4e9cfb038beac7b1a2205.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9a654f2ed1f968b350899e815595ffa7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0af12a60416b57a0edda36b3a15e2e33.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2031dedf742e62423f72ee33685e1e7e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/dad9d1660061c20a2f9331857373dc59.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a2097b54e4ee60f5ab4aefcc71a4fb06.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/15c5c9e62c0c2f5edffcba51c8d9453a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/35b9e04f3967dc7fda571bad1e916d52.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/011f7c8a9d6a2b688a76b739245ecdd3.jpeg" + } + ] + }, + { + "name": "cakes", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/96e101029fa82cad3fba032e4d907874.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b18657ce8505fca699060de13b37ce03.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/26cec2e801132dd006e2eeb616e49488.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/af9edb791dc4e7e696c038a0b728ddb1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3b508cc58811b2724545896cbfcd66ac.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a96d12131ce5b9d173c5aea321c8b673.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f8fc8c470a4d38611af80dda3b67af80.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a6126323a125eead9a7b87c6bf20a3e5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4f690139a370c9372f4b59ae1317ed21.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3058121881c0bbe88ed9151907e08236.jpeg" + } + ] + }, + { + "name": "abstract", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4bff588558b80ede14e99fdeeef127ad.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/043429d95275d9ac3b571751507632d1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8c156a284f762e466be8c7a3469a1461.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/99eb62cdb5f7db79ede4e1aa2c12979f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3c91baa017029ea7654388f9ca4fb132.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/42fc7091a4fb931f35d534f380230c25.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c5625601fbb5280e66edaf93601249b6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d3c37c0c08b43967de7624692c61b2ba.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/274b0875b37f08fa52f1136fc63ce83d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/656831af2ce91d41df5dc4f331a4250f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/90435a57cd452e49ce063493c7994a57.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1dd3091afe56a8416a22e58d20898b59.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/243dcc839750c1472bfe3f12f7aa46a3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f0f829b2f4456e03b823e2d74ef4a046.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e26ef60fd0b02bc93b722b657f9f3239.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a1a345e131831953e639758aaf8d6554.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/59318f224e30d7374e3d17b7d2bd860a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/73e5e71634d275c080d598fe9e7b5108.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/008f8b051b01448f9953a6eec12dcc92.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4039008218129f463115f00b552568cd.jpeg" + } + ] + }, + { + "name": "amoled", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/13362a433eeb77a8fddc8c5a75291d57.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c7e353bebb4b98ecd4cd3d5311fcc84d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3096f65b83a3a37f386c7da992856c75.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/333ab55bb6638bb28b2162eec57041f5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f9d722b01b2933ed1753e727bb62ad9e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0818bafa796b124c5c3539dc6991ce37.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/48e38483bba126b8310a88aacd7ef9e4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/081636c9da2c2d4cc3c728988a990b34.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f934f0167eb4273df69238bf304f33d9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/32cdefa9ed352a6c798761c4d74cae8e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7a94c6ddfdd2fcf1a818497e8a50670b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f2a0a9de6f52cc20879785fc57c18305.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1e4dfbffc7865715d0fb9301605321ca.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7a9b83f8f8898506e5ee4ceab7711c9a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4523c7f2f1609341dd2134a0c78c92c1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/60d51242fb2d1382cd5ab761c190b115.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/11260788c3aa47f5581e00e6d5e59b54.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/803bb4c662d1f7199e4ec1d2fb6c67a6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5f565659c3931f06e1b455147e62d786.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/76ac62587a180390bfc30e52ec356dad.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0733351cc13e3d1ca5881a8baf75825f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b7c3d3de4707b972c2325c73e17fd9ff.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/35d70b9e34ca62853a545cd250020c38.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1a99a940a6ee0025f28a2d5f7cdb1055.jpeg" + } + ] + }, + { + "name": "vintage", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a4e335102bf1bd6e2b9a305afff7c9b0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0d7fe05abaa5a041d26b3c0541533f88.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6ff06037f4d076b12755165b6a7d6193.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ef9f0d6e4b10a03dac177cbb523a604f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9d128c185ec7dad48edaa7c4cf7fb454.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4aec8547c98af34ebc57d67b493ac0d2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5e94b6540e298b449f353ed3b87d8a3e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/db1e866c16710fbc440508d4bcea17de.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/627cb249b3d7242137cce2d784b8910e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/33ee8a5d07512b9b69b43f1dcd7cc399.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c3a53d3835e57f7d53ac9c6d6e7f5a20.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d167bab1cc3576e191cbb3d21e232545.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4c552903b0b3f24b99972ba3b5d0467f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ffea8aee4ddcacb5c2c12b0714de0064.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7bd3651534505865768a41186fd43edb.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/47c2398a9bb3db21d576d175d630d7fe.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aeae50ccc5706f393474377ec2b42ae9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1b9c9b757cbdeb393123e1b75266cffe.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/82eb738f141e96d0e3e1884a70be1ca8.png", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ccc963d3b9f3300e2e56416315d32ab6.png" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/61f819aae816fa17d62d42d37682253d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cc5d59a4a497ca7f11250323bb769238.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b5ab2d84b63b8c764948baccd1e0015b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/feba604471df0dc5848111a2545a076b.jpeg" + } + ] + }, + { + "name": "cool", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/de36a2eae65bb24a433f22d2de2adf2f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0d183f9e2cc4ad2626d58bf60ef423e6.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a20e94ca11bb25ebc503cceec6d0c5e7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/88ecb69e2550ebf777a88abf01de1f2e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ddcf276287ac75721da30e8c24461c3c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2ea3abfc5c9baa37f378ab1fdfab799f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/88f924da6824864c1156dd97bacf7c35.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ee5004db5978f9d7059dd3681cf99a56.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5391baec5bd947645769fdbcef1128ec.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/51d7ff7c4da20514db539948a4a6b504.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/baacd8f8dff00ec758cace5162849cda.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f639c30d0f8b49877f28b2856a12a6dd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/216eb2ad5c7318059d059b6b284c6256.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/87b276d277f0a0801a7a73115b8f8339.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3769a8d85bf2a44b3e33a151fba6e7cd.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9d6172a42751e8e7ed4aa93d1d2b9ec3.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9cd4fe339962adbd585d58720d4de887.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a66eefb8551a921992f2bd0ed913019a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c89a66f600f4d5e071307c3c3f22a3c4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6d231ce5bfdbb27c3a9c8500c508dd42.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/46b2930bb250e6d7303ab228bd81bcf2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/94516cde7ff28a78c5a62d4bf90b9384.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1f1a981b7ed89583b4cb33e71a871f7d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/57a7b96592ac4680e64c710ab2d217a6.jpeg" + } + ] + }, + { + "name": "variety", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3a5965c4291dba859c4b7f0b196f99c2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe57f912ce3eedf20716b20335b92a7a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7093c9ea05fbb9bb4fd8be87a8af041b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2445c1787df6f1a51d19e26a3570e436.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/908c7860823095f08247c4158ba011aa.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e218f76794541caffa8027b733bf3676.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fa731cf59f18302d6bdb189a26031119.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5274fcd6fc0ef50beeeaf0fb4e8e78ea.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/895b89bc421d1514df6dcbda0da4f4a6.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c80f7ba5ab767c7459ffa7a0c388aee8.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b90aaaac8051a9320ea2b8fd07fe9cf.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bba3c29c5ab6be1194cb507f0a94b5ab.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c279e2829627f782e339e009ca5b84a0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a79227e004068089ca5045956aa2088d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c195c51c3b96f33ac051f70d326e6f0c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7c777e7505e8acb396b99d58a99c0983.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c3839e6ff72616b892bc5bcc10147978.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cdcf780e77064eda1639bf7eb2112474.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e010bdec2284a4f87ba6c877bb5d6895.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/52edba408b78347b8d69643c757e3ba2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/640d8efb9ce80054ac4f845f7475e502.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/75f60f1d9d20cd0ed1c3e0ba3e6dc99a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/87e895e7a19b8199772d84b132b76ea3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2f02ba03cefac28c9c789269e96aa7ea.jpeg" + } + ] + }, + { + "name": "funny", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1bd4c32c2eb2045a19c4cf7afb8201d4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b2e70fdc63bcefd5846f136da3975f9c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a6e1d83a81c9fb4b6d097e1043a6a4f5.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/be7eb4106be52e5b730e4bff290bae5e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b9750ff29195ca1dd4ef7ceb38d5b56b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/73b3495c68855ea21391c277ef22e312.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/76cbdf98de9f34378403e6f17618f263.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/61a5f6c9f67c1f8d3bf4d9caffbed733.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/84f04ce55831a3eb890fb46025358ab1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aa8e48bd3c60698d0182478a1ea3047a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1311486df5ef8bdacbf46ef0640d1f39.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3114deb49156e265456d5de847f29888.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bb29f1548a8d91b3c8a2e082b7811b2b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0e19eb84464f916efb6a2923aa59b670.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/00a4b802065bf46110b1f00b75d80c80.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0ac0ce978c0fdcea940ada487b2f1471.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9162aa7142cfaa0c071290a0bbd33332.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ca19cc252008b9b05c520622e518d180.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7ee58abfa954b1f994be248ff395748f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/688d4d91e6e549cce42ebad2531554c5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/906c48ba4f4c1cc38e6d09b1d62c5db4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6a3f2a2e0d292e1032b448b7b2e70f80.jpeg" + } + ] + }, + { + "name": "food", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3a49c824f553e1b8f2ce743cb89e1b6c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d04ee07feb44c02fcf92a7c3094370fb.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e179a42603816c94881758eb6cc90a0e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/729bb3e1426112a67bc0d2dae72a93db.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/60ff000d48098f62835d1358952bf6e9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/700c76c6e567389530c6fa0cf774da9a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4fd7d9fcf1ab0b6411a49846692818fd.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0f26e2098bf875385374c2c55fd14d4f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5249da171aa91da5baae3721bfc822d1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/69ae743f1d5a74e02fb7eb3ee9e8d057.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a1534580d5711ec78e7a683cc35b4e1f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ec3e8179ff5302a0e0d375ecbcc8b7ea.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/74f39c37bf335669fcdd29ac89415d47.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/29362f69099ba10814b62117ff258b7d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8cee4aab3b689ed2d443c94e9122ea92.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3e7c4dc9209bd160631e86a7a1a87286.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ce6ce9abe8f5b8c7618de82134d693c9.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5045c152e13740dd89eafd6ec274c27a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/38ea2efbeb2c443a93e0131744153296.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d3e08c528e6161ad4d154298c873d1d4.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/67dbb27ea7084211565bc7b3b63bcf34.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/09d937e5c4ff029f12a2cf7dc6eb434e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ebdf88d758aba67587da3376314deb6d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/41e74000704cac41ee522c7a80ea0775.jpeg" + } + ] + }, + { + "name": "fashion", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f90e441b77b209c856bb2441ba11bac4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d9fb7a20ef94b3c8379eeabd2f085211.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f0dd50d0798e263d823aba83273bba98.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5d75ca250acd762ca2d89eb1ed6cb487.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e56ed858a1161f4b9874b902e29eae37.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e0119cea3b136e70f4ccdd681ea0e223.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4972ade2f6db7be9bf95f7348cf03da4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cb81b09ab2e4bdf3750e4058c7b0af27.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b9f6670d29d24ba4762ebc372370f335.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/17fe24b464ddc35fea4ef9c025e6a69e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2cdfce4e3e9fe240526a6ad730f5d071.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e6221778a9c25540ef8f3382ee12807b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a9d3c14f1e5740cc94e77b552e62df34.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/036cdc5d2cf39de637ebf9d44ef5bfd5.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b77e1f397318a4fd87ad6a4a3c6e4597.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f138506cebe6eb23bde3ecb370490b9c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a85152d6da2f97f19e8af2681ceafb8e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d3dd0ee3efd4f5eda92bf9e16552cfd2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/aba4d5d2d042a1a4ce13186191259064.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a898aa764cb00904fcf931457f311c74.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/012d6514e4fbe9c4f8adb09c1c8217cf.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/20da7c9ff6bac4a0507730ab085d0276.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1e543ee1d00a131313c643d7829ae409.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/61d6607f1ef469f0e16f2e669c99f1c0.jpeg" + } + ] + }, + { + "name": "sad", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c59007c4e8b3befb96dbecb3ec326cc1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3670282caa3a1b93913827c103476de4.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e7f63cd08f8423e5a5a3c61792b07edc.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bdebd3e30c241102b934bb234ff4d92f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/42b952b7430e53357e45e6cb2979ac13.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d6490b20fc2cfb9ade732bb102d3cb51.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fa62119a8e04bcebd9421f17b90aa59b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0611515911379560822c9e6d9e787a64.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e405f89382e18a796bab87e814443eee.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4998f833da2e6a0293011b8f805f020e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/36abff7c2a2e9f4ed262dcee0da8c09b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/592ca47d7613a9b1400c97a92eb703f2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e92c7a3b497c7d8ce19d6199d31d9759.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cd1f86273839039caa5e6f9f707a02fd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b0458b2d5c5653ff80c91d54ae57b2e3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0d3ad7ebeaf33889f3f6d8280c8a9afb.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4ffb3bd29fa36658369099394e167097.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/faf97d8da37fbfc15b1992cbb008aac0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/83f0e93536f1784c59707c0a6ba3ed1f.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6bfbf1691de50e9fc73391e3ec396310.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/36e2cb743fc120c4a75dee03698d801e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1716f146e51f29199c0f770148cc00cc.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/04c475032316832603bd1f38a2363cdf.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ea8afeb57997af979381e37d5e9be0c1.jpeg" + } + ] + }, + { + "name": "music", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d5f3a2230952dab694ff0a80825e0a9d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ba895bdb432d5ae1315777e89f07b2de.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4e00c5c27d654d387eb0404cb8575d73.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/5f678a5d03d3014bd1969644a5156510.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8964cb7c75335a8a90f6041956bc94ed.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/98083dfbb3738a921edbc63196563f5a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7da01d53569bb1f729bc855dd8d14404.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8b2788065e441b40a9ccc1e2e41d4492.jpeg" + } + ] + }, + { + "name": "fruit", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e0f64bd789ef513368865c9f42adfaab.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/25defad4df6676943fee66672cd9c469.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e1ae912e5e0030affd65c583c4321998.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ff08fd34f805d05f9776ddb4fa2a7ad8.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ae98d28e4ac9824cfe0d671040d194d7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b98cb3d2ade3616c2532bf9459bfaf99.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b12bd41dd726de691b16443ba3f06d82.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0017adb2d38e5f159bd0350f877ea3a0.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6540e511e91f0093f05b610409601be4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/eb955cf15c609e5bb57e8ed662348c3c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bc03252924ae3a4c1cc794df936cd77d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0631abdeb23092407d411c8e0834c196.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/6378ec9bd2d1e70396d9a44db7008d54.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fe881a47d03c1cb53c5874ba6c94285f.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4ab4f8a6bb0a56dcc76e0e53b48b911b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/25eb55daab8bd1f5c1b14446fe5be06a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2781497ed0195127a47cc5b8b34668c3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c0532f5abab55cc1610255df734a2a78.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/85e26ed88c6d18dce4872769e80796f7.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e09e0f24a54316d3344e42780300d614.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4aaef12d9c74531eb2ec62ab56bc37eb.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2482e85608716f9853f663082c75dedb.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2d8aaaca5f4caf78161030a0ca4274ed.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/dd17f7ab449f794a80401f3155fe6fae.jpeg" + } + ] + }, + { + "name": "doll", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8adbcdd5abe61cc2210d8d5bdc7343e8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/cf99a915f6e25f8a84edb0297ae5d5a7.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e2ed2dbcfab07dca994c5cf3217e7f8c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ddb711992c372d50034b82a6f0f067d2.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fffa33301cb2db2b3ab7eccc676daeed.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9e11895bab250df96dcb5e7fa474958b.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/09b0f2f877b920d9c1501c9ef7c495b3.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f1072c137a3fc430e727e32669328682.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/24cab25985e1436c0670dbed297f81ac.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4decc3c640f58b7c32032c5ed0645efd.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/82b784b2233efc41d3bb8810e7e0e4ea.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/c92e3bf720cba63a6a79a35284e36503.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7b528247d7100c4cb519449649061ce2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/f6301e84a178fbb9c14cd845ae792f80.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4f8040373d107d763be6b12e919238ba.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2fa9a6ccb3d4da84a33ea7b94a483383.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/fc5e2c714ad8aa63e481ca7f0cb37ab8.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/0bbb81043954c46c29b18997cb639d91.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/297b9e0dc7de746b8672a98e82b1699e.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/3f04dfa84f0540398ad67207049cfb86.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/a4337c6bc9797cb0faa5a1730ff74b99.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/58a3b4f474808498b686513246f4e3f1.jpeg" + } + ] + }, + { + "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/30448f7b2fe2bcdf037fc3d1fc971751.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/998df3180fbf701806e8fcdff50880fc.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2db8de8bbe2acc13e0f7b7452a31833d.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/465ed2353065dbc9098bf64823262a1e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8ed6ea3550e3d3d7adca4328f506381b.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/93ecd796e16f464e869745f440f7839c.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/00512009f5e53b7ffac175a4b7b0618c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/4cce389659d496e6ab2fd1f466ce3e76.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/480c91421eda56398ed556d28272114a.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/24e0c9ac9ff4583da5e351d5cd1b0daf.jpeg" + } + ] + }, + { + "name": "winter", + "list": [ + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/028622eed6c6083a721b5c6af19053d1.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/8497b431b92946723d7acbd1c9836bde.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1eec46be4f654c35ed397b2568bbf410.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1d07ac78611b1db85b8826c9967574d1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d916afda03ba32585ffe6d7f897fd661.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d766b69fd8c55aaaec08b1ca02c2c17d.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/9a6134a89dfac42a68926d4e3d9c70b2.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/48cd11897f62379515372db56a6a7762.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/1da4fbbe758c19cb206595e393394c1c.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/d30a0ccf42310927ad69b5a5c20cdf93.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/bdd777b683f7ea3a509266f857f97785.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ea5ec14e13fa770ae4b8168dd16fc0ea.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/992dceec08dde4d52738bd31845a49f4.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/e4c6d7987095324dbc8c09eab7e5951a.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2716b330d331e70f2bd680346657d613.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/b24128631722adf1254656b55e7ac00e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/2add050d3ae6eb6554c32249b3827201.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/29578210653139b4c79e1b52588c36e1.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/07f63ca35a1b68cbfbc1e4c7515fb3ce.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/ff4bb7c4731acbe4272428b962328b4e.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/81624255e2178f2dcd5c337ed49ce491.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/7a747ec73145e5c3e55d8c3725db8640.jpeg" + }, + { + "sourceUrl": "https://resource-sg-public.lux-ad.com/wallpaper/95cd62290787005d255eb4bdd832f4b0.jpeg", + "preUrl": "https://resource-sg-public.lux-ad.com/wallpaper/312c2c3b0f4d9c1f15a0ba27b8554a39.jpeg" + } + ] + } +] \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/donwload/ImageDownloadTask.java b/app/src/main/java/com/app/wallpaper/donwload/ImageDownloadTask.java new file mode 100644 index 0000000..f6ee8dd --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/donwload/ImageDownloadTask.java @@ -0,0 +1,65 @@ +package com.app.wallpaper.donwload; +import android.annotation.SuppressLint; +import android.app.Activity; +import android.content.Context; +import android.net.Uri; +import android.os.AsyncTask; +import android.util.Log; +import android.view.View; +import android.widget.Toast; + +import com.app.wallpaper.R; +import com.app.wallpaper.getdata.SetData; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.net.URL; + +public class ImageDownloadTask extends AsyncTask { + @SuppressLint("StaticFieldLeak") + private Context context; + private Activity activity; + public ImageDownloadTask(Context context, Activity activity) { + this.context = context; + this.activity = activity; + } + @Override + protected Boolean doInBackground(String... params) { + String imageUrl = params[0]; + HttpURLConnection connection = null; + try { + URL url = new URL(imageUrl); + connection = (HttpURLConnection) url.openConnection(); + connection.connect(); + int responseCode = connection.getResponseCode(); + if (responseCode == HttpURLConnection.HTTP_OK) { + InputStream inputStream = connection.getInputStream(); + Uri uri = a.saveToGallery(SetData.getContext(), inputStream); + if(uri == null){ + return false; + } + return true; + } else { + Log.e("ImageDownloadTask", "Server returned HTTP " + responseCode + " " + connection.getResponseMessage()); + } + } catch (Exception e) { + Log.e("ImageDownloadTask", "Error downloading image", e); + } finally { + if (connection != null) { + connection.disconnect(); + } + } + return false; + + } + @Override + protected void onPostExecute(Boolean result) { + if(activity != null&& !activity.isFinishing() && !activity.isDestroyed()){ + activity.findViewById(R.id.progressbar1).setVisibility(View.GONE); + if (result) { + + Toast.makeText(context, "Image downloaded successfully", Toast.LENGTH_SHORT).show(); + } else { + Toast.makeText(context, "Failed to download image", Toast.LENGTH_SHORT).show(); + }} + } +} diff --git a/app/src/main/java/com/app/wallpaper/donwload/a.java b/app/src/main/java/com/app/wallpaper/donwload/a.java new file mode 100644 index 0000000..81397a9 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/donwload/a.java @@ -0,0 +1,64 @@ +package com.app.wallpaper.donwload; + +import android.content.ContentResolver; +import android.content.ContentValues; +import android.content.Context; +import android.net.Uri; +import android.os.Build; +import android.provider.MediaStore; +import android.util.Log; + +import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; +import java.io.OutputStream; + +public class a { + public static Uri saveToGallery(Context context, InputStream inputStream) { + String displayName = System.currentTimeMillis()+".jpg"; + ContentValues contentValues = new ContentValues(); + Log.d("-----------------", "saveToGallery: "+displayName); + contentValues.put(MediaStore.Images.Media.DISPLAY_NAME, displayName); + contentValues.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg"); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + contentValues.put(MediaStore.Images.Media.IS_PENDING, 1); + } + + Uri collectionUri; + ContentResolver contentResolver = context.getContentResolver(); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + collectionUri = MediaStore.Images.Media.getContentUri(MediaStore.VOLUME_EXTERNAL_PRIMARY); + } else { + collectionUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; + } + + Uri imageUri = contentResolver.insert(collectionUri, contentValues); + if (imageUri == null) { + return null; + } +// InputStream inputStream = null; + OutputStream outputStream = null; + try { + int byteLength = 0; + byte[] bytes = new byte[4096]; + outputStream = contentResolver.openOutputStream(imageUri); +// inputStream = new FileInputStream(photoFile); + while ((byteLength = inputStream.read(bytes)) != -1) { + outputStream.write(bytes, 0, byteLength); + } + inputStream.close(); + outputStream.close(); + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + contentValues.clear(); + contentValues.put(MediaStore.Images.Media.IS_PENDING, 0); + contentResolver.update(imageUri, contentValues, null, null); + } + return imageUri; + + } catch (Exception exception) { + + return null; + } + } +} diff --git a/app/src/main/java/com/app/wallpaper/getdata/GetWalls.java b/app/src/main/java/com/app/wallpaper/getdata/GetWalls.java new file mode 100644 index 0000000..d7011b8 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/getdata/GetWalls.java @@ -0,0 +1,17 @@ +package com.app.wallpaper.getdata; + +import java.io.Serializable; +import java.util.List; + +public class GetWalls implements Serializable { + private String name; + private List list; + + public String getName() { + return name; + } + + public List getList() { + return list; + } +} diff --git a/app/src/main/java/com/app/wallpaper/getdata/ReadFile.java b/app/src/main/java/com/app/wallpaper/getdata/ReadFile.java new file mode 100644 index 0000000..7c5bb7f --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/getdata/ReadFile.java @@ -0,0 +1,36 @@ +package com.app.wallpaper.getdata; + +import android.content.Context; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; +import java.io.StringWriter; +import java.nio.charset.StandardCharsets; + +public class ReadFile { + public static String getCovertStr(InputStream stream) { + + String covertStr = ""; + try { + StringWriter writer = new StringWriter(); + char[] buffer = new char[stream.available()]; + Reader reader = new BufferedReader(new InputStreamReader(stream, StandardCharsets.UTF_8)); + int a = 0; + while ((a = reader.read(buffer)) != -1) { + writer.write(buffer, 0, a); + } + covertStr = writer.toString(); + } catch (IOException e) { + return covertStr; + } + return covertStr; + } +//// + public static int dp2Px(int dp) { + float scale = SetData.context.getResources().getDisplayMetrics().density; + return (int) (dp * scale + 0.5f); + } +} diff --git a/app/src/main/java/com/app/wallpaper/getdata/SetData.java b/app/src/main/java/com/app/wallpaper/getdata/SetData.java new file mode 100644 index 0000000..b3ad93b --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/getdata/SetData.java @@ -0,0 +1,71 @@ +package com.app.wallpaper.getdata; + +import android.app.AlertDialog; +import android.app.Application; +import android.content.Context; +import android.content.DialogInterface; +import android.view.LayoutInflater; +import android.view.View; + + +import com.app.wallpaper.R; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; + +import java.io.IOException; +import java.io.InputStream; +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + + +public class SetData extends Application { + + private static final List AllWalls=new ArrayList<>(); + private static final List dataUrls=new ArrayList<>(); + static Context context; + public static final String abc="app_database"; + public static final int vs=1; + + + public static Context getContext() { + return context; + } + + @Override + public void onCreate() { + super.onCreate(); + context = getBaseContext(); + try { + InputStream open = getAssets().open("test_new.json"); + String covertStr = ReadFile.getCovertStr(open); + if (!covertStr.isEmpty()) { + Gson gson = new Gson(); + Type type = new TypeToken>() { + }.getType(); + List catas=gson.fromJson(covertStr,type); + for (GetWalls categories:catas){ + AllWalls.add(categories); + for (Urldata urldata:categories.getList()){ + dataUrls.add(urldata); + } + + } + + } + + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + + public static List getDataUrls() { + return dataUrls; + } + + public static List getCataDatas() { + return AllWalls; + } +} diff --git a/app/src/main/java/com/app/wallpaper/getdata/Urldata.java b/app/src/main/java/com/app/wallpaper/getdata/Urldata.java new file mode 100644 index 0000000..25de014 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/getdata/Urldata.java @@ -0,0 +1,16 @@ +package com.app.wallpaper.getdata; + +import java.io.Serializable; + +public class Urldata implements Serializable { + private String sourceUrl; + private String preUrl; + + public String getSourceUrl() { + return sourceUrl; + } + + public String getPreUrl() { + return preUrl; + } +} diff --git a/app/src/main/java/com/app/wallpaper/myOnitem/OnFavority.java b/app/src/main/java/com/app/wallpaper/myOnitem/OnFavority.java new file mode 100644 index 0000000..8363d21 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myOnitem/OnFavority.java @@ -0,0 +1,7 @@ +package com.app.wallpaper.myOnitem; + +import com.app.wallpaper.mydao.MyEntity; + +public interface OnFavority { + public void OnitemClick(MyEntity myEntity,int Id); +} diff --git a/app/src/main/java/com/app/wallpaper/myOnitem/OnItemHome.java b/app/src/main/java/com/app/wallpaper/myOnitem/OnItemHome.java new file mode 100644 index 0000000..be1fa68 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myOnitem/OnItemHome.java @@ -0,0 +1,5 @@ +package com.app.wallpaper.myOnitem; + +public interface OnItemHome { + public void OnitemClick(int position); +} diff --git a/app/src/main/java/com/app/wallpaper/myOnitem/OnLoaditem.java b/app/src/main/java/com/app/wallpaper/myOnitem/OnLoaditem.java new file mode 100644 index 0000000..9d93cea --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myOnitem/OnLoaditem.java @@ -0,0 +1,5 @@ +package com.app.wallpaper.myOnitem; + +public interface OnLoaditem { + public void OnitemClick(int cataId,int position); +} diff --git a/app/src/main/java/com/app/wallpaper/myact/LoginActivity.java b/app/src/main/java/com/app/wallpaper/myact/LoginActivity.java new file mode 100644 index 0000000..3616a05 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myact/LoginActivity.java @@ -0,0 +1,59 @@ +package com.app.wallpaper.myact; + +import android.animation.ValueAnimator; +import android.content.Intent; +import android.os.Bundle; +import android.os.Handler; +import android.os.Looper; +import android.view.animation.DecelerateInterpolator; + +import androidx.activity.EdgeToEdge; +import androidx.appcompat.app.AppCompatActivity; +import com.app.wallpaper.databinding.ActivityLogin2Binding; + +public class LoginActivity extends AppCompatActivity { + private ActivityLogin2Binding binding; + private Handler handler = new Handler(); + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + binding = ActivityLogin2Binding.inflate(getLayoutInflater()); + setContentView(binding.getRoot()); + EdgeToEdge.enable(this); + handler.postDelayed(new Runnable() { + @Override + public void run() { + // 使用 ValueAnimator 创建进度条动画 + ValueAnimator animation = ValueAnimator.ofInt(0, binding.progressBar.getMax()); + animation.setDuration(2500); // 动画时长 + animation.setInterpolator(new DecelerateInterpolator()); // 减速插值器 + animation.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { + @Override + public void onAnimationUpdate(ValueAnimator animation) { + binding.progressBar.setProgress((int) animation.getAnimatedValue()); + } + }); + animation.start(); + // 动画结束后跳转到新页面 + animation.addListener(new android.animation.Animator.AnimatorListener() { + @Override + public void onAnimationStart(android.animation.Animator animation) {} + + @Override + public void onAnimationEnd(android.animation.Animator animation) { + Intent intent = new Intent(LoginActivity.this, MainActivity.class); + startActivity(intent); + finish(); // 可选:结束当前 Activity + } + @Override + public void onAnimationCancel(android.animation.Animator animation) {} + + @Override + public void onAnimationRepeat(android.animation.Animator animation) {} + }); + } + }, 1000); + } + +} \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/myact/MainActivity.java b/app/src/main/java/com/app/wallpaper/myact/MainActivity.java new file mode 100644 index 0000000..ff13b1e --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myact/MainActivity.java @@ -0,0 +1,80 @@ +package com.app.wallpaper.myact; + +import android.Manifest; +import android.app.Activity; +import android.content.pm.PackageManager; + +import android.os.Build; +import android.os.Bundle; + +import android.view.MenuItem; + + +import androidx.activity.EdgeToEdge; +import androidx.annotation.NonNull; +import androidx.appcompat.app.AppCompatActivity; +import androidx.core.app.ActivityCompat; +import androidx.core.graphics.Insets; +import androidx.core.view.ViewCompat; +import androidx.core.view.WindowInsetsCompat; +import androidx.fragment.app.Fragment; +import androidx.viewpager.widget.ViewPager; + +import com.app.wallpaper.R; +import com.app.wallpaper.databinding.ActivityMainBinding; +import com.app.wallpaper.myada.MainFragmentAddapter; +import com.app.wallpaper.myfra.HomeFragment; +import com.app.wallpaper.myfra.MyfavFragment; +import com.google.android.material.navigation.NavigationBarView; +import com.google.android.material.tabs.TabLayout; +import com.google.android.material.tabs.TabLayoutMediator; + +import java.util.ArrayList; +import java.util.List; + +public class MainActivity extends AppCompatActivity { + private ActivityMainBinding binding; + private final List mfragmentList = new ArrayList<>(); + private static final int STORAGE_PERMISSION_CODE = 1; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + EdgeToEdge.enable(this); + binding = ActivityMainBinding.inflate(getLayoutInflater()); + binding.getRoot(); + setContentView(binding.getRoot()); + checkPermission(this, STORAGE_PERMISSION_CODE); + mfragmentList.add(new HomeFragment()); + mfragmentList.add(new MyfavFragment()); + MainFragmentAddapter myFragmentAdapter = new MainFragmentAddapter(MainActivity.this, mfragmentList); + binding.viewPager.setAdapter(myFragmentAdapter); + new TabLayoutMediator(binding.tabLayout, binding.viewPager, new TabLayoutMediator.TabConfigurationStrategy() { + @Override + public void onConfigureTab(@NonNull TabLayout.Tab tab, int position) { + if (position == 0) { + tab.setIcon(R.drawable.ic_home); + } else { + tab.setIcon(R.drawable.frame_3_); + } + } + }).attach(); + } + + private boolean checkPermission(Activity mActivity, int requestCode) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + return true; + } else { + if (mActivity.checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { + ActivityCompat.requestPermissions( + mActivity, + new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, + requestCode + ); + return false; + } else { + return true; + } + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/myact/ViewActivity.java b/app/src/main/java/com/app/wallpaper/myact/ViewActivity.java new file mode 100644 index 0000000..dfb6e1e --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myact/ViewActivity.java @@ -0,0 +1,272 @@ +package com.app.wallpaper.myact; + +import static androidx.databinding.adapters.ViewBindingAdapter.setPadding; + +import android.annotation.SuppressLint; +import android.app.WallpaperManager; +import android.content.ContentResolver; +import android.content.ContentValues; +import android.content.Context; +import android.content.Intent; +import android.graphics.Bitmap; +import android.graphics.Insets; +import android.graphics.drawable.Drawable; +import android.net.Uri; +import android.os.AsyncTask; +import android.os.Build; +import android.os.Bundle; +import android.provider.MediaStore; +import android.util.Log; +import android.view.View; +import android.view.WindowInsets; +import android.widget.Toast; + +import androidx.activity.EdgeToEdge; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentPagerAdapter; + +import com.app.wallpaper.R; +import com.app.wallpaper.databinding.ActivityViewBinding; +import com.app.wallpaper.donwload.ImageDownloadTask; +import com.app.wallpaper.getdata.SetData; +import com.app.wallpaper.mydao.AppDatabase; +import com.app.wallpaper.mydao.InterfaceDao; +import com.app.wallpaper.mydao.MyEntity; +import com.app.wallpaper.myfra.ViewFragment; +import com.bumptech.glide.Glide; +import com.bumptech.glide.request.target.CustomTarget; +import com.bumptech.glide.request.transition.Transition; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.OutputStream; + +public class ViewActivity extends AppCompatActivity { + private ActivityViewBinding binding; + private int position, cataId, Id,position1; + private WallpaperManager wallpaperManager; + private String sourUrl; + private InterfaceDao interfaceDao; + private AppDatabase appDatabase; + private MyEntity myEntitys = new MyEntity(); + private ImageDownloadTask downloadTask; + + @SuppressLint("CheckResult") + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + EdgeToEdge.enable(this); + binding = ActivityViewBinding.inflate(getLayoutInflater()); + setContentView(binding.getRoot()); + intenttData(); + wallpaperManager = WallpaperManager.getInstance(this); + appDatabase = AppDatabase.getDatabase(this); + if (cataId != 0) { + sourUrl = SetData.getCataDatas().get(cataId).getList().get(position).getSourceUrl(); + } else { + sourUrl = SetData.getDataUrls().get(position).getSourceUrl(); + } + showView(); + interfaceDao = appDatabase.interfaceDao(); + initJudge(); + binding.back.setOnClickListener(view -> finish()); + setButtonLisenner(); + } + + private void intenttData() { + position1 = getIntent().getIntExtra("position1", 0); + if (position1 != 0) { + position = position1; + }else { + position = getIntent().getIntExtra("position", 0); + } + cataId = getIntent().getIntExtra("cataId", 0); + Id = getIntent().getIntExtra("Id", -100); + myEntitys = (MyEntity) getIntent().getSerializableExtra("imageUrl"); + } + + private void initJudge() { + new Thread(new Runnable() { + public void run() { + if (myEntitys != null) { + MyEntity myEntity = interfaceDao.getImageSou(myEntitys.imageSou); + if (myEntity != null) { + binding.likeImg.setBackgroundResource(R.drawable.likede_ic); + } + } else { + MyEntity myEntity = interfaceDao.getImageSou(sourUrl); + if (myEntity != null) { + binding.likeImg.setBackgroundResource(R.drawable.likede_ic); + } + } + } + }).start(); + + } + private void setButtonLisenner() { + binding.donwload.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (sourUrl != null) { + downloadTask = new ImageDownloadTask(getBaseContext(), ViewActivity.this); + downloadTask.execute(sourUrl); + binding.progressbar1.setVisibility(View.VISIBLE); + } else { + Toast.makeText(ViewActivity.this, "Failed to download image...", Toast.LENGTH_SHORT).show(); + } + } + }); + binding.apply.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + loadPreview(sourUrl); + binding.progressbar1.setVisibility(View.VISIBLE); + } + }); + binding.like.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + new Thread(new Runnable() { + @Override + public void run() { + if (myEntitys == null) { + MyEntity myEntity1 = interfaceDao.getImageSou(sourUrl); + if (myEntity1 == null) { + if (cataId==0) { + MyEntity myEntity = new MyEntity(); + myEntity.setImagePre(SetData.getDataUrls().get(position).getPreUrl()); + myEntity.setImageSou(sourUrl); + new InsertImageTask().execute(myEntity); + }else { + MyEntity myEntity = new MyEntity(); + myEntity.setImagePre(SetData.getCataDatas().get(cataId).getList().get(position).getPreUrl()); + myEntity.setImageSou(sourUrl); + new InsertImageTask().execute(myEntity); + } + runOnUiThread(new Runnable() { + @Override + public void run() { + binding.likeImg.setBackgroundResource(R.drawable.likede_ic); + Toast.makeText(ViewActivity.this, "Added successfully", Toast.LENGTH_SHORT).show(); + } + }); + } else { + interfaceDao.deleteUser(myEntity1); + runOnUiThread(new Runnable() { + @Override + public void run() { + binding.likeImg.setBackgroundResource(R.drawable.like); + Toast.makeText(ViewActivity.this, "Cancel successfully", Toast.LENGTH_SHORT).show(); + } + }); + } + } else + { + MyEntity myEntity2 = myEntitys; + interfaceDao.deleteUser(myEntity2); + runOnUiThread(new Runnable() { + @Override + public void run() { + binding.likeImg.setBackgroundResource(R.drawable.like); + Toast.makeText(ViewActivity.this, "Cancel successfully", Toast.LENGTH_SHORT).show(); + } + }); + } + + } + }).start(); + } + }); + binding.share.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent shareIntent = new Intent(Intent.ACTION_SEND); + shareIntent.setType("text/plain"); // 设置分享内容的类型为图片 + shareIntent.putExtra(Intent.EXTRA_TEXT, sourUrl); // 可以添加URL文本 + startActivity(Intent.createChooser(shareIntent, "Share pictures")); + } + }); + } + + @SuppressLint("StaticFieldLeak") + private class InsertImageTask extends AsyncTask { + @Override + protected Void doInBackground(MyEntity... myEntities) { + appDatabase.interfaceDao().insert(myEntities[0]); + return null; + } + + @Override + protected void onPostExecute(Void aVoid) { + + } + } + private void showView() { + ViewFragment viewFragment; + if (myEntitys == null) { + if (cataId == 0) { + viewFragment = ViewFragment.newInstance(SetData + .getDataUrls().get(position).getSourceUrl()); + } else { + viewFragment = ViewFragment.newInstance(SetData. + getCataDatas().get(cataId).getList(). + get(position).getSourceUrl()); + } + } else { + viewFragment = ViewFragment.newInstance(myEntitys.getImageUrl2()); + } + binding.viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { + @NonNull + @Override + public Fragment getItem(int position) { + return viewFragment; + } + + @Override + public int getCount() { + return 1; + } + }); + } + + private void loadPreview(String preURl) { + Glide.with(this) + .asBitmap() + .load(preURl) + .into(new CustomTarget() { + @Override + public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition transition) { + binding.progressbar1.setVisibility(View.VISIBLE); + setPhoneWallpaper(resource); + } + @Override + public void onLoadCleared(@Nullable Drawable placeholder) { + binding.progressbar1.setVisibility(View.GONE); + } + }); + } + private void setPhoneWallpaper(Bitmap bitmap) { + try { + wallpaperManager.setBitmap(bitmap); + finish(); + Toast.makeText(this, "Setting wallpaper successfully", Toast.LENGTH_SHORT).show(); + binding.progressbar1.setVisibility(View.GONE); + } catch (IOException ioException) { + Toast.makeText(this, "Setting failed, ", Toast.LENGTH_SHORT).show(); + } + } + + + @Override + protected void onDestroy() { + super.onDestroy(); + if (downloadTask != null && !downloadTask.isCancelled()) { + downloadTask.cancel(true); + } + } + +} \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/myada/LoadDataAdapter.java b/app/src/main/java/com/app/wallpaper/myada/LoadDataAdapter.java new file mode 100644 index 0000000..a584ba3 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myada/LoadDataAdapter.java @@ -0,0 +1,136 @@ +package com.app.wallpaper.myada; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.app.wallpaper.R; +import com.app.wallpaper.getdata.GetWalls; +import com.app.wallpaper.getdata.ReadFile; +import com.app.wallpaper.getdata.Urldata; +import com.app.wallpaper.myOnitem.OnItemHome; +import com.app.wallpaper.myOnitem.OnLoaditem; +import com.bumptech.glide.Glide; +import com.bumptech.glide.load.resource.bitmap.RoundedCorners; + +import java.util.ArrayList; +import java.util.List; + +public class LoadDataAdapter extends RecyclerView.Adapter { + private static int VIEW_TYPE_1 = 0; + private static final int VIEW_TYPE_2 = 1; + private List datas = new ArrayList<>(); + private final int posi; + private final Context context; + private List urldata = new ArrayList<>(); + private OnItemHome onItemHome; + private OnLoaditem onLoaditem; + + + public LoadDataAdapter(List datas, Context context, int position, List urldata) { + this.datas = datas; + this.context = context; + this.posi = position; + this.urldata = urldata; + } + + public void setInfoWallPaperListener(OnItemHome onItemHome, OnLoaditem onLoaditem) { + this.onItemHome = onItemHome; + this.onLoaditem = onLoaditem; + } + + public static class LoadDataHolder extends RecyclerView.ViewHolder { + public ImageView img_one; + + public LoadDataHolder(@NonNull View itemView, int viewType) { + super(itemView); + if (viewType == VIEW_TYPE_1) { + img_one = itemView.findViewById(R.id.img_one); + } else { + img_one = itemView.findViewById(R.id.img_two); + + } + + } + } + + @NonNull + @Override + public LoadDataHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view; + if (viewType == VIEW_TYPE_1) { + view = LayoutInflater.from(parent.getContext()).inflate(R.layout.rec_item_layout, parent, false); + } else { + view = LayoutInflater.from(parent.getContext()).inflate(R.layout.rec_item_layout2, parent, false); + } + return new LoadDataHolder(view, viewType); + } + + @Override + public void onBindViewHolder(@NonNull LoadDataHolder holder, @SuppressLint("RecyclerView") int position) { + if (posi == 0) { + Glide.with(context) + .load(urldata.get(position).getPreUrl()) + .placeholder(R.drawable.place) + .centerCrop() + .into(holder.img_one); + holder.itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (onItemHome != null) { + onItemHome.OnitemClick(position); + } + } + }); + } else { + Glide.with(context) + .load(datas.get(posi - 1).getList().get(position).getPreUrl()) + .centerCrop() + .placeholder(R.drawable.place) + .into(holder.img_one); + holder.itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (onLoaditem != null) { + onLoaditem.OnitemClick(posi - 1, position); + } + } + }); + } + } + + + @Override + public int getItemViewType(int position) { + int row = position / 2; + if (row % 2 != 0) { + if (position % 2 == 0) { + return VIEW_TYPE_1; // 偶数位置 + } else { + return VIEW_TYPE_2; // 奇数位置 + } + } else { + if (position % 2 == 0) { + return VIEW_TYPE_2; // 偶数位置 + } else { + return VIEW_TYPE_1; // 奇数位置 + } + } + } + + @Override + public int getItemCount() { + if (posi == 0) { + return urldata.size(); + } else { + return datas.get(posi - 1).getList().size(); + } + } +} + diff --git a/app/src/main/java/com/app/wallpaper/myada/LoadDataHolder.java b/app/src/main/java/com/app/wallpaper/myada/LoadDataHolder.java new file mode 100644 index 0000000..e6b77f5 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myada/LoadDataHolder.java @@ -0,0 +1,43 @@ +package com.app.wallpaper.myada; + +import android.view.View; +import android.widget.FrameLayout; +import android.widget.ImageView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.app.wallpaper.R; + +public class LoadDataHolder extends RecyclerView.ViewHolder { + private ImageView img_one; + private ImageView img_two; + private FrameLayout frame_layout; + private FrameLayout frame_layout2; + public LoadDataHolder(@NonNull View itemView,int viewType) { + super(itemView); + + if (viewType==com.app.wallpaper.R.layout.rec_item_layout) { + img_one = itemView.findViewById(R.id.img_one); + frame_layout=itemView.findViewById(R.id.frame_layout); + }else { + img_two = itemView.findViewById(R.id.img_two); + frame_layout2=itemView.findViewById(R.id.frame_layout2); + } + } + + public ImageView getImg_one() { + return img_one; + } + + public ImageView getImg_two() { + return img_two; + } + + public FrameLayout getFrame_layout() { + return frame_layout; + } + public FrameLayout getFrame_layout2() { + return frame_layout2; + } +} diff --git a/app/src/main/java/com/app/wallpaper/myada/MainFragmentAddapter.java b/app/src/main/java/com/app/wallpaper/myada/MainFragmentAddapter.java new file mode 100644 index 0000000..19f04e4 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myada/MainFragmentAddapter.java @@ -0,0 +1,31 @@ +package com.app.wallpaper.myada; + +import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentActivity; +import androidx.fragment.app.FragmentManager; +import androidx.fragment.app.FragmentPagerAdapter; +import androidx.fragment.app.FragmentStatePagerAdapter; +import androidx.viewpager2.adapter.FragmentStateAdapter; + +import java.util.List; + +public class MainFragmentAddapter extends FragmentStateAdapter { + private final List mfragmentList; + + public MainFragmentAddapter(@NonNull FragmentActivity fragmentActivity, List fragmentList) { + super(fragmentActivity); + this.mfragmentList = fragmentList; + } + + @NonNull + @Override + public Fragment createFragment(int position) { + return mfragmentList.get(position); + } + + @Override + public int getItemCount() { + return mfragmentList.size(); + } +} diff --git a/app/src/main/java/com/app/wallpaper/myada/MyfavorityAdapter.java b/app/src/main/java/com/app/wallpaper/myada/MyfavorityAdapter.java new file mode 100644 index 0000000..bf40106 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myada/MyfavorityAdapter.java @@ -0,0 +1,101 @@ +package com.app.wallpaper.myada; + +import android.annotation.SuppressLint; +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.app.wallpaper.R; +import com.app.wallpaper.getdata.ReadFile; + +import com.app.wallpaper.myOnitem.OnFavority; + +import com.app.wallpaper.mydao.MyEntity; +import com.bumptech.glide.Glide; +import com.bumptech.glide.load.resource.bitmap.RoundedCorners; + +import java.util.List; + +public class MyfavorityAdapter extends RecyclerView.Adapter { + private static int VIEW_TYPE_1 = 0; + private static final int VIEW_TYPE_2 = 1; + private final Context context; + private OnFavority onFavority; + private final List datas; + public MyfavorityAdapter(Context context, List datas) { + this.context = context; + this.datas = datas; + } + public void setInfoWallPaperListener(OnFavority onFavority) { + this.onFavority = onFavority; + } + + public static class LoadDataHolder extends RecyclerView.ViewHolder { + public ImageView img_one; + public LoadDataHolder(@NonNull View itemView, int viewType) { + super(itemView); + if (viewType == VIEW_TYPE_1) { + img_one = itemView.findViewById(R.id.img_one); + } else { + img_one = itemView.findViewById(R.id.img_two); + } + + } + } + @NonNull + @Override + public LoadDataHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view; + if (viewType == VIEW_TYPE_1) { + view = LayoutInflater.from(parent.getContext()).inflate(R.layout.rec_item_layout, parent, false); + } else { + view = LayoutInflater.from(parent.getContext()).inflate(R.layout.rec_item_layout2, parent, false); + } + return new LoadDataHolder(view, viewType); + } + + @Override + public void onBindViewHolder(@NonNull LoadDataHolder holder, @SuppressLint("RecyclerView") int position) { + Glide.with(context) + .load(datas.get(position).getImageUrl1()) + .centerCrop() + .placeholder(R.drawable.ic_fail) + .into(holder.img_one); + holder.itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (onFavority != null) { + onFavority.OnitemClick(datas.get(position),position); + } + } + }); + } + @Override + public int getItemViewType(int position) { + int row = position / 2; + if (row % 2 != 0) { + if (position % 2 == 0) { + return VIEW_TYPE_1; // 偶数位置 + } else { + return VIEW_TYPE_2; // 奇数位置 + } + } else { + if (position % 2 == 0) { + return VIEW_TYPE_2; // 偶数位置 + } else { + return VIEW_TYPE_1; // 奇数位置 + } + } + } + @Override + public int getItemCount() { + return datas.size(); + } + +} + diff --git a/app/src/main/java/com/app/wallpaper/myada/TabPagerAdapter.java b/app/src/main/java/com/app/wallpaper/myada/TabPagerAdapter.java new file mode 100644 index 0000000..547f3fc --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myada/TabPagerAdapter.java @@ -0,0 +1,54 @@ +package com.app.wallpaper.myada; + +import android.util.Log; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentManager; +import androidx.fragment.app.FragmentStatePagerAdapter; +import com.app.wallpaper.getdata.GetWalls; +import com.app.wallpaper.myfra.LoadDataFragment; + +import java.util.ArrayList; +import java.util.List; +public class TabPagerAdapter extends FragmentStatePagerAdapter { + + private List fragmentList=new ArrayList<>(); + private List datas=new ArrayList<>(); + public TabPagerAdapter(@NonNull FragmentManager fm + , List fragmentList + ,List datas) { + super(fm); + this.fragmentList=fragmentList; + this.datas=datas; + } + + @NonNull + @Override + public Fragment getItem(int position) { + + if (position==0){ + return LoadDataFragment.newInstance(position); + }else { + + return LoadDataFragment.newInstance(position); + } + + } + + @Override + public int getCount() { + return fragmentList.size()+1; + } + + @Nullable + @Override + public CharSequence getPageTitle(int position) { + if (position==0){ + return "All"; + }else { + return datas==null?null:datas.get(position-1).getName(); + } + } +} diff --git a/app/src/main/java/com/app/wallpaper/mydao/AppDatabase.java b/app/src/main/java/com/app/wallpaper/mydao/AppDatabase.java new file mode 100644 index 0000000..bf0ccb8 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/mydao/AppDatabase.java @@ -0,0 +1,27 @@ +package com.app.wallpaper.mydao; + +import android.content.Context; + +import androidx.room.Database; +import androidx.room.Room; +import androidx.room.RoomDatabase; + +@Database(entities = {MyEntity.class}, version = 1, exportSchema = false) +public abstract class AppDatabase extends RoomDatabase { + public abstract InterfaceDao interfaceDao(); + + private static volatile AppDatabase INSTANCE; + + public static AppDatabase getDatabase(final Context context) { + if (INSTANCE == null) { + synchronized (AppDatabase.class) { + if (INSTANCE == null){ + INSTANCE = Room.databaseBuilder(context.getApplicationContext(), + AppDatabase.class, "app_database") + .build(); + } + } + } + return INSTANCE; + } +} diff --git a/app/src/main/java/com/app/wallpaper/mydao/InterfaceDao.java b/app/src/main/java/com/app/wallpaper/mydao/InterfaceDao.java new file mode 100644 index 0000000..9e2c7ac --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/mydao/InterfaceDao.java @@ -0,0 +1,26 @@ +package com.app.wallpaper.mydao; + +import androidx.room.Dao; +import androidx.room.Delete; +import androidx.room.Insert; +import androidx.room.Query; + +import java.util.List; + +@Dao +public interface InterfaceDao { + @Insert + void insert(MyEntity myEntity); + + @Query("SELECT * FROM table_image_url") + List getAllImages(); + + @Query("SELECT * FROM table_image_url where imagePre =:url") + MyEntity getImagePre(String url); + + @Query("SELECT * FROM table_image_url where imageSou =:url") + MyEntity getImageSou(String url); + + @Delete + void deleteUser(MyEntity favoriteImage); +} diff --git a/app/src/main/java/com/app/wallpaper/mydao/MyEntity.java b/app/src/main/java/com/app/wallpaper/mydao/MyEntity.java new file mode 100644 index 0000000..280e87c --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/mydao/MyEntity.java @@ -0,0 +1,47 @@ +package com.app.wallpaper.mydao; + +import androidx.room.Entity; +import androidx.room.PrimaryKey; + +import java.io.Serializable; + +@Entity(tableName = "table_image_url") +public class MyEntity implements Serializable { + @PrimaryKey(autoGenerate = true) + public int id; + public String imagePre; + public String imageSou; + + public MyEntity(String imageUrl1, String imageUrl2) { + this.imagePre = imageUrl1; + this.imageSou = imageUrl2; + } + public MyEntity(){ + + } + + public void setId(int id) { + this.id = id; + } + + public void setImagePre(String imageUrl1) { + this.imagePre = imageUrl1; + } + + public void setImageSou(String imageUrl2) { + this.imageSou = imageUrl2; + } + + public int getId() { + return id; + } + + + public String getImageUrl1() { + return imagePre; + } + + public String getImageUrl2() { + return imageSou; + } +} diff --git a/app/src/main/java/com/app/wallpaper/myfra/HomeFragment.java b/app/src/main/java/com/app/wallpaper/myfra/HomeFragment.java new file mode 100644 index 0000000..f2669e5 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myfra/HomeFragment.java @@ -0,0 +1,136 @@ +package com.app.wallpaper.myfra; + +import android.annotation.SuppressLint; +import android.app.AlertDialog; +import android.content.DialogInterface; +import android.content.Intent; +import android.net.Uri; +import android.os.Bundle; + +import androidx.annotation.NonNull; +import androidx.core.view.GravityCompat; +import androidx.drawerlayout.widget.DrawerLayout; +import androidx.fragment.app.Fragment; + +import android.util.Log; +import android.view.LayoutInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; + +import com.app.wallpaper.R; +import com.app.wallpaper.databinding.FragmentHomeBinding; +import com.app.wallpaper.getdata.GetWalls; +import com.app.wallpaper.getdata.ReadFile; +import com.app.wallpaper.getdata.SetData; +import com.app.wallpaper.getdata.Urldata; +import com.app.wallpaper.myOnitem.OnItemHome; +import com.app.wallpaper.myact.ViewActivity; +import com.app.wallpaper.myada.TabPagerAdapter; +import com.bumptech.glide.Glide; +import com.bumptech.glide.load.resource.bitmap.RoundedCorners; +import com.google.android.material.navigation.NavigationView; +import com.google.android.material.tabs.TabLayout; +import com.google.android.material.tabs.TabLayoutMediator; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + + +public class HomeFragment extends Fragment implements OnItemHome { + private FragmentHomeBinding binding; + private DrawerLayout drawerLayout; + private final List mfragmentList = new ArrayList<>(); + private List datas = new ArrayList<>(); + private int position; + private Random random; + private List urldata = new ArrayList<>(); + private NavigationView navigationView; + + @SuppressLint("CheckResult") + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + binding = FragmentHomeBinding.inflate(getLayoutInflater()); + binding.tablay.setupWithViewPager(binding.viewPagerTab); + urldata = SetData.getDataUrls(); + drawerLayout = requireActivity().findViewById(R.id.drawer_layout); + navigationView = requireActivity().findViewById(R.id.nav_view); + navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { + @Override + public boolean onNavigationItemSelected(@NonNull MenuItem item) { + if (item.getItemId() == R.id.about) { + showDialog(); + } else { + Intent intent = new Intent(Intent.ACTION_VIEW); + String packName = requireContext().getPackageName(); + intent.setData(Uri.parse("https://play.google.com/store/apps/details?id=" + packName)); + startActivity(intent); + } + return false; + } + }); + + + random = new Random(); + position = random.nextInt(SetData.getDataUrls().size() - 1); + defautIma(); + setFra(); + binding.viewPagerTab.setAdapter(new TabPagerAdapter(getChildFragmentManager(), mfragmentList, datas)); + binding.homeSetting.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + drawerLayout.openDrawer(GravityCompat.START); + } + }); + binding.img.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Intent intent = new Intent(getContext(), ViewActivity.class); + intent.putExtra("position1", position); + startActivity(intent); + + } + }); + return binding.getRoot(); + } + + private void defautIma() { + Glide.with(this) + .load(urldata.get(position).getSourceUrl()) + .centerCrop() + .placeholder(R.drawable.place) + .into(binding.img); + } + + private void setFra() { + for (int i = 0; i < SetData.getCataDatas().size(); i++) { + mfragmentList.add(new LoadDataFragment()); + } + datas = SetData.getCataDatas(); + + } + + private void showDialog() { + AlertDialog.Builder builder = new AlertDialog.Builder(getContext()); + LayoutInflater inflater = getLayoutInflater(); + View dialogView = inflater.inflate(R.layout.alterdialog, null); + builder.setCustomTitle(dialogView); + builder.setMessage("The current version is 1.0.0") + .setPositiveButton("Confirm", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + } + }); + AlertDialog dialog = builder.create(); + dialog.show(); + } + + @Override + public void OnitemClick(int position) { + Intent intent = new Intent(getContext(), ViewActivity.class); + intent.putExtra("position", position); + startActivity(intent); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/myfra/LoadDataFragment.java b/app/src/main/java/com/app/wallpaper/myfra/LoadDataFragment.java new file mode 100644 index 0000000..6cc69fa --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myfra/LoadDataFragment.java @@ -0,0 +1,79 @@ +package com.app.wallpaper.myfra; + +import android.content.Intent; +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.GridLayoutManager; +import androidx.recyclerview.widget.StaggeredGridLayoutManager; + +import com.app.wallpaper.R; +import com.app.wallpaper.databinding.FragmentContentBinding; +import com.app.wallpaper.getdata.GetWalls; +import com.app.wallpaper.getdata.SetData; +import com.app.wallpaper.myOnitem.OnItemHome; +import com.app.wallpaper.myOnitem.OnLoaditem; +import com.app.wallpaper.myact.ViewActivity; +import com.app.wallpaper.myada.LoadDataAdapter; +import com.app.wallpaper.utils.MyItemDecoration; + +import java.io.Serializable; +import java.util.List; + +public class LoadDataFragment extends Fragment implements OnItemHome, OnLoaditem { + private FragmentContentBinding binding; + private static final String ARG_CONTENT = "content"; + private List urldata; + private int position; + + public static LoadDataFragment newInstance( int position) { + LoadDataFragment fragment = new LoadDataFragment(); + Bundle args = new Bundle(); + args.putInt("position", position); + fragment.setArguments(args); + return fragment; + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + if (getArguments() != null) { +// urldata = (List) getArguments().getSerializable(ARG_CONTENT); + position = getArguments().getInt("position"); + } + } + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {// 替换为你的 Fragment 布局文件 + binding = FragmentContentBinding.inflate(getLayoutInflater()); + StaggeredGridLayoutManager staggeredGridLayoutManager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL); + binding.contentRe.setLayoutManager(staggeredGridLayoutManager); + LoadDataAdapter loadDataAdapter = new LoadDataAdapter(SetData.getCataDatas(), getContext(), position, SetData.getDataUrls()); + binding.contentRe.addItemDecoration(new MyItemDecoration(SetData.getContext(), 20, 20, 15)); + loadDataAdapter.setInfoWallPaperListener((OnItemHome) this, (OnLoaditem) this); + binding.contentRe.setAdapter(loadDataAdapter); + return binding.getRoot(); + } + + @Override + public void OnitemClick(int position) { + Intent intent = new Intent(getContext(), ViewActivity.class); + intent.putExtra("position", position); + startActivity(intent); + } + + @Override + public void OnitemClick(int cataId, int position) { + Intent intent = new Intent(getContext(), ViewActivity.class); + intent.putExtra("cataId", cataId); + intent.putExtra("position", position); + startActivity(intent); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/myfra/MyfavFragment.java b/app/src/main/java/com/app/wallpaper/myfra/MyfavFragment.java new file mode 100644 index 0000000..42de316 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myfra/MyfavFragment.java @@ -0,0 +1,158 @@ +package com.app.wallpaper.myfra; + +import android.annotation.SuppressLint; +import android.app.AlertDialog; +import android.content.DialogInterface; +import android.content.Intent; +import android.net.Uri; +import android.os.Bundle; + +import androidx.annotation.NonNull; +import androidx.core.view.GravityCompat; +import androidx.drawerlayout.widget.DrawerLayout; +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.StaggeredGridLayoutManager; + +import android.view.LayoutInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; + +import com.app.wallpaper.R; +import com.app.wallpaper.databinding.FragmentMyfav2Binding; +import com.app.wallpaper.getdata.SetData; +import com.app.wallpaper.myOnitem.OnFavority; +import com.app.wallpaper.myOnitem.OnItemHome; +import com.app.wallpaper.myOnitem.OnLoaditem; +import com.app.wallpaper.myact.ViewActivity; +import com.app.wallpaper.myada.LoadDataAdapter; +import com.app.wallpaper.myada.MyfavorityAdapter; +import com.app.wallpaper.mydao.AppDatabase; +import com.app.wallpaper.mydao.MyEntity; +import com.app.wallpaper.utils.MyItemDecoration; +import com.google.android.material.navigation.NavigationView; + +import java.util.ArrayList; +import java.util.List; + +public class MyfavFragment extends Fragment implements OnFavority { + + private FragmentMyfav2Binding binding; + private AppDatabase appDatabase; + private List datas = new ArrayList<>(); + private MyfavorityAdapter myfavorityAdapter; + private DrawerLayout drawerLayout; + private NavigationView navigationView;; + + // TODO: Rename and change types of parameters + private String mParam1; + private String mParam2; + + public MyfavFragment() { + // Required empty public constructor + } + + public static MyfavFragment newInstance(String param1, String param2) { + MyfavFragment fragment = new MyfavFragment(); + Bundle args = new Bundle(); + fragment.setArguments(args); + return fragment; + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + if (getArguments() != null) { + } + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + binding = FragmentMyfav2Binding.inflate(getLayoutInflater()); + appDatabase = AppDatabase.getDatabase(requireContext()); + navigationView = requireActivity().findViewById(R.id.nav_view); + navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { + @Override + public boolean onNavigationItemSelected(@NonNull MenuItem item) { + if (item.getItemId() == R.id.about) { + showDialog(); + } else { + Intent intent = new Intent(Intent.ACTION_VIEW); + String packName = requireContext().getPackageName(); + intent.setData(Uri.parse("https://play.google.com/store/apps/details?id=" + packName)); + startActivity(intent); + } + return false; + } + }); + binding.myfraSetting.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + drawerLayout= getActivity().findViewById(R.id.drawer_layout); + drawerLayout.openDrawer(GravityCompat.START); + } + }); + setRecyclerview(); + loadFavoriteImages(); + return binding.getRoot(); + } + private void loadFavoriteImages() { + new Thread(new Runnable() { + @Override + public void run() { + List allFavoriteImages = appDatabase.interfaceDao().getAllImages(); + requireActivity().runOnUiThread(new Runnable() { + @SuppressLint("NotifyDataSetChanged") + @Override + public void run() { + if (allFavoriteImages.isEmpty()){ + binding.layout.setVisibility(View.VISIBLE);; + }else { + binding.layout.setVisibility(View.GONE); + } + datas.clear(); + datas.addAll(allFavoriteImages); + myfavorityAdapter.notifyDataSetChanged(); + } + }); + } + }).start(); + } + + private void setRecyclerview() { + StaggeredGridLayoutManager staggeredGridLayoutManager = new StaggeredGridLayoutManager(2, StaggeredGridLayoutManager.VERTICAL); + binding.myfra.setLayoutManager(staggeredGridLayoutManager); + myfavorityAdapter = new MyfavorityAdapter(getContext(), datas); + myfavorityAdapter.setInfoWallPaperListener((OnFavority) this); + binding.myfra.addItemDecoration(new MyItemDecoration(SetData.getContext(),20,20,15)); + binding.myfra.setAdapter(myfavorityAdapter); + } + @Override + public void OnitemClick(MyEntity myEntity,int Id) { + Intent intent = new Intent(getContext(), ViewActivity.class); + intent.putExtra("imageUrl",myEntity); + intent.putExtra("Id", Id); + startActivity(intent); + } + private void showDialog() { + AlertDialog.Builder builder = new AlertDialog.Builder(getContext()); + LayoutInflater inflater = getLayoutInflater(); + View dialogView = inflater.inflate(R.layout.alterdialog, null); + builder.setCustomTitle(dialogView); + builder.setMessage("The current version is 1.0.0") + .setPositiveButton("Confirm", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + } + }); + AlertDialog dialog = builder.create(); + dialog.show(); + } + + @Override + public void onResume() { + super.onResume(); + loadFavoriteImages(); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/myfra/ViewFragment.java b/app/src/main/java/com/app/wallpaper/myfra/ViewFragment.java new file mode 100644 index 0000000..005cdd9 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/myfra/ViewFragment.java @@ -0,0 +1,75 @@ +package com.app.wallpaper.myfra; + +import android.graphics.Bitmap; +import android.graphics.drawable.Drawable; +import android.os.Bundle; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; + +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.ProgressBar; + +import com.app.wallpaper.R; +import com.app.wallpaper.databinding.FragmentViewBinding; +import com.bumptech.glide.Glide; +import com.bumptech.glide.request.target.CustomTarget; +import com.bumptech.glide.request.transition.Transition; + +public class ViewFragment extends Fragment { + + private static final String ARG_PARAM1 = "param1"; + private FragmentViewBinding binding; + private String mParam1; + + public ViewFragment() { + } + + public static ViewFragment newInstance(String param1) { + ViewFragment fragment = new ViewFragment(); + Bundle args = new Bundle(); + args.putString(ARG_PARAM1, param1); + fragment.setArguments(args); + return fragment; + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + if (getArguments() != null) { + mParam1 = getArguments().getString(ARG_PARAM1); + } + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + binding= FragmentViewBinding.inflate(getLayoutInflater()); + Glide.with(requireContext()) + .asBitmap() + .load(mParam1) + .into(new CustomTarget() { + @Override + public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition transition) { + binding.imageviewPreview.setImageBitmap(resource); + binding.progressbar.setVisibility(View.GONE); + } + + @Override + public void onLoadFailed(@Nullable Drawable errorDrawable) { + super.onLoadFailed(errorDrawable); + } + + @Override + public void onLoadCleared(@Nullable Drawable placeholder) { + binding.progressbar.setVisibility(View.GONE); + } + }); + return binding.getRoot(); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/app/wallpaper/utils/MyItemDecoration.kt b/app/src/main/java/com/app/wallpaper/utils/MyItemDecoration.kt new file mode 100644 index 0000000..7da3030 --- /dev/null +++ b/app/src/main/java/com/app/wallpaper/utils/MyItemDecoration.kt @@ -0,0 +1,85 @@ +package com.app.wallpaper.utils + +import android.content.Context +import android.graphics.Rect +import android.view.View +import androidx.recyclerview.widget.GridLayoutManager +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import androidx.recyclerview.widget.StaggeredGridLayoutManager + +class MyItemDecoration( + private var context: Context, + private var v: Int, + private var h: Int, + private var ex: Int +) : + RecyclerView.ItemDecoration() { + // item占满一行时,该item是否需要左右间距 + var mVerticalSpacing = true + + var mHorizontalSpaci = true + + init { + + v = dpToPx(v, context) + h = dpToPx(h, context) + ex = dpToPx(ex, context) + } + + override fun getItemOffsets( + outRect: Rect, + view: View, + parent: RecyclerView, + state: RecyclerView.State + ) { + super.getItemOffsets(outRect, view, parent, state) + + val position = parent.getChildAdapterPosition(view) + var spanCount = 1 + var spanSize = 1 + var spanIndex = 0 + + + parent.layoutManager?.run { + if (this is StaggeredGridLayoutManager) { + spanCount = this.spanCount + (view.layoutParams as StaggeredGridLayoutManager.LayoutParams)?.run { + if (isFullSpan) spanSize = spanCount + spanIndex = this.spanIndex + } + } else if (this is GridLayoutManager) { + spanCount = this.spanCount + spanSize = this.spanSizeLookup.getSpanSize(position) + spanIndex = (view.layoutParams as GridLayoutManager.LayoutParams).spanIndex + } else if (this is LinearLayoutManager) { + outRect.left = v + outRect.right = v + outRect.bottom = h + } + + } + + if (spanSize == spanCount) { + outRect.left = + if (mVerticalSpacing) v + ex else 0 + outRect.right = + if (mVerticalSpacing) v + ex else 0 + outRect.bottom = if (mHorizontalSpaci) h else 0 + } else { + val itemAllSpacing = (v * (spanCount + 1) + ex * 2) / spanCount + val left = v * (spanIndex + 1) - itemAllSpacing * spanIndex + ex + val right = itemAllSpacing - left + outRect.left = left + outRect.right = right + outRect.bottom = h + } + + } + + fun dpToPx(dp: Int, context: Context): Int { + val density = context.resources.displayMetrics.density + return (dp * density).toInt() + } + +} \ No newline at end of file diff --git a/app/src/main/new.xml b/app/src/main/new.xml new file mode 100644 index 0000000..16862d4 --- /dev/null +++ b/app/src/main/new.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/color/tab.xml b/app/src/main/res/color/tab.xml new file mode 100644 index 0000000..5f9f4dc --- /dev/null +++ b/app/src/main/res/color/tab.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/color/tab_text_color.xml b/app/src/main/res/color/tab_text_color.xml new file mode 100644 index 0000000..24b2706 --- /dev/null +++ b/app/src/main/res/color/tab_text_color.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/aaa.png b/app/src/main/res/drawable/aaa.png new file mode 100644 index 0000000..c3d5b2d Binary files /dev/null and b/app/src/main/res/drawable/aaa.png differ diff --git a/app/src/main/res/drawable/about.png b/app/src/main/res/drawable/about.png new file mode 100644 index 0000000..2234199 Binary files /dev/null and b/app/src/main/res/drawable/about.png differ diff --git a/app/src/main/res/drawable/app_icon.png b/app/src/main/res/drawable/app_icon.png new file mode 100644 index 0000000..05d70a9 Binary files /dev/null and b/app/src/main/res/drawable/app_icon.png differ diff --git a/app/src/main/res/drawable/apply.png b/app/src/main/res/drawable/apply.png new file mode 100644 index 0000000..25f8ff3 Binary files /dev/null and b/app/src/main/res/drawable/apply.png differ diff --git a/app/src/main/res/drawable/back.png b/app/src/main/res/drawable/back.png new file mode 100644 index 0000000..7508448 Binary files /dev/null and b/app/src/main/res/drawable/back.png differ diff --git a/app/src/main/res/drawable/back_ic_boder.xml b/app/src/main/res/drawable/back_ic_boder.xml new file mode 100644 index 0000000..89237a1 --- /dev/null +++ b/app/src/main/res/drawable/back_ic_boder.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/custom_progress_bar.xml b/app/src/main/res/drawable/custom_progress_bar.xml new file mode 100644 index 0000000..7771bbc --- /dev/null +++ b/app/src/main/res/drawable/custom_progress_bar.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/donwload.png b/app/src/main/res/drawable/donwload.png new file mode 100644 index 0000000..11c600b Binary files /dev/null and b/app/src/main/res/drawable/donwload.png differ diff --git a/app/src/main/res/drawable/faceback.png b/app/src/main/res/drawable/faceback.png new file mode 100644 index 0000000..d4f3992 Binary files /dev/null and b/app/src/main/res/drawable/faceback.png differ diff --git a/app/src/main/res/drawable/fav_ic.png b/app/src/main/res/drawable/fav_ic.png new file mode 100644 index 0000000..dc1e497 Binary files /dev/null and b/app/src/main/res/drawable/fav_ic.png differ diff --git a/app/src/main/res/drawable/favorites.png b/app/src/main/res/drawable/favorites.png new file mode 100644 index 0000000..85d8cba Binary files /dev/null and b/app/src/main/res/drawable/favorites.png differ diff --git a/app/src/main/res/drawable/frame_3_.xml b/app/src/main/res/drawable/frame_3_.xml new file mode 100644 index 0000000..4d3da79 --- /dev/null +++ b/app/src/main/res/drawable/frame_3_.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/head_ic.png b/app/src/main/res/drawable/head_ic.png new file mode 100644 index 0000000..23443d4 Binary files /dev/null and b/app/src/main/res/drawable/head_ic.png differ diff --git a/app/src/main/res/drawable/ic_boder.xml b/app/src/main/res/drawable/ic_boder.xml new file mode 100644 index 0000000..21c5ea6 --- /dev/null +++ b/app/src/main/res/drawable/ic_boder.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_fail.png b/app/src/main/res/drawable/ic_fail.png new file mode 100644 index 0000000..e5c18cb Binary files /dev/null and b/app/src/main/res/drawable/ic_fail.png differ diff --git a/app/src/main/res/drawable/ic_fail2.png b/app/src/main/res/drawable/ic_fail2.png new file mode 100644 index 0000000..2077929 Binary files /dev/null and b/app/src/main/res/drawable/ic_fail2.png differ diff --git a/app/src/main/res/drawable/ic_fav.xml b/app/src/main/res/drawable/ic_fav.xml new file mode 100644 index 0000000..9effc88 --- /dev/null +++ b/app/src/main/res/drawable/ic_fav.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/ic_home.xml b/app/src/main/res/drawable/ic_home.xml new file mode 100644 index 0000000..f35cb5e --- /dev/null +++ b/app/src/main/res/drawable/ic_home.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_home_with_border.xml b/app/src/main/res/drawable/ic_home_with_border.xml new file mode 100644 index 0000000..fa6107e --- /dev/null +++ b/app/src/main/res/drawable/ic_home_with_border.xml @@ -0,0 +1,10 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_homefra.png b/app/src/main/res/drawable/ic_homefra.png new file mode 100644 index 0000000..cdeee2e Binary files /dev/null and b/app/src/main/res/drawable/ic_homefra.png differ diff --git a/app/src/main/res/drawable/ic_homrfra.png b/app/src/main/res/drawable/ic_homrfra.png new file mode 100644 index 0000000..71821d7 Binary files /dev/null and b/app/src/main/res/drawable/ic_homrfra.png differ diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000..07d5da9 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..2b068d1 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/img_fail.png b/app/src/main/res/drawable/img_fail.png new file mode 100644 index 0000000..e5c18cb Binary files /dev/null and b/app/src/main/res/drawable/img_fail.png differ diff --git a/app/src/main/res/drawable/like.png b/app/src/main/res/drawable/like.png new file mode 100644 index 0000000..a414b96 Binary files /dev/null and b/app/src/main/res/drawable/like.png differ diff --git a/app/src/main/res/drawable/likede_ic.png b/app/src/main/res/drawable/likede_ic.png new file mode 100644 index 0000000..eb84dbd Binary files /dev/null and b/app/src/main/res/drawable/likede_ic.png differ diff --git a/app/src/main/res/drawable/login_ic.png b/app/src/main/res/drawable/login_ic.png new file mode 100644 index 0000000..4650bd7 Binary files /dev/null and b/app/src/main/res/drawable/login_ic.png differ diff --git a/app/src/main/res/drawable/nav_back.xml b/app/src/main/res/drawable/nav_back.xml new file mode 100644 index 0000000..5271e2a --- /dev/null +++ b/app/src/main/res/drawable/nav_back.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/navback.xml b/app/src/main/res/drawable/navback.xml new file mode 100644 index 0000000..66eb667 --- /dev/null +++ b/app/src/main/res/drawable/navback.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/pavc.png b/app/src/main/res/drawable/pavc.png new file mode 100644 index 0000000..45f1435 Binary files /dev/null and b/app/src/main/res/drawable/pavc.png differ diff --git a/app/src/main/res/drawable/place.png b/app/src/main/res/drawable/place.png new file mode 100644 index 0000000..f016559 Binary files /dev/null and b/app/src/main/res/drawable/place.png differ diff --git a/app/src/main/res/drawable/rounded_corner_background.xml b/app/src/main/res/drawable/rounded_corner_background.xml new file mode 100644 index 0000000..f60970b --- /dev/null +++ b/app/src/main/res/drawable/rounded_corner_background.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/rounded_corner_borde.xml b/app/src/main/res/drawable/rounded_corner_borde.xml new file mode 100644 index 0000000..eb27a92 --- /dev/null +++ b/app/src/main/res/drawable/rounded_corner_borde.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/rounded_corner_borde2.xml b/app/src/main/res/drawable/rounded_corner_borde2.xml new file mode 100644 index 0000000..18eff5e --- /dev/null +++ b/app/src/main/res/drawable/rounded_corner_borde2.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/rounded_corner_borde3.xml b/app/src/main/res/drawable/rounded_corner_borde3.xml new file mode 100644 index 0000000..b3fff6a --- /dev/null +++ b/app/src/main/res/drawable/rounded_corner_borde3.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/share.png b/app/src/main/res/drawable/share.png new file mode 100644 index 0000000..34c5cab Binary files /dev/null and b/app/src/main/res/drawable/share.png differ diff --git a/app/src/main/res/drawable/tab_back.xml b/app/src/main/res/drawable/tab_back.xml new file mode 100644 index 0000000..97cd68b --- /dev/null +++ b/app/src/main/res/drawable/tab_back.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable/wallpapers.png b/app/src/main/res/drawable/wallpapers.png new file mode 100644 index 0000000..47dd5fc Binary files /dev/null and b/app/src/main/res/drawable/wallpapers.png differ diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml new file mode 100644 index 0000000..80d6e1d --- /dev/null +++ b/app/src/main/res/layout/activity_login.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_login2.xml b/app/src/main/res/layout/activity_login2.xml new file mode 100644 index 0000000..6d8f0c9 --- /dev/null +++ b/app/src/main/res/layout/activity_login2.xml @@ -0,0 +1,30 @@ + + + + + + \ 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 new file mode 100644 index 0000000..521011a --- /dev/null +++ b/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_view.xml b/app/src/main/res/layout/activity_view.xml new file mode 100644 index 0000000..40a2f5d --- /dev/null +++ b/app/src/main/res/layout/activity_view.xml @@ -0,0 +1,209 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/alterdialog.xml b/app/src/main/res/layout/alterdialog.xml new file mode 100644 index 0000000..9353c0f --- /dev/null +++ b/app/src/main/res/layout/alterdialog.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/app/src/main/res/layout/content_login.xml b/app/src/main/res/layout/content_login.xml new file mode 100644 index 0000000..1068fad --- /dev/null +++ b/app/src/main/res/layout/content_login.xml @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_content.xml b/app/src/main/res/layout/fragment_content.xml new file mode 100644 index 0000000..95e71ac --- /dev/null +++ b/app/src/main/res/layout/fragment_content.xml @@ -0,0 +1,13 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_first.xml b/app/src/main/res/layout/fragment_first.xml new file mode 100644 index 0000000..44baecd --- /dev/null +++ b/app/src/main/res/layout/fragment_first.xml @@ -0,0 +1,35 @@ + + + + + +