Commit 80965374 authored by wanglei's avatar wanglei

...

parent 213cb577
package com.test.easy.easycleanerjunk.activity.appmanager
import android.annotation.SuppressLint
import android.content.Intent
import android.os.Bundle
import android.view.View
import android.widget.Toast
import androidx.activity.addCallback
import androidx.activity.enableEdgeToEdge
......@@ -9,10 +11,14 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import com.test.easy.easycleanerjunk.R
import com.test.easy.easycleanerjunk.databinding.ActivityAppManagerAnimationBinding
import com.test.easy.easycleanerjunk.helps.BaseActivity
import com.test.easy.easycleanerjunk.helps.ads.AdmobUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import kotlin.random.Random
class AppManagerAnimationActivity : BaseActivity<ActivityAppManagerAnimationBinding>() {
......@@ -31,19 +37,24 @@ class AppManagerAnimationActivity : BaseActivity<ActivityAppManagerAnimationBind
}
}
@SuppressLint("SetTextI18n")
private fun playLottie() {
binding.lottie.imageAssetsFolder = "easy_app_manager/images/"
binding.lottie.setAnimation("easy_app_manager/data.json")
binding.lottie.playAnimation()
binding.root.postDelayed({
AdmobUtils.showInterstitialAd(this) {
lifecycleScope.launch(Dispatchers.Main) {
delay(Random.nextLong(4000, 6000))
binding.lottie.visibility = View.GONE
binding.lottieCompleted.visibility = View.VISIBLE
binding.lottieCompleted.playAnimation()
binding.tv.text = "Completed!"
delay(1000)
AdmobUtils.showInterstitialAd(this@AppManagerAnimationActivity) {
binding.lottie.cancelAnimation()
startActivity(Intent(this@AppManagerAnimationActivity, AppManagerActivity::class.java))
finish()
}
}, Random.nextLong(4000, 6000))
}
}
}
\ No newline at end of file
package com.test.easy.easycleanerjunk.activity.batteryinfo
import android.annotation.SuppressLint
import android.content.Intent
import android.os.Bundle
import android.view.View
import android.widget.Toast
import androidx.activity.addCallback
import androidx.activity.enableEdgeToEdge
......@@ -9,10 +11,14 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import com.test.easy.easycleanerjunk.R
import com.test.easy.easycleanerjunk.databinding.ActivityBatteryInfoAnimationBinding
import com.test.easy.easycleanerjunk.helps.BaseActivity
import com.test.easy.easycleanerjunk.helps.ads.AdmobUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import kotlin.random.Random
class BatteryInfoAnimationActivity : BaseActivity<ActivityBatteryInfoAnimationBinding>() {
......@@ -32,17 +38,25 @@ class BatteryInfoAnimationActivity : BaseActivity<ActivityBatteryInfoAnimationBi
}
}
@SuppressLint("SetTextI18n")
private fun playLottie() {
binding.idBatteryLottie.imageAssetsFolder = "battery_scan/images/"
binding.idBatteryLottie.setAnimation("battery_scan/data.json")
binding.idBatteryLottie.playAnimation()
binding.root.postDelayed({
AdmobUtils.showInterstitialAd(this) {
binding.idBatteryLottie.clearAnimation()
binding.lottie.imageAssetsFolder = "battery_scan/images/"
binding.lottie.setAnimation("battery_scan/data.json")
binding.lottie.playAnimation()
lifecycleScope.launch(Dispatchers.Main) {
delay(Random.nextLong(3000, 4500))
binding.lottie.visibility = View.GONE
binding.lottieCompleted.visibility = View.VISIBLE
binding.lottieCompleted.playAnimation()
binding.tv.text = "Completed!"
delay(1000)
AdmobUtils.showInterstitialAd(this@BatteryInfoAnimationActivity) {
binding.lottie.clearAnimation()
startActivity(Intent(this@BatteryInfoAnimationActivity, BatteryInfoActivity::class.java))
finish()
}
}, Random.nextLong(3000, 4500))
}
}
......
......@@ -2,6 +2,7 @@ package com.test.easy.easycleanerjunk.activity.largefile
import android.content.Intent
import android.os.Bundle
import android.view.View
import android.widget.Toast
import androidx.activity.addCallback
import androidx.activity.enableEdgeToEdge
......@@ -9,10 +10,14 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import com.test.easy.easycleanerjunk.R
import com.test.easy.easycleanerjunk.databinding.ActivityLargeFileAnimationBinding
import com.test.easy.easycleanerjunk.helps.BaseActivity
import com.test.easy.easycleanerjunk.helps.ads.AdmobUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
class LargeFileAnimationActivity : BaseActivity<ActivityLargeFileAnimationBinding>() {
......@@ -33,15 +38,19 @@ class LargeFileAnimationActivity : BaseActivity<ActivityLargeFileAnimationBindin
private fun playLottie(showFinish: (() -> Unit)? = null) {
binding.llLottie.isVisible = true
binding.root.postDelayed({
AdmobUtils.showInterstitialAd(this) {
binding.llLottie.clearAnimation()
binding.llLottie.isVisible = false
lifecycleScope.launch(Dispatchers.Main) {
delay(5000)
binding.lottie.visibility = View.GONE
binding.lottie.clearAnimation()
binding.lottieCompleted.visibility = View.VISIBLE
binding.lottieCompleted.playAnimation()
delay(1000)
AdmobUtils.showInterstitialAd(this@LargeFileAnimationActivity) {
showFinish?.invoke()
startActivity(Intent(this@LargeFileAnimationActivity, LargeFileCleanActivity::class.java))
finish()
}
}, 6000)
}
}
}
\ No newline at end of file
......@@ -6,12 +6,10 @@ import android.graphics.Color
import android.widget.ProgressBar
import android.widget.TextView
import androidx.core.view.updatePadding
import com.test.easy.easycleanerjunk.R
import com.test.easy.easycleanerjunk.activity.ResultActivity
import com.test.easy.easycleanerjunk.databinding.ActivityCompressioningBinding
import com.test.easy.easycleanerjunk.helps.BaseActivity
import com.test.easy.easycleanerjunk.helps.ads.AdmobUtils
import com.test.easy.easycleanerjunk.utils.BarUtils
import com.test.easy.easycleanerjunk.view.AFunOb
......
......@@ -91,7 +91,8 @@ class ScanJunkActivity : BaseActivity<ActivityLayoutScanJunkBinding>() {
lifecycleScope.launch(Dispatchers.Main) {
delay(5000)
binding.lottie.visibility = View.GONE
binding.ivWancheng.visibility = View.VISIBLE
binding.lottieCompleted.visibility = View.VISIBLE
binding.lottieCompleted.playAnimation()
binding.tv.text = "Completed!"
delay(1000)
AdmobUtils.showInterstitialAd(this@ScanJunkActivity) {
......
......@@ -3,9 +3,9 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:background="@color/white"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
tools:context=".activity.appmanager.AppManagerAnimationActivity">
......@@ -22,6 +22,21 @@
app:lottie_autoPlay="true"
app:lottie_loop="true" />
<com.test.easy.easycleanerjunk.view.XmlLottieAnimationView
android:id="@+id/lottie_completed"
android:layout_width="90dp"
android:layout_height="90dp"
android:layout_gravity="center"
android:visibility="gone"
app:layout_constraintBottom_toTopOf="@id/tv"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:lottie_autoPlay="false"
app:lottie_rawRes="@raw/loading_completed" />
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
......
......@@ -9,10 +9,10 @@
tools:context=".activity.batteryinfo.BatteryInfoAnimationActivity">
<com.test.easy.easycleanerjunk.view.XmlLottieAnimationView
android:id="@+id/id_battery_lottie"
android:id="@+id/lottie"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:adjustViewBounds="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
......@@ -21,6 +21,20 @@
app:lottie_loop="true" />
<com.test.easy.easycleanerjunk.view.XmlLottieAnimationView
android:id="@+id/lottie_completed"
android:layout_width="90dp"
android:layout_height="90dp"
android:layout_gravity="center"
android:visibility="gone"
app:layout_constraintBottom_toTopOf="@id/tv"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:lottie_autoPlay="false"
app:lottie_rawRes="@raw/loading_completed" />
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
......
......@@ -3,51 +3,54 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:background="@color/white"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
tools:context=".activity.largefile.LargeFileAnimationActivity">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/ll_lottie"
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="@color/white"
android:gravity="center"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.test.easy.easycleanerjunk.view.XmlLottieAnimationView
android:id="@+id/lottie"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginHorizontal="80dp"
android:adjustViewBounds="true"
app:layout_constraintBottom_toTopOf="@+id/tv"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.7"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/new_lottie_large_file" />
<com.test.easy.easycleanerjunk.view.XmlLottieAnimationView
android:id="@+id/lottie"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginHorizontal="60dp"
android:adjustViewBounds="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.3"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/new_lottie_large_file" />
<com.test.easy.easycleanerjunk.view.XmlLottieAnimationView
android:id="@+id/lottie_completed"
android:layout_width="90dp"
android:layout_height="90dp"
android:layout_gravity="center"
android:visibility="gone"
app:layout_constraintBottom_toTopOf="@id/tv"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:lottie_autoPlay="false"
app:lottie_rawRes="@raw/loading_completed" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="295dp"
android:gravity="center"
android:text="Wait a moment..."
android:textColor="#333333"
android:textSize="16sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:ignore="HardcodedText" />
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="250dp"
android:gravity="center"
android:text="Wait a moment..."
android:textColor="#333333"
android:textSize="16sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:ignore="HardcodedText" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
......@@ -44,14 +44,16 @@
app:lottie_autoPlay="true"
app:lottie_loop="true" />
<ImageView
android:id="@+id/iv_wancheng"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
<com.test.easy.easycleanerjunk.view.XmlLottieAnimationView
android:id="@+id/lottie_completed"
android:layout_width="90dp"
android:layout_height="90dp"
android:layout_gravity="center"
android:importantForAccessibility="no"
android:src="@mipmap/wancheng_blue"
android:visibility="gone" />
android:visibility="gone"
app:lottie_autoPlay="false"
app:lottie_rawRes="@raw/loading_completed" />
</FrameLayout>
<TextView
......@@ -63,7 +65,6 @@
android:text="Wait a moment..."
android:textColor="#333333"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
......
{"nm":"Success Animation","ddd":0,"h":400,"w":400,"meta":{"g":"@lottiefiles/toolkit-js 0.33.2"},"layers":[{"ty":4,"nm":"Success_Tick","sr":1,"st":4.00000016292334,"op":154.000006272549,"ip":4.00000016292334,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[29,-36,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[205.75,194.75,0],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Shape 1","ix":1,"cix":2,"np":3,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":false,"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-48,-34],[2,16],[94.5,-77.5]]},"ix":2}},{"ty":"st","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Stroke","nm":"Stroke 1","lc":2,"lj":2,"ml":1,"o":{"a":0,"k":100,"ix":4},"w":{"a":1,"k":[{"o":{"x":0.333,"y":0},"i":{"x":0.146,"y":1},"s":[15],"t":4},{"s":[30],"t":25.0000010182709}],"ix":5},"c":{"a":0,"k":[0,0.3922,0.7882],"ix":3}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]},{"ty":"tm","bm":0,"hd":false,"mn":"ADBE Vector Filter - Trim","nm":"Trim Paths 1","ix":2,"e":{"a":1,"k":[{"o":{"x":0.333,"y":0},"i":{"x":0.113,"y":1},"s":[0],"t":4},{"s":[100],"t":25.0000010182709}],"ix":2},"o":{"a":0,"k":0,"ix":3},"s":{"a":0,"k":0,"ix":1},"m":1}],"ind":1},{"ty":4,"nm":"Circle","sr":1,"st":0,"op":150.000006109625,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[30.765,23.931,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[200,200,0],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[{"ty":22,"mn":"ADBE Stroke","nm":"Stroke","ix":1,"en":1,"ef":[{"ty":10,"mn":"ADBE Stroke-0001","nm":"Path","ix":1,"v":{"a":0,"k":0,"ix":1}},{"ty":7,"mn":"ADBE Stroke-0010","nm":"All Masks","ix":2,"v":{"a":0,"k":0,"ix":2}},{"ty":7,"mn":"ADBE Stroke-0011","nm":"Stroke Sequentially","ix":3,"v":{"a":0,"k":1,"ix":3}},{"ty":2,"mn":"ADBE Stroke-0002","nm":"Color","ix":4,"v":{"a":0,"k":[1,1,1],"ix":4}},{"ty":0,"mn":"ADBE Stroke-0003","nm":"Brush Size","ix":5,"v":{"a":0,"k":2,"ix":5}},{"ty":0,"mn":"ADBE Stroke-0004","nm":"Brush Hardness","ix":6,"v":{"a":0,"k":0.75,"ix":6}},{"ty":0,"mn":"ADBE Stroke-0005","nm":"Opacity","ix":7,"v":{"a":0,"k":1,"ix":7}},{"ty":0,"mn":"ADBE Stroke-0008","nm":"Start","ix":8,"v":{"a":0,"k":0,"ix":8}},{"ty":0,"mn":"ADBE Stroke-0009","nm":"End","ix":9,"v":{"a":0,"k":100,"ix":9}},{"ty":7,"mn":"ADBE Stroke-0006","nm":"Spacing","ix":10,"v":{"a":0,"k":15,"ix":10}},{"ty":7,"mn":"ADBE Stroke-0007","nm":"Paint Style","ix":11,"v":{"a":0,"k":1,"ix":11}}]}],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Ellipse 1","ix":1,"cix":2,"np":3,"it":[{"ty":"el","bm":0,"hd":false,"mn":"ADBE Vector Shape - Ellipse","nm":"Ellipse Path 1","d":1,"p":{"a":0,"k":[0,0],"ix":3},"s":{"a":0,"k":[318.933,318.933],"ix":2}},{"ty":"st","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Stroke","nm":"Stroke 1","lc":2,"lj":1,"ml":4,"o":{"a":0,"k":100,"ix":4},"w":{"a":1,"k":[{"o":{"x":0.333,"y":0},"i":{"x":0.188,"y":1},"s":[50],"t":0},{"s":[20],"t":20.0000008146167}],"ix":5},"c":{"a":0,"k":[0,0.3922,0.7882],"ix":3}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[30.765,23.931],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]},{"ty":"tm","bm":0,"hd":false,"mn":"ADBE Vector Filter - Trim","nm":"Trim Paths 1","ix":2,"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"s":{"a":1,"k":[{"o":{"x":0.333,"y":0},"i":{"x":0.096,"y":1},"s":[100],"t":0},{"s":[0],"t":20.0000008146167}],"ix":1},"m":1}],"ind":2}],"v":"5.7.4","fr":29.9700012207031,"op":30.0000012219251,"ip":0,"assets":[]}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment