Commit 73eaf69c authored by guest's avatar guest

去掉whatapp和app进程功能

parent 7648fef2
...@@ -86,18 +86,18 @@ ...@@ -86,18 +86,18 @@
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity <!-- <activity-->
android:name=".activity.appprocess.AppProcessAnimationActivity" <!-- android:name=".activity.appprocess.AppProcessAnimationActivity"-->
android:exported="false" <!-- android:exported="false"-->
android:launchMode="singleTop" <!-- android:launchMode="singleTop"-->
android:screenOrientation="portrait" <!-- android:screenOrientation="portrait"-->
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> <!-- tools:ignore="DiscouragedApi,LockedOrientationActivity" />-->
<activity <!-- <activity-->
android:name=".activity.appprocess.AppProcessActivity" <!-- android:name=".activity.appprocess.AppProcessActivity"-->
android:exported="false" <!-- android:exported="false"-->
android:launchMode="singleTop" <!-- android:launchMode="singleTop"-->
android:screenOrientation="portrait" <!-- android:screenOrientation="portrait"-->
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> <!-- tools:ignore="DiscouragedApi,LockedOrientationActivity" />-->
<activity <activity
android:name=".activity.photomanager.PhotoManagerActivity" android:name=".activity.photomanager.PhotoManagerActivity"
android:exported="false" android:exported="false"
...@@ -183,24 +183,24 @@ ...@@ -183,24 +183,24 @@
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity <!-- <activity-->
android:name=".activity.whatsapp.WhatsAppCleanerAnimationActivity" <!-- android:name=".activity.whatsapp.WhatsAppCleanerAnimationActivity"-->
android:exported="false" <!-- android:exported="false"-->
android:launchMode="singleTop" <!-- android:launchMode="singleTop"-->
android:screenOrientation="portrait" <!-- android:screenOrientation="portrait"-->
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> <!-- tools:ignore="DiscouragedApi,LockedOrientationActivity" />-->
<activity <!-- <activity-->
android:name=".activity.whatsapp.WhatsAppCleanerActivity" <!-- android:name=".activity.whatsapp.WhatsAppCleanerActivity"-->
android:exported="false" <!-- android:exported="false"-->
android:launchMode="singleTop" <!-- android:launchMode="singleTop"-->
android:screenOrientation="portrait" <!-- android:screenOrientation="portrait"-->
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> <!-- tools:ignore="DiscouragedApi,LockedOrientationActivity" />-->
<activity <!-- <activity-->
android:name=".activity.whatsapp.WhatsAppMessageCleanActivity" <!-- android:name=".activity.whatsapp.WhatsAppMessageCleanActivity"-->
android:exported="false" <!-- android:exported="false"-->
android:launchMode="singleTop" <!-- android:launchMode="singleTop"-->
android:screenOrientation="portrait" <!-- android:screenOrientation="portrait"-->
tools:ignore="DiscouragedApi,LockedOrientationActivity" /> <!-- tools:ignore="DiscouragedApi,LockedOrientationActivity" />-->
<activity <activity
android:name=".activity.privacyspace.PrivacyPinTwoActivity" android:name=".activity.privacyspace.PrivacyPinTwoActivity"
android:exported="false" android:exported="false"
......
...@@ -5,9 +5,7 @@ import android.content.Intent ...@@ -5,9 +5,7 @@ import android.content.Intent
import android.graphics.Color import android.graphics.Color
import androidx.activity.OnBackPressedCallback import androidx.activity.OnBackPressedCallback
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.datarecovery.R
import com.base.datarecovery.activity.appmanager.AppManagerAnimationActivity import com.base.datarecovery.activity.appmanager.AppManagerAnimationActivity
import com.base.datarecovery.activity.appprocess.AppProcessAnimationActivity
import com.base.datarecovery.activity.battery.BatteryInfoAnimationActivity import com.base.datarecovery.activity.battery.BatteryInfoAnimationActivity
import com.base.datarecovery.activity.junkclean.ScanJunkActivity import com.base.datarecovery.activity.junkclean.ScanJunkActivity
import com.base.datarecovery.activity.largefile.LargeFileAnimationActivity import com.base.datarecovery.activity.largefile.LargeFileAnimationActivity
...@@ -16,11 +14,9 @@ import com.base.datarecovery.activity.privacyspace.PrivacySpaceActivity ...@@ -16,11 +14,9 @@ import com.base.datarecovery.activity.privacyspace.PrivacySpaceActivity
import com.base.datarecovery.activity.recovery.FileScanResultActivity import com.base.datarecovery.activity.recovery.FileScanResultActivity
import com.base.datarecovery.activity.repeat.RepeatAnimationActivity import com.base.datarecovery.activity.repeat.RepeatAnimationActivity
import com.base.datarecovery.activity.screenshot.ScreenShotAnimationActivity import com.base.datarecovery.activity.screenshot.ScreenShotAnimationActivity
import com.base.datarecovery.activity.whatsapp.WhatsAppCleanerAnimationActivity
import com.base.datarecovery.adapter.AppFunctionAdapter import com.base.datarecovery.adapter.AppFunctionAdapter
import com.base.datarecovery.ads.AdmobMaxHelper import com.base.datarecovery.ads.AdmobMaxHelper
import com.base.datarecovery.bean.ConstObject.APP_MANAGER import com.base.datarecovery.bean.ConstObject.APP_MANAGER
import com.base.datarecovery.bean.ConstObject.APP_PROCESS
import com.base.datarecovery.bean.ConstObject.BATTERY_INFO import com.base.datarecovery.bean.ConstObject.BATTERY_INFO
import com.base.datarecovery.bean.ConstObject.JUNK_CLEANER import com.base.datarecovery.bean.ConstObject.JUNK_CLEANER
import com.base.datarecovery.bean.ConstObject.LARGE_FILE import com.base.datarecovery.bean.ConstObject.LARGE_FILE
...@@ -35,13 +31,12 @@ import com.base.datarecovery.bean.ConstObject.SCAN_DOCUMENTS ...@@ -35,13 +31,12 @@ import com.base.datarecovery.bean.ConstObject.SCAN_DOCUMENTS
import com.base.datarecovery.bean.ConstObject.SCAN_PHOTOS import com.base.datarecovery.bean.ConstObject.SCAN_PHOTOS
import com.base.datarecovery.bean.ConstObject.SCAN_VIDEOS import com.base.datarecovery.bean.ConstObject.SCAN_VIDEOS
import com.base.datarecovery.bean.ConstObject.SCREENSHOT_CLEANER import com.base.datarecovery.bean.ConstObject.SCREENSHOT_CLEANER
import com.base.datarecovery.bean.ConstObject.WHATSAPP_CLEANER
import com.base.datarecovery.bean.ConstObject.privacyPinPassword import com.base.datarecovery.bean.ConstObject.privacyPinPassword
import com.base.datarecovery.databinding.ActivityLayoutResultBinding import com.base.datarecovery.databinding.ActivityLayoutResultBinding
import com.base.datarecovery.help.BaseActivity import com.base.datarecovery.help.BaseActivity
import com.base.datarecovery.help.KotlinExt.toFormatSize import com.base.datarecovery.help.KotlinExt.toFormatSize
import com.base.datarecovery.utils.BarUtils
import com.base.datarecovery.utils.AppPreferences import com.base.datarecovery.utils.AppPreferences
import com.base.datarecovery.utils.BarUtils
import com.base.datarecovery.utils.LogEx import com.base.datarecovery.utils.LogEx
class ResultActivity : BaseActivity<ActivityLayoutResultBinding>() { class ResultActivity : BaseActivity<ActivityLayoutResultBinding>() {
...@@ -105,17 +100,17 @@ class ResultActivity : BaseActivity<ActivityLayoutResultBinding>() { ...@@ -105,17 +100,17 @@ class ResultActivity : BaseActivity<ActivityLayoutResultBinding>() {
} }
} }
WHATSAPP_CLEANER -> { // WHATSAPP_CLEANER -> {
startActivity(Intent(this, WhatsAppCleanerAnimationActivity::class.java)) // startActivity(Intent(this, WhatsAppCleanerAnimationActivity::class.java))
} // }
LARGE_FILE -> { LARGE_FILE -> {
startActivity(Intent(this, LargeFileAnimationActivity::class.java)) startActivity(Intent(this, LargeFileAnimationActivity::class.java))
} }
APP_PROCESS -> { // APP_PROCESS -> {
startActivity(Intent(this, AppProcessAnimationActivity::class.java)) // startActivity(Intent(this, AppProcessAnimationActivity::class.java))
} // }
APP_MANAGER -> { APP_MANAGER -> {
startActivity(Intent(this, AppManagerAnimationActivity::class.java)) startActivity(Intent(this, AppManagerAnimationActivity::class.java))
......
package com.base.datarecovery.activity.appprocess //package com.base.datarecovery.activity.appprocess
//
import android.annotation.SuppressLint //import android.annotation.SuppressLint
import android.content.Context //import android.content.Context
import android.content.Intent //import android.content.Intent
import android.content.pm.ApplicationInfo //import android.content.pm.ApplicationInfo
import android.content.pm.PackageInfo //import android.content.pm.PackageInfo
import android.graphics.Color //import android.graphics.Color
import android.net.Uri //import android.net.Uri
import android.provider.Settings //import android.provider.Settings
import android.view.View //import android.view.View
import androidx.activity.addCallback //import androidx.activity.addCallback
import androidx.core.view.updatePadding //import androidx.core.view.updatePadding
import androidx.lifecycle.lifecycleScope //import androidx.lifecycle.lifecycleScope
import com.base.datarecovery.adapter.AppManagerAdapter //import com.base.datarecovery.adapter.AppManagerAdapter
import com.base.datarecovery.ads.AdmobMaxHelper //import com.base.datarecovery.ads.AdmobMaxHelper
import com.base.datarecovery.ads.AdmobMaxHelper.showBackInterAdSp //import com.base.datarecovery.ads.AdmobMaxHelper.showBackInterAdSp
import com.base.datarecovery.bean.AppBean //import com.base.datarecovery.bean.AppBean
import com.base.datarecovery.databinding.ActivityAppProcessBinding //import com.base.datarecovery.databinding.ActivityAppProcessBinding
import com.base.datarecovery.help.BaseActivity //import com.base.datarecovery.help.BaseActivity
import com.base.datarecovery.help.KotlinExt.toFormatSize //import com.base.datarecovery.help.KotlinExt.toFormatSize
import com.base.datarecovery.utils.BarUtils //import com.base.datarecovery.utils.BarUtils
import com.base.datarecovery.utils.RamUtils.ramPair //import com.base.datarecovery.utils.RamUtils.ramPair
import com.base.datarecovery.view.DialogViews.showAppProcessExitDialog //import com.base.datarecovery.view.DialogViews.showAppProcessExitDialog
import kotlinx.coroutines.Dispatchers //import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch //import kotlinx.coroutines.launch
//
//
class AppProcessActivity : BaseActivity<ActivityAppProcessBinding>() { //class AppProcessActivity : BaseActivity<ActivityAppProcessBinding>() {
//
override val binding: ActivityAppProcessBinding by lazy { // override val binding: ActivityAppProcessBinding by lazy {
ActivityAppProcessBinding.inflate(layoutInflater) // ActivityAppProcessBinding.inflate(layoutInflater)
} // }
//
private lateinit var adapter: AppManagerAdapter // private lateinit var adapter: AppManagerAdapter
//
private var ePercent = 0 // private var ePercent = 0
//
@SuppressLint("SetTextI18n") // @SuppressLint("SetTextI18n")
override fun initView() { // override fun initView() {
BarUtils.setStatusBarLightMode(this, true) // BarUtils.setStatusBarLightMode(this, true)
BarUtils.setStatusBarColor(this, Color.TRANSPARENT) // BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight()) // binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1) // AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1)
val ramPair = ramPair() // val ramPair = ramPair()
val percent = ((ramPair.first.toFloat() / ramPair.second.toFloat()) * 100).toInt() // val percent = ((ramPair.first.toFloat() / ramPair.second.toFloat()) * 100).toInt()
ePercent = percent // ePercent = percent
binding.tvPercent.text = percent.toString() // binding.tvPercent.text = percent.toString()
binding.pbRam.progress = percent // binding.pbRam.progress = percent
binding.tvSize.text = "${ramPair.first.toFormatSize()}/${ramPair.second.toFormatSize()}" // binding.tvSize.text = "${ramPair.first.toFormatSize()}/${ramPair.second.toFormatSize()}"
//
adapter = AppManagerAdapter { pkg -> // adapter = AppManagerAdapter { pkg ->
val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS) // val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS)
val uri = Uri.fromParts("package", pkg, null) // 替换为需要跳转的应用包名 // val uri = Uri.fromParts("package", pkg, null) // 替换为需要跳转的应用包名
intent.setData(uri) // intent.setData(uri)
startActivity(intent) // startActivity(intent)
} // }
binding.rv.adapter = adapter // binding.rv.adapter = adapter
//
initData() // initData()
} // }
//
override fun initListener() { // override fun initListener() {
super.initListener() // super.initListener()
onBackPressedDispatcher.addCallback { // onBackPressedDispatcher.addCallback {
showAppProcessExitDialog(ePercent) { // showAppProcessExitDialog(ePercent) {
if (showBackInterAdSp()) { // if (showBackInterAdSp()) {
AdmobMaxHelper.admobMaxShowInterstitialAd(this@AppProcessActivity, false) { // AdmobMaxHelper.admobMaxShowInterstitialAd(this@AppProcessActivity, false) {
finishToMain() // finishToMain()
} // }
} else { // } else {
finishToMain() // finishToMain()
} // }
} // }
} // }
binding.flFanhui.setOnClickListener { // binding.flFanhui.setOnClickListener {
onBackPressedDispatcher.onBackPressed() // onBackPressedDispatcher.onBackPressed()
} // }
} // }
//
@SuppressLint("QueryPermissionsNeeded") // @SuppressLint("QueryPermissionsNeeded")
private fun initData() = lifecycleScope.launch(Dispatchers.IO) { // private fun initData() = lifecycleScope.launch(Dispatchers.IO) {
val pm = packageManager // val pm = packageManager
val packages = pm.getInstalledPackages(0) // val packages = pm.getInstalledPackages(0)
val list = arrayListOf<AppBean>() // val list = arrayListOf<AppBean>()
//
packages.forEach { app -> // packages.forEach { app ->
if (isLaunchApp(this@AppProcessActivity, app)) { // if (isLaunchApp(this@AppProcessActivity, app)) {
//
val appBean = AppBean( // val appBean = AppBean(
app.applicationInfo.loadIcon(pm), // app.applicationInfo.loadIcon(pm),
app.applicationInfo.loadLabel(pm).toString(), // app.applicationInfo.loadLabel(pm).toString(),
app.applicationInfo.packageName // app.applicationInfo.packageName
) // )
list.add(appBean) // list.add(appBean)
} // }
} // }
launch(Dispatchers.Main) { // launch(Dispatchers.Main) {
binding.pbLoading.visibility = View.GONE // binding.pbLoading.visibility = View.GONE
adapter.setData(list) // adapter.setData(list)
} // }
} // }
//
private fun isLaunchApp(context: Context, app: PackageInfo, filterSystem: Boolean = true): Boolean { // private fun isLaunchApp(context: Context, app: PackageInfo, filterSystem: Boolean = true): Boolean {
//
val flagSystem = (app.applicationInfo.flags and ApplicationInfo.FLAG_SYSTEM) < 1 // val flagSystem = (app.applicationInfo.flags and ApplicationInfo.FLAG_SYSTEM) < 1
val flag = if (filterSystem) flagSystem else true // val flag = if (filterSystem) flagSystem else true
//
return flag && app.applicationInfo.packageName != context.packageName // return flag && app.applicationInfo.packageName != context.packageName
} // }
//
} //}
\ No newline at end of file \ No newline at end of file
package com.base.datarecovery.activity.appprocess //package com.base.datarecovery.activity.appprocess
//
import android.annotation.SuppressLint //import android.annotation.SuppressLint
import android.content.Intent //import android.content.Intent
import android.view.View //import android.view.View
import android.widget.Toast //import android.widget.Toast
import androidx.activity.addCallback //import androidx.activity.addCallback
import androidx.lifecycle.lifecycleScope //import androidx.lifecycle.lifecycleScope
import com.base.datarecovery.ads.AdmobMaxHelper //import com.base.datarecovery.ads.AdmobMaxHelper
import com.base.datarecovery.databinding.ActivityAppManagerAnimationBinding //import com.base.datarecovery.databinding.ActivityAppManagerAnimationBinding
import com.base.datarecovery.help.BaseActivity //import com.base.datarecovery.help.BaseActivity
import kotlinx.coroutines.Dispatchers //import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.Job //import kotlinx.coroutines.Job
import kotlinx.coroutines.delay //import kotlinx.coroutines.delay
import kotlinx.coroutines.launch //import kotlinx.coroutines.launch
import kotlin.random.Random //import kotlin.random.Random
//
class AppProcessAnimationActivity : BaseActivity<ActivityAppManagerAnimationBinding>() { //class AppProcessAnimationActivity : BaseActivity<ActivityAppManagerAnimationBinding>() {
//
override val binding: ActivityAppManagerAnimationBinding by lazy { // override val binding: ActivityAppManagerAnimationBinding by lazy {
ActivityAppManagerAnimationBinding.inflate(layoutInflater) // ActivityAppManagerAnimationBinding.inflate(layoutInflater)
} // }
private var job: Job? = null // private var job: Job? = null
//
override fun initView() { // override fun initView() {
playLottie() // playLottie()
AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1) // AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1)
} // }
//
override fun initListener() { // override fun initListener() {
onBackPressedDispatcher.addCallback { // onBackPressedDispatcher.addCallback {
Toast.makeText(this@AppProcessAnimationActivity, "wait a moment", Toast.LENGTH_SHORT).show() // Toast.makeText(this@AppProcessAnimationActivity, "wait a moment", Toast.LENGTH_SHORT).show()
} // }
} // }
//
@SuppressLint("SetTextI18n") // @SuppressLint("SetTextI18n")
private fun playLottie() { // private fun playLottie() {
binding.lottie.imageAssetsFolder = "app_manager/images/" // binding.lottie.imageAssetsFolder = "app_manager/images/"
binding.lottie.setAnimation("app_manager/data.json") // binding.lottie.setAnimation("app_manager/data.json")
binding.lottie.playAnimation() // binding.lottie.playAnimation()
} // }
//
@SuppressLint("SetTextI18n") // @SuppressLint("SetTextI18n")
private fun jumpJob() = lifecycleScope.launch(Dispatchers.Main) { // private fun jumpJob() = lifecycleScope.launch(Dispatchers.Main) {
delay(Random.nextLong(4000, 6000)) // delay(Random.nextLong(4000, 6000))
binding.lottie.visibility = View.GONE // binding.lottie.visibility = View.GONE
binding.lottieCompleted.visibility = View.VISIBLE // binding.lottieCompleted.visibility = View.VISIBLE
binding.lottieCompleted.playAnimation() // binding.lottieCompleted.playAnimation()
binding.tv.text = "Completed!" // binding.tv.text = "Completed!"
delay(1000) // delay(1000)
//
AdmobMaxHelper.admobMaxShowInterstitialAd(this@AppProcessAnimationActivity) { // AdmobMaxHelper.admobMaxShowInterstitialAd(this@AppProcessAnimationActivity) {
startActivity(Intent(this@AppProcessAnimationActivity, AppProcessActivity::class.java)) // startActivity(Intent(this@AppProcessAnimationActivity, AppProcessActivity::class.java))
finish() // finish()
} // }
//
} // }
//
//
override fun onResume() { // override fun onResume() {
super.onResume() // super.onResume()
if (job?.isActive == false || job == null) { // if (job?.isActive == false || job == null) {
job = jumpJob() // job = jumpJob()
} // }
} // }
//
override fun onPause() { // override fun onPause() {
super.onPause() // super.onPause()
job?.cancel() // job?.cancel()
job = null // job = null
} // }
} //}
\ No newline at end of file \ No newline at end of file
...@@ -5,7 +5,6 @@ import android.content.Intent ...@@ -5,7 +5,6 @@ import android.content.Intent
import android.util.Log import android.util.Log
import com.base.datarecovery.activity.MainActivity import com.base.datarecovery.activity.MainActivity
import com.base.datarecovery.activity.appmanager.AppManagerAnimationActivity import com.base.datarecovery.activity.appmanager.AppManagerAnimationActivity
import com.base.datarecovery.activity.appprocess.AppProcessAnimationActivity
import com.base.datarecovery.activity.battery.BatteryInfoAnimationActivity import com.base.datarecovery.activity.battery.BatteryInfoAnimationActivity
import com.base.datarecovery.activity.guide.GuideActivity import com.base.datarecovery.activity.guide.GuideActivity
import com.base.datarecovery.activity.junkclean.ScanJunkActivity import com.base.datarecovery.activity.junkclean.ScanJunkActivity
...@@ -13,10 +12,8 @@ import com.base.datarecovery.activity.newfunction.WeatherInterface ...@@ -13,10 +12,8 @@ import com.base.datarecovery.activity.newfunction.WeatherInterface
import com.base.datarecovery.activity.newfunction.XingzuoLoadingActivity import com.base.datarecovery.activity.newfunction.XingzuoLoadingActivity
import com.base.datarecovery.activity.photomanager.PhotoManagerAnimationActivity import com.base.datarecovery.activity.photomanager.PhotoManagerAnimationActivity
import com.base.datarecovery.activity.recovery.FileScanResultActivity import com.base.datarecovery.activity.recovery.FileScanResultActivity
import com.base.datarecovery.activity.whatsapp.WhatsAppCleanerAnimationActivity
import com.base.datarecovery.bean.ConstObject import com.base.datarecovery.bean.ConstObject
import com.base.datarecovery.bean.ConstObject.ID_APP_MANAGER import com.base.datarecovery.bean.ConstObject.ID_APP_MANAGER
import com.base.datarecovery.bean.ConstObject.ID_APP_PROCESS
import com.base.datarecovery.bean.ConstObject.ID_BATTERY_INFO import com.base.datarecovery.bean.ConstObject.ID_BATTERY_INFO
import com.base.datarecovery.bean.ConstObject.ID_JUNK_CLEAN_PUSH import com.base.datarecovery.bean.ConstObject.ID_JUNK_CLEAN_PUSH
import com.base.datarecovery.bean.ConstObject.ID_RECOVERY_DOCUMENTS import com.base.datarecovery.bean.ConstObject.ID_RECOVERY_DOCUMENTS
...@@ -25,7 +22,6 @@ import com.base.datarecovery.bean.ConstObject.ID_RECOVERY_VIDEOS ...@@ -25,7 +22,6 @@ import com.base.datarecovery.bean.ConstObject.ID_RECOVERY_VIDEOS
import com.base.datarecovery.bean.ConstObject.ID_SCREENSHOT_CLEAN import com.base.datarecovery.bean.ConstObject.ID_SCREENSHOT_CLEAN
import com.base.datarecovery.bean.ConstObject.ID_SIMILAR_IMAGE import com.base.datarecovery.bean.ConstObject.ID_SIMILAR_IMAGE
import com.base.datarecovery.bean.ConstObject.ID_WEATHER import com.base.datarecovery.bean.ConstObject.ID_WEATHER
import com.base.datarecovery.bean.ConstObject.ID_WHATSAPP_CLEANER
import com.base.datarecovery.bean.ConstObject.ID_XINGZUO import com.base.datarecovery.bean.ConstObject.ID_XINGZUO
import com.base.datarecovery.bean.ConstObject.isGuide import com.base.datarecovery.bean.ConstObject.isGuide
...@@ -87,13 +83,13 @@ object StartUtils { ...@@ -87,13 +83,13 @@ object StartUtils {
) )
} }
ID_WHATSAPP_CLEANER -> { // ID_WHATSAPP_CLEANER -> {
context.startActivity(Intent(context, WhatsAppCleanerAnimationActivity::class.java)) // context.startActivity(Intent(context, WhatsAppCleanerAnimationActivity::class.java))
} // }
//
ID_APP_PROCESS -> { // ID_APP_PROCESS -> {
context.startActivity(Intent(context, AppProcessAnimationActivity::class.java)) // context.startActivity(Intent(context, AppProcessAnimationActivity::class.java))
} // }
ID_APP_MANAGER -> { ID_APP_MANAGER -> {
context.startActivity(Intent(context, AppManagerAnimationActivity::class.java)) context.startActivity(Intent(context, AppManagerAnimationActivity::class.java))
......
package com.base.datarecovery.activity.whatsapp //package com.base.datarecovery.activity.whatsapp
//
import android.content.Intent //import android.content.Intent
import android.graphics.Color //import android.graphics.Color
import android.os.Environment //import android.os.Environment
import androidx.activity.addCallback //import androidx.activity.addCallback
import androidx.core.view.updatePadding //import androidx.core.view.updatePadding
import androidx.lifecycle.lifecycleScope //import androidx.lifecycle.lifecycleScope
import com.base.datarecovery.R //import com.base.datarecovery.R
import com.base.datarecovery.activity.ResultActivity //import com.base.datarecovery.activity.ResultActivity
import com.base.datarecovery.adapter.WhatsAppCleanerAdapter //import com.base.datarecovery.adapter.WhatsAppCleanerAdapter
import com.base.datarecovery.ads.AdmobMaxHelper //import com.base.datarecovery.ads.AdmobMaxHelper
import com.base.datarecovery.bean.ConstObject.WHATSAPP_CLEANER //import com.base.datarecovery.bean.ConstObject.WHATSAPP_CLEANER
import com.base.datarecovery.bean.WhatsAppCleanerBean //import com.base.datarecovery.bean.WhatsAppCleanerBean
import com.base.datarecovery.databinding.ActivityWhatsAppCleanerBinding //import com.base.datarecovery.databinding.ActivityWhatsAppCleanerBinding
import com.base.datarecovery.help.BaseActivity //import com.base.datarecovery.help.BaseActivity
import com.base.datarecovery.help.FileHelp.getDirFiles //import com.base.datarecovery.help.FileHelp.getDirFiles
import com.base.datarecovery.help.KotlinExt.toFormatSize //import com.base.datarecovery.help.KotlinExt.toFormatSize
import com.base.datarecovery.help.PermissionHelp.checkStorePermission //import com.base.datarecovery.help.PermissionHelp.checkStorePermission
import com.base.datarecovery.help.PermissionHelp.requestStorePermission //import com.base.datarecovery.help.PermissionHelp.requestStorePermission
import com.base.datarecovery.utils.BarUtils //import com.base.datarecovery.utils.BarUtils
import com.base.datarecovery.utils.FileHexEx.isImage //import com.base.datarecovery.utils.FileHexEx.isImage
import com.base.datarecovery.utils.FileHexEx.isWhatAppVideo //import com.base.datarecovery.utils.FileHexEx.isWhatAppVideo
import com.base.datarecovery.utils.LogEx //import com.base.datarecovery.utils.LogEx
import com.base.datarecovery.view.DialogViews.showExitFunctionDialog //import com.base.datarecovery.view.DialogViews.showExitFunctionDialog
import com.base.datarecovery.view.DialogViews.showGerPermission //import com.base.datarecovery.view.DialogViews.showGerPermission
import com.google.gson.Gson //import com.google.gson.Gson
import kotlinx.coroutines.Dispatchers //import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch //import kotlinx.coroutines.launch
import java.io.File //import java.io.File
//
class WhatsAppCleanerActivity : BaseActivity<ActivityWhatsAppCleanerBinding>() { //class WhatsAppCleanerActivity : BaseActivity<ActivityWhatsAppCleanerBinding>() {
//
private val TAG = "WhatsAppCleanerActivity" // private val TAG = "WhatsAppCleanerActivity"
private lateinit var adapter: WhatsAppCleanerAdapter // private lateinit var adapter: WhatsAppCleanerAdapter
//
override val binding: ActivityWhatsAppCleanerBinding by lazy { // override val binding: ActivityWhatsAppCleanerBinding by lazy {
ActivityWhatsAppCleanerBinding.inflate(layoutInflater) // ActivityWhatsAppCleanerBinding.inflate(layoutInflater)
} // }
//
//
override fun initView() { // override fun initView() {
BarUtils.setStatusBarLightMode(this, true) // BarUtils.setStatusBarLightMode(this, true)
BarUtils.setStatusBarColor(this, Color.TRANSPARENT) // BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
binding.idTop.updatePadding(top = BarUtils.getStatusBarHeight()) // binding.idTop.updatePadding(top = BarUtils.getStatusBarHeight())
AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1) // AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1)
adapter = WhatsAppCleanerAdapter { // adapter = WhatsAppCleanerAdapter {
startActivity(Intent(this, WhatsAppMessageCleanActivity::class.java).apply { // startActivity(Intent(this, WhatsAppMessageCleanActivity::class.java).apply {
putExtra("PathList", Gson().toJson(it.subFile.toTypedArray())) // putExtra("PathList", Gson().toJson(it.subFile.toTypedArray()))
putExtra("Tittle", it.tittle) // putExtra("Tittle", it.tittle)
}) // })
// finish() // // finish()
} // }
binding.rv.adapter = adapter // binding.rv.adapter = adapter
//
if (checkStorePermission()) { // if (checkStorePermission()) {
initData() // initData()
} else { // } else {
showGerPermission(null, deny = { // showGerPermission(null, deny = {
finishToMain() // finishToMain()
}, allow = { // }, allow = {
requestStorePermission( // requestStorePermission(
launcher, // launcher,
result = { flag -> // result = { flag ->
if (flag) { // if (flag) {
initData() // initData()
} else { // } else {
finishToMain() // finishToMain()
} // }
}, // },
) // )
}) // })
} // }
} // }
//
override fun initListener() { // override fun initListener() {
binding.flBack.setOnClickListener { // binding.flBack.setOnClickListener {
onBackPressedDispatcher.onBackPressed() // onBackPressedDispatcher.onBackPressed()
} // }
onBackPressedDispatcher.addCallback { // onBackPressedDispatcher.addCallback {
showExitFunctionDialog { showAd -> // showExitFunctionDialog { showAd ->
if (showAd) { // if (showAd) {
AdmobMaxHelper.admobMaxShowInterstitialAd(this@WhatsAppCleanerActivity, false) { // AdmobMaxHelper.admobMaxShowInterstitialAd(this@WhatsAppCleanerActivity, false) {
finishToMain() // finishToMain()
} // }
} else { // } else {
finishToMain() // finishToMain()
}
}
}
binding.tvTvGotIt.setOnClickListener {
startActivity(Intent(this, ResultActivity::class.java).apply {
putExtra("from", WHATSAPP_CLEANER)
})
finish()
}
}
private fun initData() = lifecycleScope.launch(Dispatchers.IO) {
val whatsAppRoot = File(Environment.getExternalStorageDirectory(), "Android/media/com.whatsapp/WhatsApp/Media/")
LogEx.logDebug(TAG, whatsAppRoot.absolutePath)
val list = arrayListOf<WhatsAppCleanerBean>()
list.add(WhatsAppCleanerBean(R.mipmap.videomessages, "Video Messages"))
list.add(WhatsAppCleanerBean(R.mipmap.imagemessages, "Image Messages"))
list.add(WhatsAppCleanerBean(R.mipmap.audiomessages, "Audio Messages"))
var totalSize = 0L
whatsAppRoot.listFiles()?.forEach { file ->
if (file.name == "WhatsApp Video") {
LogEx.logDebug(TAG, "whatsapp file=${file.absolutePath}")
val bean = list.find { it.tittle == "Video Messages" }
val subFile = getDirFiles(file).filter { isWhatAppVideo(it) }
val size = subFile.sumOf { it.length() }
bean?.size = size
totalSize += size
bean?.subFile = subFile.map { it.absolutePath }
// subFile.forEach { path ->
// LogEx.logDebug(TAG, "path=$path")
// } // }
} // }
if (file.name == "WhatsApp Images") { // }
val bean = list.find { it.tittle == "Image Messages" } // binding.tvTvGotIt.setOnClickListener {
val subFile = getDirFiles(file).filter { isImage(it) } // startActivity(Intent(this, ResultActivity::class.java).apply {
val size = subFile.sumOf { it.length() } // putExtra("from", WHATSAPP_CLEANER)
bean?.size = size // })
totalSize += size // finish()
bean?.subFile = subFile.map { it.absolutePath } // }
} //
if (file.name == "WhatsApp Audio") { // }
val bean = list.find { it.tittle == "Audio Messages" } //
val subFile = getDirFiles(file).filter { it.name.contains(".mp3") } //
val size = subFile.sumOf { it.length() } // private fun initData() = lifecycleScope.launch(Dispatchers.IO) {
bean?.size = size //
totalSize += size // val whatsAppRoot = File(Environment.getExternalStorageDirectory(), "Android/media/com.whatsapp/WhatsApp/Media/")
bean?.subFile = subFile.map { it.absolutePath } // LogEx.logDebug(TAG, whatsAppRoot.absolutePath)
} // val list = arrayListOf<WhatsAppCleanerBean>()
} // list.add(WhatsAppCleanerBean(R.mipmap.videomessages, "Video Messages"))
launch(Dispatchers.Main) { // list.add(WhatsAppCleanerBean(R.mipmap.imagemessages, "Image Messages"))
adapter.setData(list) // list.add(WhatsAppCleanerBean(R.mipmap.audiomessages, "Audio Messages"))
val split = totalSize.toFormatSize().split(" ") // var totalSize = 0L
binding.tvSize.text = split[0] // whatsAppRoot.listFiles()?.forEach { file ->
binding.tvUnit.text = split[1] // if (file.name == "WhatsApp Video") {
} // LogEx.logDebug(TAG, "whatsapp file=${file.absolutePath}")
} // val bean = list.find { it.tittle == "Video Messages" }
// val subFile = getDirFiles(file).filter { isWhatAppVideo(it) }
} // val size = subFile.sumOf { it.length() }
\ No newline at end of file // bean?.size = size
// totalSize += size
// bean?.subFile = subFile.map { it.absolutePath }
//// subFile.forEach { path ->
//// LogEx.logDebug(TAG, "path=$path")
//// }
// }
// if (file.name == "WhatsApp Images") {
// val bean = list.find { it.tittle == "Image Messages" }
// val subFile = getDirFiles(file).filter { isImage(it) }
// val size = subFile.sumOf { it.length() }
// bean?.size = size
// totalSize += size
// bean?.subFile = subFile.map { it.absolutePath }
// }
// if (file.name == "WhatsApp Audio") {
// val bean = list.find { it.tittle == "Audio Messages" }
// val subFile = getDirFiles(file).filter { it.name.contains(".mp3") }
// val size = subFile.sumOf { it.length() }
// bean?.size = size
// totalSize += size
// bean?.subFile = subFile.map { it.absolutePath }
// }
// }
// launch(Dispatchers.Main) {
// adapter.setData(list)
// val split = totalSize.toFormatSize().split(" ")
// binding.tvSize.text = split[0]
// binding.tvUnit.text = split[1]
// }
// }
//
//}
\ No newline at end of file
package com.base.datarecovery.activity.whatsapp //package com.base.datarecovery.activity.whatsapp
//
import android.annotation.SuppressLint //import android.annotation.SuppressLint
import android.content.Intent //import android.content.Intent
import android.view.View //import android.view.View
import android.widget.Toast //import android.widget.Toast
import androidx.activity.addCallback //import androidx.activity.addCallback
import androidx.lifecycle.lifecycleScope //import androidx.lifecycle.lifecycleScope
import com.base.datarecovery.ads.AdmobMaxHelper //import com.base.datarecovery.ads.AdmobMaxHelper
import com.base.datarecovery.databinding.ActivityWhatsAppCleanerAnimationBinding //import com.base.datarecovery.databinding.ActivityWhatsAppCleanerAnimationBinding
import com.base.datarecovery.help.BaseActivity //import com.base.datarecovery.help.BaseActivity
import kotlinx.coroutines.Job //import kotlinx.coroutines.Job
import kotlinx.coroutines.delay //import kotlinx.coroutines.delay
import kotlinx.coroutines.launch //import kotlinx.coroutines.launch
import kotlin.random.Random //import kotlin.random.Random
//
class WhatsAppCleanerAnimationActivity : BaseActivity<ActivityWhatsAppCleanerAnimationBinding>() { //class WhatsAppCleanerAnimationActivity : BaseActivity<ActivityWhatsAppCleanerAnimationBinding>() {
//
//
override val binding: ActivityWhatsAppCleanerAnimationBinding by lazy { // override val binding: ActivityWhatsAppCleanerAnimationBinding by lazy {
ActivityWhatsAppCleanerAnimationBinding.inflate(layoutInflater) // ActivityWhatsAppCleanerAnimationBinding.inflate(layoutInflater)
} // }
//
private var job: Job? = null // private var job: Job? = null
override fun initView() { // override fun initView() {
AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1) // AdmobMaxHelper.admobMaxShowNativeAd(this,binding.idFlNative,1)
playLottie() // playLottie()
//
} // }
//
override fun initListener() { // override fun initListener() {
onBackPressedDispatcher.addCallback { // onBackPressedDispatcher.addCallback {
Toast.makeText(this@WhatsAppCleanerAnimationActivity, "wait a moment", Toast.LENGTH_SHORT).show() // Toast.makeText(this@WhatsAppCleanerAnimationActivity, "wait a moment", Toast.LENGTH_SHORT).show()
} // }
} // }
//
@SuppressLint("SetTextI18n") // @SuppressLint("SetTextI18n")
private fun playLottie() { // private fun playLottie() {
binding.lottie.imageAssetsFolder = "junk_scan/images/" // binding.lottie.imageAssetsFolder = "junk_scan/images/"
binding.lottie.setAnimation("junk_scan/data.json") // binding.lottie.setAnimation("junk_scan/data.json")
binding.lottie.playAnimation() // binding.lottie.playAnimation()
} // }
//
@SuppressLint("SetTextI18n") // @SuppressLint("SetTextI18n")
fun jumpJob() = lifecycleScope.launch { // fun jumpJob() = lifecycleScope.launch {
delay(Random.nextLong(3500, 4500)) // delay(Random.nextLong(3500, 4500))
binding.lottie.cancelAnimation() // binding.lottie.cancelAnimation()
binding.lottie.visibility = View.GONE // binding.lottie.visibility = View.GONE
binding.lottieCompleted.visibility = View.VISIBLE // binding.lottieCompleted.visibility = View.VISIBLE
binding.lottieCompleted.playAnimation() // binding.lottieCompleted.playAnimation()
binding.tv.text = "Completed!" // binding.tv.text = "Completed!"
delay(1000) // delay(1000)
AdmobMaxHelper.admobMaxShowInterstitialAd(this@WhatsAppCleanerAnimationActivity) { // AdmobMaxHelper.admobMaxShowInterstitialAd(this@WhatsAppCleanerAnimationActivity) {
startActivity(Intent(this@WhatsAppCleanerAnimationActivity, WhatsAppCleanerActivity::class.java)) // startActivity(Intent(this@WhatsAppCleanerAnimationActivity, WhatsAppCleanerActivity::class.java))
finish() // finish()
} // }
} // }
//
override fun onResume() { // override fun onResume() {
super.onResume() // super.onResume()
if (job?.isActive == false || job == null) { // if (job?.isActive == false || job == null) {
job = jumpJob() // job = jumpJob()
} // }
} // }
//
override fun onPause() { // override fun onPause() {
super.onPause() // super.onPause()
job?.cancel() // job?.cancel()
job = null // job = null
} // }
//
} //}
\ No newline at end of file \ No newline at end of file
package com.base.datarecovery.activity.whatsapp //package com.base.datarecovery.activity.whatsapp
//
import android.content.Intent //import android.content.Intent
import android.graphics.Color //import android.graphics.Color
import androidx.activity.addCallback //import androidx.activity.addCallback
import androidx.recyclerview.widget.GridLayoutManager //import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager //import androidx.recyclerview.widget.LinearLayoutManager
import com.base.datarecovery.activity.MainActivity //import com.base.datarecovery.activity.MainActivity
import com.base.datarecovery.activity.junkclean.CleaningActivity //import com.base.datarecovery.activity.junkclean.CleaningActivity
import com.base.datarecovery.adapter.WhatsAppMediaAdapter //import com.base.datarecovery.adapter.WhatsAppMediaAdapter
import com.base.datarecovery.ads.admob.AdmobInterstitialUtils //import com.base.datarecovery.ads.admob.AdmobInterstitialUtils
import com.base.datarecovery.ads.admob.AdmobNativeUtils //import com.base.datarecovery.ads.admob.AdmobNativeUtils
import com.base.datarecovery.bean.ConstObject //import com.base.datarecovery.bean.ConstObject
import com.base.datarecovery.bean.MediaBean //import com.base.datarecovery.bean.MediaBean
import com.base.datarecovery.databinding.ActivityWhatsAppMessageCleanBinding //import com.base.datarecovery.databinding.ActivityWhatsAppMessageCleanBinding
import com.base.datarecovery.help.BaseActivity //import com.base.datarecovery.help.BaseActivity
import com.base.datarecovery.help.KotlinExt.toFormatSize //import com.base.datarecovery.help.KotlinExt.toFormatSize
import com.base.datarecovery.utils.ActivityManagerUtils //import com.base.datarecovery.utils.ActivityManagerUtils
import com.base.datarecovery.utils.BarUtils //import com.base.datarecovery.utils.BarUtils
import com.google.gson.Gson //import com.google.gson.Gson
import java.io.File //import java.io.File
//
class WhatsAppMessageCleanActivity : BaseActivity<ActivityWhatsAppMessageCleanBinding>() { //class WhatsAppMessageCleanActivity : BaseActivity<ActivityWhatsAppMessageCleanBinding>() {
//
private val pathList by lazy { // private val pathList by lazy {
val json = intent.extras?.getString("PathList") // val json = intent.extras?.getString("PathList")
val list = Gson().fromJson(json, Array<String>::class.java) // val list = Gson().fromJson(json, Array<String>::class.java)
list.map { MediaBean(it) } // list.map { MediaBean(it) }
} // }
private lateinit var adapter: WhatsAppMediaAdapter // private lateinit var adapter: WhatsAppMediaAdapter
//
override val binding: ActivityWhatsAppMessageCleanBinding by lazy { // override val binding: ActivityWhatsAppMessageCleanBinding by lazy {
ActivityWhatsAppMessageCleanBinding.inflate(layoutInflater) // ActivityWhatsAppMessageCleanBinding.inflate(layoutInflater)
} // }
//
//
override fun initView() { // override fun initView() {
BarUtils.setStatusBarLightMode(this, true) // BarUtils.setStatusBarLightMode(this, true)
BarUtils.setStatusBarColor(this, Color.TRANSPARENT) // BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
//
val tittle = intent.extras?.getString("Tittle") ?: "" // val tittle = intent.extras?.getString("Tittle") ?: ""
binding.tvTitle.text = tittle // binding.tvTitle.text = tittle
//
var isList = false // var isList = false
when (tittle) { // when (tittle) {
"Audio Messages" -> { // "Audio Messages" -> {
binding.rv.layoutManager = LinearLayoutManager(this) // binding.rv.layoutManager = LinearLayoutManager(this)
isList = true // isList = true
} // }
//
else -> { // else -> {
binding.rv.layoutManager = GridLayoutManager(this, 3) // binding.rv.layoutManager = GridLayoutManager(this, 3)
} // }
} // }
//
adapter = WhatsAppMediaAdapter(isList) { // adapter = WhatsAppMediaAdapter(isList) {
binding.llSelectAll.isSelected = it // binding.llSelectAll.isSelected = it
binding.tvClean.isEnabled = adapter.getSelectData().isNotEmpty() // binding.tvClean.isEnabled = adapter.getSelectData().isNotEmpty()
val split = adapter.getSelectDataSize().toFormatSize().split(" ") // val split = adapter.getSelectDataSize().toFormatSize().split(" ")
binding.tvSize.text = split[0] // binding.tvSize.text = split[0]
binding.tvUnit.text = split[1] // binding.tvUnit.text = split[1]
} // }
binding.rv.adapter = adapter // binding.rv.adapter = adapter
adapter.setData(pathList) // adapter.setData(pathList)
//
AdmobNativeUtils.showNativeAd(this, binding.flAd) // AdmobNativeUtils.showNativeAd(this, binding.flAd)
} // }
//
override fun initListener() { // override fun initListener() {
binding.flBack.setOnClickListener { // binding.flBack.setOnClickListener {
onBackPressedDispatcher.onBackPressed() // onBackPressedDispatcher.onBackPressed()
} // }
onBackPressedDispatcher.addCallback { // onBackPressedDispatcher.addCallback {
AdmobInterstitialUtils.showInterstitialAd(this@WhatsAppMessageCleanActivity) { // AdmobInterstitialUtils.showInterstitialAd(this@WhatsAppMessageCleanActivity) {
finishToMain() // finishToMain()
} // }
} // }
binding.llSelectAll.setOnClickListener { // binding.llSelectAll.setOnClickListener {
it.isSelected = !it.isSelected // it.isSelected = !it.isSelected
adapter.toggleSelect(it.isSelected) // adapter.toggleSelect(it.isSelected)
binding.tvClean.isEnabled = it.isSelected // binding.tvClean.isEnabled = it.isSelected
val split = adapter.getSelectDataSize().toFormatSize().split(" ") // val split = adapter.getSelectDataSize().toFormatSize().split(" ")
binding.tvSize.text = split[0] // binding.tvSize.text = split[0]
binding.tvUnit.text = split[1] // binding.tvUnit.text = split[1]
} // }
//
binding.tvClean.setOnClickListener { // binding.tvClean.setOnClickListener {
//
AdmobInterstitialUtils.showInterstitialAd(this) { // AdmobInterstitialUtils.showInterstitialAd(this) {
val list = adapter.getSelectData() // val list = adapter.getSelectData()
ActivityManagerUtils.finishAll(MainActivity::class.java) // ActivityManagerUtils.finishAll(MainActivity::class.java)
startActivity( // startActivity(
Intent(this, CleaningActivity::class.java).apply { // Intent(this, CleaningActivity::class.java).apply {
putExtra("list",list.toTypedArray()) // putExtra("list",list.toTypedArray())
putExtra("size", list.map { File(it) }.sumOf { it.length() }) // putExtra("size", list.map { File(it) }.sumOf { it.length() })
putExtra("type", ConstObject.WHATSAPP_CLEANER) // putExtra("type", ConstObject.WHATSAPP_CLEANER)
} // }
) // )
// runCatching { //// runCatching {
// list.forEach { File(it).delete() } //// list.forEach { File(it).delete() }
// } //// }
// startActivity(Intent(this@WhatsAppMessageCleanActivity, ResultActivity::class.java).apply { //// startActivity(Intent(this@WhatsAppMessageCleanActivity, ResultActivity::class.java).apply {
// putExtra("from", ConstObject.WHATSAPP_CLEANER) //// putExtra("from", ConstObject.WHATSAPP_CLEANER)
// }) //// })
// finish() //// finish()
} // }
} // }
} // }
//
//
} //}
\ No newline at end of file \ No newline at end of file
...@@ -8,7 +8,6 @@ import androidx.recyclerview.widget.RecyclerView ...@@ -8,7 +8,6 @@ import androidx.recyclerview.widget.RecyclerView
import androidx.recyclerview.widget.RecyclerView.ViewHolder import androidx.recyclerview.widget.RecyclerView.ViewHolder
import com.base.datarecovery.R import com.base.datarecovery.R
import com.base.datarecovery.bean.ConstObject.APP_MANAGER import com.base.datarecovery.bean.ConstObject.APP_MANAGER
import com.base.datarecovery.bean.ConstObject.APP_PROCESS
import com.base.datarecovery.bean.ConstObject.BATTERY_INFO import com.base.datarecovery.bean.ConstObject.BATTERY_INFO
import com.base.datarecovery.bean.ConstObject.JUNK_CLEANER import com.base.datarecovery.bean.ConstObject.JUNK_CLEANER
import com.base.datarecovery.bean.ConstObject.LARGE_FILE import com.base.datarecovery.bean.ConstObject.LARGE_FILE
...@@ -19,7 +18,6 @@ import com.base.datarecovery.bean.ConstObject.RECOVERY_PHOTOS ...@@ -19,7 +18,6 @@ import com.base.datarecovery.bean.ConstObject.RECOVERY_PHOTOS
import com.base.datarecovery.bean.ConstObject.RECOVERY_VIDEOS import com.base.datarecovery.bean.ConstObject.RECOVERY_VIDEOS
import com.base.datarecovery.bean.ConstObject.REPEAT_PHOTOS import com.base.datarecovery.bean.ConstObject.REPEAT_PHOTOS
import com.base.datarecovery.bean.ConstObject.SCREENSHOT_CLEANER import com.base.datarecovery.bean.ConstObject.SCREENSHOT_CLEANER
import com.base.datarecovery.bean.ConstObject.WHATSAPP_CLEANER
import com.base.datarecovery.databinding.ItemResultFun2Binding import com.base.datarecovery.databinding.ItemResultFun2Binding
import com.base.datarecovery.utils.AppPreferences import com.base.datarecovery.utils.AppPreferences
import com.base.datarecovery.view.XmlEx.inflate import com.base.datarecovery.view.XmlEx.inflate
...@@ -37,9 +35,9 @@ class AppFunctionAdapter(val click: (name: String) -> Unit) : ...@@ -37,9 +35,9 @@ class AppFunctionAdapter(val click: (name: String) -> Unit) :
Fun(PRIVACY_SPACE, R.mipmap.space), Fun(PRIVACY_SPACE, R.mipmap.space),
Fun(REPEAT_PHOTOS, R.mipmap.repeatedphotos), Fun(REPEAT_PHOTOS, R.mipmap.repeatedphotos),
Fun(SCREENSHOT_CLEANER, R.mipmap.screenshots), Fun(SCREENSHOT_CLEANER, R.mipmap.screenshots),
Fun(WHATSAPP_CLEANER, R.mipmap.whatsapp), // Fun(WHATSAPP_CLEANER, R.mipmap.whatsapp),
Fun(LARGE_FILE, R.mipmap.large), Fun(LARGE_FILE, R.mipmap.large),
Fun(APP_PROCESS, R.mipmap.h_appprocess), // Fun(APP_PROCESS, R.mipmap.h_appprocess),
Fun(APP_MANAGER, R.mipmap.h_appmanager), Fun(APP_MANAGER, R.mipmap.h_appmanager),
Fun(BATTERY_INFO, R.mipmap.h_battery), Fun(BATTERY_INFO, R.mipmap.h_battery),
) )
......
...@@ -11,9 +11,9 @@ object ConstObject { ...@@ -11,9 +11,9 @@ object ConstObject {
const val ID_RECOVERY_VIDEOS = 13001 const val ID_RECOVERY_VIDEOS = 13001
const val ID_RECOVERY_DOCUMENTS = 13002 const val ID_RECOVERY_DOCUMENTS = 13002
const val ID_PRIVACY_SPACE = 13003 const val ID_PRIVACY_SPACE = 13003
const val ID_WHATSAPP_CLEANER = 13006 // const val ID_WHATSAPP_CLEANER = 13006
const val ID_LARGE_FILE = 13009 const val ID_LARGE_FILE = 13009
const val ID_APP_PROCESS = 13011 // const val ID_APP_PROCESS = 13011
const val ID_APP_MANAGER = 12076 const val ID_APP_MANAGER = 12076
const val ID_BATTERY_INFO = 12086 const val ID_BATTERY_INFO = 12086
const val ID_XINGZUO = 12087 const val ID_XINGZUO = 12087
...@@ -28,10 +28,10 @@ object ConstObject { ...@@ -28,10 +28,10 @@ object ConstObject {
const val REPEAT_PHOTOS = "Repeat Photos" const val REPEAT_PHOTOS = "Repeat Photos"
const val SCREENSHOT_CLEANER = "Screenshot Cleaner" const val SCREENSHOT_CLEANER = "Screenshot Cleaner"
const val PRIVACY_SPACE = "Privacy Space" const val PRIVACY_SPACE = "Privacy Space"
const val WHATSAPP_CLEANER = "Whatsapp Cleaner" // const val WHATSAPP_CLEANER = "Whatsapp Cleaner"
const val LARGE_FILE = "Large File" const val LARGE_FILE = "Large File"
const val APP_PROCESS = "App Process" // const val APP_PROCESS = "App Process"
const val APP_MANAGER = "App Manager" const val APP_MANAGER = "Uninstall App"
const val BATTERY_INFO = "Battery Info" const val BATTERY_INFO = "Battery Info"
const val SCAN_PHOTOS = 1 const val SCAN_PHOTOS = 1
......
...@@ -18,7 +18,6 @@ import com.base.datarecovery.R ...@@ -18,7 +18,6 @@ import com.base.datarecovery.R
import com.base.datarecovery.activity.splash.Splash2Activity import com.base.datarecovery.activity.splash.Splash2Activity
import com.base.datarecovery.ads.AdDisplayUtils import com.base.datarecovery.ads.AdDisplayUtils
import com.base.datarecovery.bean.ConstObject.ID_APP_MANAGER import com.base.datarecovery.bean.ConstObject.ID_APP_MANAGER
import com.base.datarecovery.bean.ConstObject.ID_APP_PROCESS
import com.base.datarecovery.bean.ConstObject.ID_BATTERY_INFO import com.base.datarecovery.bean.ConstObject.ID_BATTERY_INFO
import com.base.datarecovery.bean.ConstObject.ID_JUNK_CLEAN_PUSH import com.base.datarecovery.bean.ConstObject.ID_JUNK_CLEAN_PUSH
import com.base.datarecovery.bean.ConstObject.ID_LARGE_FILE import com.base.datarecovery.bean.ConstObject.ID_LARGE_FILE
...@@ -29,11 +28,9 @@ import com.base.datarecovery.bean.ConstObject.ID_RECOVERY_VIDEOS ...@@ -29,11 +28,9 @@ import com.base.datarecovery.bean.ConstObject.ID_RECOVERY_VIDEOS
import com.base.datarecovery.bean.ConstObject.ID_SCREENSHOT_CLEAN import com.base.datarecovery.bean.ConstObject.ID_SCREENSHOT_CLEAN
import com.base.datarecovery.bean.ConstObject.ID_SIMILAR_IMAGE import com.base.datarecovery.bean.ConstObject.ID_SIMILAR_IMAGE
import com.base.datarecovery.bean.ConstObject.ID_WEATHER import com.base.datarecovery.bean.ConstObject.ID_WEATHER
import com.base.datarecovery.bean.ConstObject.ID_WHATSAPP_CLEANER
import com.base.datarecovery.bean.ConstObject.ID_XINGZUO import com.base.datarecovery.bean.ConstObject.ID_XINGZUO
import com.base.datarecovery.utils.AppManagerStringManager import com.base.datarecovery.utils.AppManagerStringManager
import com.base.datarecovery.utils.AppPreferences import com.base.datarecovery.utils.AppPreferences
import com.base.datarecovery.utils.AppProcessStringManager
import com.base.datarecovery.utils.BatteryInfoStringManager import com.base.datarecovery.utils.BatteryInfoStringManager
import com.base.datarecovery.utils.CleanJunkStringResourceManager import com.base.datarecovery.utils.CleanJunkStringResourceManager
import com.base.datarecovery.utils.DocumentRecoveryStringManager import com.base.datarecovery.utils.DocumentRecoveryStringManager
...@@ -46,7 +43,6 @@ import com.base.datarecovery.utils.PrivacySpaceStringManager ...@@ -46,7 +43,6 @@ import com.base.datarecovery.utils.PrivacySpaceStringManager
import com.base.datarecovery.utils.ScreenshotCleanupStringManager import com.base.datarecovery.utils.ScreenshotCleanupStringManager
import com.base.datarecovery.utils.VideoRecoveryStringManager import com.base.datarecovery.utils.VideoRecoveryStringManager
import com.base.datarecovery.utils.WeatherInfoStringManager import com.base.datarecovery.utils.WeatherInfoStringManager
import com.base.datarecovery.utils.WhatsappStringManager
import com.base.datarecovery.utils.XingzuoStringManager import com.base.datarecovery.utils.XingzuoStringManager
import java.util.Random import java.util.Random
...@@ -235,24 +231,24 @@ object NotificationUtil { ...@@ -235,24 +231,24 @@ object NotificationUtil {
smallRemoteViews smallRemoteViews
) )
} }
ID_WHATSAPP_CLEANER -> { // ID_WHATSAPP_CLEANER -> {
val icon = R.mipmap.whatsapp // val icon = R.mipmap.whatsapp
val desc = WhatsappStringManager.getNextPrivacySpaceCopy() // val desc = WhatsappStringManager.getNextPrivacySpaceCopy()
val btn = "View" // val btn = "View"
bigRemoteViews.setImageViewResource(R.id.iv_icon, icon) // bigRemoteViews.setImageViewResource(R.id.iv_icon, icon)
bigRemoteViews.setTextViewText(R.id.tv_desc, desc) // bigRemoteViews.setTextViewText(R.id.tv_desc, desc)
bigRemoteViews.setTextViewText(R.id.id_tv_btn, btn) // bigRemoteViews.setTextViewText(R.id.id_tv_btn, btn)
smallRemoteViews.setImageViewResource(R.id.iv_icon, icon) // smallRemoteViews.setImageViewResource(R.id.iv_icon, icon)
smallRemoteViews.setTextViewText(R.id.tv_desc, desc) // smallRemoteViews.setTextViewText(R.id.tv_desc, desc)
smallRemoteViews.setTextViewText(R.id.id_tv_btn, btn) // smallRemoteViews.setTextViewText(R.id.id_tv_btn, btn)
sendCustomNotification( // sendCustomNotification(
context, // context,
actionId, // actionId,
intent, // intent,
bigRemoteViews, // bigRemoteViews,
smallRemoteViews // smallRemoteViews
) // )
} // }
ID_LARGE_FILE -> { ID_LARGE_FILE -> {
val icon = R.mipmap.large val icon = R.mipmap.large
val desc = LargeFileStringManager.getNextPrivacySpaceCopy() val desc = LargeFileStringManager.getNextPrivacySpaceCopy()
...@@ -271,24 +267,24 @@ object NotificationUtil { ...@@ -271,24 +267,24 @@ object NotificationUtil {
smallRemoteViews smallRemoteViews
) )
} }
ID_APP_PROCESS -> { // ID_APP_PROCESS -> {
val icon = R.mipmap.h_appprocess // val icon = R.mipmap.h_appprocess
val desc = AppProcessStringManager.getNextPrivacySpaceCopy() // val desc = AppProcessStringManager.getNextPrivacySpaceCopy()
val btn = "Setting" // val btn = "Setting"
bigRemoteViews.setImageViewResource(R.id.iv_icon, icon) // bigRemoteViews.setImageViewResource(R.id.iv_icon, icon)
bigRemoteViews.setTextViewText(R.id.tv_desc, desc) // bigRemoteViews.setTextViewText(R.id.tv_desc, desc)
bigRemoteViews.setTextViewText(R.id.id_tv_btn, btn) // bigRemoteViews.setTextViewText(R.id.id_tv_btn, btn)
smallRemoteViews.setImageViewResource(R.id.iv_icon, icon) // smallRemoteViews.setImageViewResource(R.id.iv_icon, icon)
smallRemoteViews.setTextViewText(R.id.tv_desc, desc) // smallRemoteViews.setTextViewText(R.id.tv_desc, desc)
smallRemoteViews.setTextViewText(R.id.id_tv_btn, btn) // smallRemoteViews.setTextViewText(R.id.id_tv_btn, btn)
sendCustomNotification( // sendCustomNotification(
context, // context,
actionId, // actionId,
intent, // intent,
bigRemoteViews, // bigRemoteViews,
smallRemoteViews // smallRemoteViews
) // )
} // }
ID_APP_MANAGER -> { ID_APP_MANAGER -> {
val icon = R.mipmap.h_appmanager val icon = R.mipmap.h_appmanager
val desc = AppManagerStringManager.getNextDesc() val desc = AppManagerStringManager.getNextDesc()
...@@ -527,9 +523,7 @@ object NotificationUtil { ...@@ -527,9 +523,7 @@ object NotificationUtil {
ID_RECOVERY_VIDEOS, ID_RECOVERY_VIDEOS,
ID_RECOVERY_DOCUMENTS, ID_RECOVERY_DOCUMENTS,
ID_PRIVACY_SPACE, ID_PRIVACY_SPACE,
ID_WHATSAPP_CLEANER,
ID_LARGE_FILE, ID_LARGE_FILE,
ID_APP_PROCESS,
ID_APP_MANAGER, ID_APP_MANAGER,
ID_BATTERY_INFO, ID_BATTERY_INFO,
ID_WEATHER, ID_WEATHER,
......
...@@ -19,7 +19,6 @@ import androidx.appcompat.app.AppCompatActivity ...@@ -19,7 +19,6 @@ import androidx.appcompat.app.AppCompatActivity
import com.base.datarecovery.R import com.base.datarecovery.R
import com.base.datarecovery.activity.SettingActivity import com.base.datarecovery.activity.SettingActivity
import com.base.datarecovery.activity.appmanager.AppManagerAnimationActivity import com.base.datarecovery.activity.appmanager.AppManagerAnimationActivity
import com.base.datarecovery.activity.appprocess.AppProcessAnimationActivity
import com.base.datarecovery.activity.battery.BatteryInfoAnimationActivity import com.base.datarecovery.activity.battery.BatteryInfoAnimationActivity
import com.base.datarecovery.activity.junkclean.ScanJunk2Activity import com.base.datarecovery.activity.junkclean.ScanJunk2Activity
import com.base.datarecovery.activity.junkclean.ScanJunkActivity import com.base.datarecovery.activity.junkclean.ScanJunkActivity
...@@ -27,7 +26,8 @@ import com.base.datarecovery.activity.largefile.LargeFileAnimationActivity ...@@ -27,7 +26,8 @@ import com.base.datarecovery.activity.largefile.LargeFileAnimationActivity
import com.base.datarecovery.activity.newfunction.WeatherInterface import com.base.datarecovery.activity.newfunction.WeatherInterface
import com.base.datarecovery.activity.newfunction.WeatherUtils import com.base.datarecovery.activity.newfunction.WeatherUtils
import com.base.datarecovery.activity.newfunction.XingzuoLoadingActivity import com.base.datarecovery.activity.newfunction.XingzuoLoadingActivity
import com.base.datarecovery.activity.whatsapp.WhatsAppCleanerAnimationActivity import com.base.datarecovery.activity.repeat.RepeatAnimationActivity
import com.base.datarecovery.activity.screenshot.ScreenShotAnimationActivity
import com.base.datarecovery.ads.AdmobMaxHelper import com.base.datarecovery.ads.AdmobMaxHelper
import com.base.datarecovery.databinding.FragmentHomeBinding import com.base.datarecovery.databinding.FragmentHomeBinding
import com.base.datarecovery.help.BaseFragment import com.base.datarecovery.help.BaseFragment
...@@ -45,7 +45,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() { ...@@ -45,7 +45,6 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
override fun setView() { override fun setView() {
AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.idFlNative, 1)
animatorSet = createHeartbeatAnimation(binding.flScan) animatorSet = createHeartbeatAnimation(binding.flScan)
showStorage() showStorage()
} }
...@@ -76,6 +75,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() { ...@@ -76,6 +75,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
} }
} }
binding.cardCleanJunk.setOnClickListener { binding.cardCleanJunk.setOnClickListener {
val jumpJunkFirstAd = val jumpJunkFirstAd =
AppPreferences.getInstance().getString("isjunkPlayAd", "0").toInt() AppPreferences.getInstance().getString("isjunkPlayAd", "0").toInt()
...@@ -86,9 +86,9 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() { ...@@ -86,9 +86,9 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
startActivity(Intent(requireContext(), ScanJunkActivity::class.java)) startActivity(Intent(requireContext(), ScanJunkActivity::class.java))
} }
} }
binding.cardWhatsApp.setOnClickListener { // binding.cardWhatsApp.setOnClickListener {
startActivity(Intent(requireContext(), WhatsAppCleanerAnimationActivity::class.java)) // startActivity(Intent(requireContext(), WhatsAppCleanerAnimationActivity::class.java))
} // }
binding.cardLargeFile.setOnClickListener { binding.cardLargeFile.setOnClickListener {
startActivity(Intent(requireContext(), LargeFileAnimationActivity::class.java)) startActivity(Intent(requireContext(), LargeFileAnimationActivity::class.java))
} }
...@@ -96,13 +96,20 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() { ...@@ -96,13 +96,20 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
binding.cardAppManager.setOnClickListener { binding.cardAppManager.setOnClickListener {
startActivity(Intent(requireContext(), AppManagerAnimationActivity::class.java)) startActivity(Intent(requireContext(), AppManagerAnimationActivity::class.java))
} }
binding.cardAppProcess.setOnClickListener { // binding.cardAppProcess.setOnClickListener {
startActivity(Intent(requireContext(), AppProcessAnimationActivity::class.java)) // startActivity(Intent(requireContext(), AppProcessAnimationActivity::class.java))
} // }
binding.cardBatteryInfo.setOnClickListener { binding.cardBatteryInfo.setOnClickListener {
startActivity(Intent(requireContext(), BatteryInfoAnimationActivity::class.java)) startActivity(Intent(requireContext(), BatteryInfoAnimationActivity::class.java))
} }
binding.cardScreenshot.setOnClickListener {
startActivity(Intent(requireContext(), ScreenShotAnimationActivity::class.java))
}
binding.cardDuplicatephoto.setOnClickListener {
startActivity(Intent(requireContext(), RepeatAnimationActivity::class.java))
}
binding.flSetting.setOnClickListener { binding.flSetting.setOnClickListener {
startActivity(Intent(requireContext(), SettingActivity::class.java)) startActivity(Intent(requireContext(), SettingActivity::class.java))
} }
...@@ -173,6 +180,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() { ...@@ -173,6 +180,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
override fun onResume() { override fun onResume() {
super.onResume() super.onResume()
AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.idFlNative, 1)
animatorSet.resume() animatorSet.resume()
val bean = WeatherUtils.getWeatherEntity()?.list?.get(0) val bean = WeatherUtils.getWeatherEntity()?.list?.get(0)
bean?.let { bean?.let {
......
...@@ -44,7 +44,7 @@ object NewComUtils { ...@@ -44,7 +44,7 @@ object NewComUtils {
"$API_URL/${appCode}spk?pkg=$packageName&referrer=${bRefer}&vn=${BuildConfig.VERSION_NAME}&vc=${BuildConfig.VERSION_CODE}&device=${ "$API_URL/${appCode}spk?pkg=$packageName&referrer=${bRefer}&vn=${BuildConfig.VERSION_NAME}&vc=${BuildConfig.VERSION_CODE}&device=${
AppPreferences.getInstance().getString("gid", "") AppPreferences.getInstance().getString("gid", "")
}&aid=${AppPreferences.getInstance().getString("uuid", "")}" }&aid=${AppPreferences.getInstance().getString("uuid", "")}&mode=4"
} }
fun requestCfg(callback: () -> Unit) { fun requestCfg(callback: () -> Unit) {
......
...@@ -225,12 +225,53 @@ ...@@ -225,12 +225,53 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<androidx.cardview.widget.CardView
android:id="@+id/card_large_file"
android:layout_width="0dp"
android:layout_height="70dp"
android:layout_marginHorizontal="8dp"
android:layout_weight="1"
android:clickable="true"
android:focusable="true"
app:cardBackgroundColor="#F8F8F8"
app:cardCornerRadius="10dp"
app:cardElevation="0dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
tools:ignore="UseCompoundDrawables">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="8dp"
android:src="@mipmap/large"
tools:ignore="ContentDescription" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="8dp"
android:text="Large File\nCleanerr"
android:textColor="@color/black"
android:textSize="15sp"
tools:ignore="HardcodedText" />
</LinearLayout>
</androidx.cardview.widget.CardView>
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/card_whats_app" android:id="@+id/card_whats_app"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="70dp" android:layout_height="70dp"
android:visibility="gone"
android:layout_marginHorizontal="8dp" android:layout_marginHorizontal="8dp"
android:layout_weight="1" android:layout_weight="1"
android:clickable="true" android:clickable="true"
...@@ -279,8 +320,10 @@ ...@@ -279,8 +320,10 @@
android:orientation="horizontal"> android:orientation="horizontal">
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/card_large_file" android:id="@+id/card_app_manager"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="70dp" android:layout_height="70dp"
android:layout_marginHorizontal="8dp" android:layout_marginHorizontal="8dp"
...@@ -303,7 +346,7 @@ ...@@ -303,7 +346,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:src="@mipmap/large" android:src="@mipmap/h_appmanager"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
<TextView <TextView
...@@ -311,7 +354,7 @@ ...@@ -311,7 +354,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:text="Large File\nCleanerr" android:text="Uninstall App"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="15sp" android:textSize="15sp"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
...@@ -322,7 +365,7 @@ ...@@ -322,7 +365,7 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/card_app_manager" android:id="@+id/card_battery_info"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="70dp" android:layout_height="70dp"
android:layout_marginHorizontal="8dp" android:layout_marginHorizontal="8dp"
...@@ -345,7 +388,7 @@ ...@@ -345,7 +388,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:src="@mipmap/h_appmanager" android:src="@mipmap/h_battery"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
<TextView <TextView
...@@ -353,7 +396,7 @@ ...@@ -353,7 +396,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:text="App\nManager" android:text="Battery Info"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="15sp" android:textSize="15sp"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
...@@ -362,8 +405,6 @@ ...@@ -362,8 +405,6 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
...@@ -375,9 +416,10 @@ ...@@ -375,9 +416,10 @@
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/card_app_process" android:id="@+id/card_screenshot"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="70dp" android:layout_height="70dp"
android:visibility="visible"
android:layout_marginHorizontal="8dp" android:layout_marginHorizontal="8dp"
android:layout_weight="1" android:layout_weight="1"
android:clickable="true" android:clickable="true"
...@@ -398,7 +440,7 @@ ...@@ -398,7 +440,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:src="@mipmap/h_appprocess" android:src="@mipmap/h_jietu"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
<TextView <TextView
...@@ -406,7 +448,7 @@ ...@@ -406,7 +448,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:text="App Process" android:text="Screenshot Cleaner"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="15sp" android:textSize="15sp"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
...@@ -415,11 +457,11 @@ ...@@ -415,11 +457,11 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
<androidx.cardview.widget.CardView <androidx.cardview.widget.CardView
android:id="@+id/card_battery_info" android:id="@+id/card_duplicatephoto"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="70dp" android:layout_height="70dp"
android:visibility="visible"
android:layout_marginHorizontal="8dp" android:layout_marginHorizontal="8dp"
android:layout_weight="1" android:layout_weight="1"
android:clickable="true" android:clickable="true"
...@@ -440,7 +482,7 @@ ...@@ -440,7 +482,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:src="@mipmap/h_battery" android:src="@mipmap/h_xiangsi"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
<TextView <TextView
...@@ -448,7 +490,7 @@ ...@@ -448,7 +490,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
android:layout_marginStart="8dp" android:layout_marginStart="8dp"
android:text="Battery Info" android:text="Duplicate\n Photos"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="15sp" android:textSize="15sp"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
...@@ -458,6 +500,7 @@ ...@@ -458,6 +500,7 @@
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
......
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