Commit b869a12c authored by wanglei's avatar wanglei

...

parent b0d1f423
...@@ -24,6 +24,7 @@ import androidx.annotation.ColorInt ...@@ -24,6 +24,7 @@ import androidx.annotation.ColorInt
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.widget.AppCompatTextView import androidx.appcompat.widget.AppCompatTextView
import androidx.core.app.ActivityOptionsCompat import androidx.core.app.ActivityOptionsCompat
import androidx.core.graphics.Insets
import androidx.core.view.ViewCompat import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat import androidx.core.view.WindowInsetsCompat
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
...@@ -37,10 +38,6 @@ import com.base.appzxhy.bean.FeatureBean.Companion.BATTERY_INFO ...@@ -37,10 +38,6 @@ import com.base.appzxhy.bean.FeatureBean.Companion.BATTERY_INFO
import com.base.appzxhy.bean.FeatureBean.Companion.JUNK_CLEAN import com.base.appzxhy.bean.FeatureBean.Companion.JUNK_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.LARGE_FILE_CLEAN import com.base.appzxhy.bean.FeatureBean.Companion.LARGE_FILE_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.PHOTO_COMPRESSION import com.base.appzxhy.bean.FeatureBean.Companion.PHOTO_COMPRESSION
import com.base.appzxhy.bean.FeatureBean.Companion.RECOVERY_AUDIOS
import com.base.appzxhy.bean.FeatureBean.Companion.RECOVERY_DOCUMENTS
import com.base.appzxhy.bean.FeatureBean.Companion.RECOVERY_PHOTOS
import com.base.appzxhy.bean.FeatureBean.Companion.RECOVERY_VIDEOS
import com.base.appzxhy.bean.FeatureBean.Companion.SCREENSHOT_CLEAN import com.base.appzxhy.bean.FeatureBean.Companion.SCREENSHOT_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.SIMILAR_PHOTOS import com.base.appzxhy.bean.FeatureBean.Companion.SIMILAR_PHOTOS
import com.base.appzxhy.bean.FileBean import com.base.appzxhy.bean.FileBean
...@@ -91,6 +88,7 @@ abstract class BaseActivity<VB : ViewBinding>( ...@@ -91,6 +88,7 @@ abstract class BaseActivity<VB : ViewBinding>(
lateinit var launcher: ActivityLauncher lateinit var launcher: ActivityLauncher
private var currentLocale: Locale? = null private var currentLocale: Locale? = null
lateinit var vpnStatusListener: VpnStatusListener lateinit var vpnStatusListener: VpnStatusListener
var insetsCallBack: ((insets: Insets) -> Unit)? = null
var onCreateI = 0 var onCreateI = 0
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
...@@ -275,6 +273,7 @@ abstract class BaseActivity<VB : ViewBinding>( ...@@ -275,6 +273,7 @@ abstract class BaseActivity<VB : ViewBinding>(
ViewCompat.setOnApplyWindowInsetsListener(binding.root) { v, insets -> ViewCompat.setOnApplyWindowInsetsListener(binding.root) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()) val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom) v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insetsCallBack?.invoke(systemBars)
insets insets
} }
} }
......
...@@ -5,6 +5,7 @@ class FeatureBean( ...@@ -5,6 +5,7 @@ class FeatureBean(
val titleRes: Int = 0, val titleRes: Int = 0,
val icon: Int = 0, val icon: Int = 0,
val content: Int = 0, val content: Int = 0,
val color: Int = 0,
) { ) {
var span: Int = 1 var span: Int = 1
...@@ -16,9 +17,13 @@ class FeatureBean( ...@@ -16,9 +17,13 @@ class FeatureBean(
const val PHOTO_COMPRESSION = "photo_compression" const val PHOTO_COMPRESSION = "photo_compression"
const val SIMILAR_PHOTOS = "similar_photos" const val SIMILAR_PHOTOS = "similar_photos"
const val RECOVERY_PHOTOS="recovery_photos" const val RECOVERY_PHOTOS = "recovery_photos"
const val RECOVERY_VIDEOS="recovery_videos" const val RECOVERY_VIDEOS = "recovery_videos"
const val RECOVERY_AUDIOS="recovery_audios" const val RECOVERY_AUDIOS = "recovery_audios"
const val RECOVERY_DOCUMENTS="recovery_documents" const val RECOVERY_DOCUMENTS = "recovery_documents"
const val ANTIVIRUS = "antivirus"
const val SETTINGS = "settings"
} }
} }
\ No newline at end of file
...@@ -7,7 +7,6 @@ import androidx.recyclerview.widget.RecyclerView.ViewHolder ...@@ -7,7 +7,6 @@ import androidx.recyclerview.widget.RecyclerView.ViewHolder
import com.base.appzxhy.R import com.base.appzxhy.R
import com.base.appzxhy.bean.FeatureBean import com.base.appzxhy.bean.FeatureBean
import com.base.appzxhy.databinding.ItemFeatureSpan1Binding import com.base.appzxhy.databinding.ItemFeatureSpan1Binding
import com.base.appzxhy.databinding.ItemFeatureSpan2Binding
import com.base.appzxhy.utils.Utils.inflate import com.base.appzxhy.utils.Utils.inflate
import com.chad.library.adapter4.BaseQuickAdapter import com.chad.library.adapter4.BaseQuickAdapter
...@@ -25,34 +24,19 @@ class FeatureItemAdapter : BaseQuickAdapter<FeatureBean, FeatureItemAdapter.Koko ...@@ -25,34 +24,19 @@ class FeatureItemAdapter : BaseQuickAdapter<FeatureBean, FeatureItemAdapter.Koko
override fun onBindViewHolder(holder: Koko8888, position: Int, item: FeatureBean?) { override fun onBindViewHolder(holder: Koko8888, position: Int, item: FeatureBean?) {
item ?: return item ?: return
val context = holder.itemView.context val context = holder.itemView.context
when (item.span) {
1 -> {
val binding = ItemFeatureSpan2Binding.bind(holder.itemView)
binding.ivIcon.setImageResource(item.icon)
binding.tvName.text = context.getString(item.titleRes)
binding.root.setOnClickListener {
itemClick?.invoke(item)
}
}
3 -> {
val binding = ItemFeatureSpan1Binding.bind(holder.itemView) val binding = ItemFeatureSpan1Binding.bind(holder.itemView)
binding.ivIcon.setImageResource(item.icon) binding.ivIcon.setImageResource(item.icon)
binding.tvName.text = context.getString(item.titleRes) binding.tvName.text = context.getString(item.titleRes)
binding.tvContent.text = context.getString(item.content)
binding.ll.setBackgroundColor(item.color)
binding.root.setOnClickListener { binding.root.setOnClickListener {
itemClick?.invoke(item) itemClick?.invoke(item)
} }
} }
}
}
override fun onCreateViewHolder(context: Context, parent: ViewGroup, viewType: Int): Koko8888 {
val layout = when (viewType) { override fun onCreateViewHolder(context: Context, parent: ViewGroup, viewType: Int): Koko8888 {
1 -> R.layout.item_feature_span2 return Koko8888(R.layout.item_feature_span1.inflate(parent))
3 -> R.layout.item_feature_span1
else -> 0
}
return Koko8888(layout.inflate(parent))
} }
} }
\ No newline at end of file
package com.base.appzxhy.ui.main package com.base.appzxhy.ui.main
import androidx.core.graphics.toColorInt
import com.base.appzxhy.R
import com.base.appzxhy.base.BaseFragment import com.base.appzxhy.base.BaseFragment
import com.base.appzxhy.bean.FeatureBean
import com.base.appzxhy.bean.FeatureBean.Companion.ANTIVIRUS
import com.base.appzxhy.bean.FeatureBean.Companion.BATTERY_INFO
import com.base.appzxhy.bean.FeatureBean.Companion.JUNK_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.LARGE_FILE_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.PHOTO_COMPRESSION
import com.base.appzxhy.bean.FeatureBean.Companion.SCREENSHOT_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.SETTINGS
import com.base.appzxhy.bean.FeatureBean.Companion.SIMILAR_PHOTOS
import com.base.appzxhy.databinding.FragmentHomeBinding import com.base.appzxhy.databinding.FragmentHomeBinding
class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::inflate) { class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::inflate) {
private val adapter = FeatureItemAdapter()
private val featureList by lazy {
listOf<FeatureBean>(
FeatureBean(
JUNK_CLEAN,
R.string.clean_junk,
R.drawable.icon_clean,
R.string.make_your_phone_clean,
"#FFF7F2".toColorInt()
),
FeatureBean(
ANTIVIRUS,
R.string.antivirus,
R.drawable.icon_antivirus,
R.string.mobile_antivirus_protection,
"#F2FFF7".toColorInt()
),
FeatureBean(
SCREENSHOT_CLEAN,
R.string.screenshot_clean,
R.drawable.icon_screenshot,
R.string.clear_phone_screenshot,
"#FFFCF2".toColorInt()
),
FeatureBean(
LARGE_FILE_CLEAN,
R.string.large_file_clean,
R.drawable.icon_large_file_clean,
R.string.clear_large_files_on_the_phone,
"#F2FFF7".toColorInt()
),
FeatureBean(
SIMILAR_PHOTOS,
R.string.similar_photos,
R.drawable.icon_similar,
R.string.cear_simnilar_pictures_on_the_phone,
"#FBF7FF".toColorInt()
),
FeatureBean(
PHOTO_COMPRESSION,
R.string.image_compression,
R.drawable.icon_compression,
R.string.coepress_mobile_phone_images,
"#FFF7F2".toColorInt()
),
FeatureBean(
BATTERY_INFO,
R.string.battery_info,
R.drawable.icon_battery,
R.string.wiew_battery_information,
"#F2FFF7".toColorInt()
),
FeatureBean(
SETTINGS,
R.string.settings,
R.drawable.icon_set,
R.string.show_all_settings,
"#FBF7FF".toColorInt()
),
)
}
override fun initView() {
super.initView()
(requireActivity() as MainActivity).insetsCallBack = { insets ->
binding.flTop.setPadding(0, insets.top, 0, 0)
}
binding.rv.adapter = adapter
adapter.submitList(featureList)
}
override fun initListener() {
super.initListener()
}
} }
\ No newline at end of file
package com.base.appzxhy.ui.main package com.base.appzxhy.ui.main
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.base.appzxhy.base.BaseActivity import com.base.appzxhy.base.BaseActivity
import com.base.appzxhy.business.ads.AdsMgr
import com.base.appzxhy.databinding.ActivityMainBinding import com.base.appzxhy.databinding.ActivityMainBinding
class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::inflate) { class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::inflate) {
override fun useDefaultImmersive() {
ViewCompat.setOnApplyWindowInsetsListener(binding.root) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, 0, systemBars.right, systemBars.bottom)
insetsCallBack?.invoke(systemBars)
insets
}
}
override fun initView() { override fun initView() {
super.initView() super.initView()
AdsMgr.showBanner(binding.flBanner, false)
} }
override fun initListener() { override fun initListener() {
......
...@@ -8,7 +8,6 @@ import com.base.appzxhy.databinding.ActivitySettingBinding ...@@ -8,7 +8,6 @@ import com.base.appzxhy.databinding.ActivitySettingBinding
class SettingActivity : BaseActivity<ActivitySettingBinding>(ActivitySettingBinding::inflate) { class SettingActivity : BaseActivity<ActivitySettingBinding>(ActivitySettingBinding::inflate) {
var insetsCallBack: ((insets: Insets) -> Unit)? = null
override fun useDefaultImmersive() { override fun useDefaultImmersive() {
ViewCompat.setOnApplyWindowInsetsListener(binding.root) { v, insets -> ViewCompat.setOnApplyWindowInsetsListener(binding.root) { v, insets ->
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#ffffff" />
<corners android:radius="@dimen/dp_24" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/white" />
<corners
android:topLeftRadius="@dimen/dp_24"
android:topRightRadius="@dimen/dp_24" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 背景 -->
<item android:id="@android:id/background">
<shape>
<solid android:color="#00B77D" /> <!-- 背景颜色 -->
</shape>
</item>
<!-- 进度条 -->
<item android:id="@android:id/progress">
<clip>
<shape>
<solid android:color="@color/white" /> <!-- 进度条颜色 -->
</shape>
</clip>
</item>
</layer-list>
\ No newline at end of file
...@@ -30,14 +30,176 @@ ...@@ -30,14 +30,176 @@
<androidx.core.widget.NestedScrollView <androidx.core.widget.NestedScrollView
android:id="@+id/rv" android:id="@+id/nestedScrollView"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"
android:overScrollMode="never" android:overScrollMode="never"
android:paddingHorizontal="8dp"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/flTop"> app:layout_constraintTop_toBottomOf="@id/flTop">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<FrameLayout
android:layout_width="@dimen/dp_180"
android:layout_height="@dimen/dp_180"
android:layout_marginTop="@dimen/dp_50"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:srcCompat="@drawable/clean" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center_horizontal"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/white"
android:textSize="@dimen/sp_30"
tools:text="96.6" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_8"
android:text="@string/junk_files"
android:textColor="@color/white"
android:textSize="@dimen/sp_16" />
</LinearLayout>
</FrameLayout>
<LinearLayout
android:id="@+id/ll1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_16"
android:gravity="end"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:textColor="@color/white"
android:textSize="@dimen/sp_12"
tools:text="76%" />
<ProgressBar
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="@dimen/dp_88"
android:layout_height="@dimen/dp_4"
android:layout_marginTop="@dimen/dp_2"
android:max="100"
android:progressDrawable="@drawable/progress_drawable_home"
android:scaleX="-1"
tools:progress="76" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_2"
android:includeFontPadding="false"
android:text="@string/memory_used"
android:textColor="@color/white"
android:textSize="@dimen/sp_12" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginEnd="@dimen/dp_16"
android:gravity="end"
android:orientation="vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/ll1">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:textColor="@color/white"
android:textSize="@dimen/sp_12"
tools:text="76%" />
<ProgressBar
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="@dimen/dp_88"
android:layout_height="@dimen/dp_4"
android:layout_marginTop="@dimen/dp_2"
android:max="100"
android:progressDrawable="@drawable/progress_drawable_home"
android:scaleX="-1"
tools:progress="76" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_2"
android:includeFontPadding="false"
android:text="@string/storage_used"
android:textColor="@color/white"
android:textSize="@dimen/sp_12" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_26"
android:background="@drawable/bg_ffffff_24"
android:paddingHorizontal="@dimen/dp_18"
android:paddingVertical="@dimen/dp_8"
android:text="@string/CLEAN"
android:textColor="#2DD29E"
android:textStyle="bold" />
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_12"
android:padding="@dimen/dp_8"
app:srcCompat="@drawable/icon_jiantou" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_ffffff_tlr24"
android:overScrollMode="never"
android:paddingVertical="@dimen/dp_16"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" />
</LinearLayout>
</androidx.core.widget.NestedScrollView> </androidx.core.widget.NestedScrollView>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" <androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="@dimen/dp_70"
android:layout_marginHorizontal="16dp" android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginVertical="6dp" android:layout_marginVertical="6dp"
android:background="@drawable/bg_f8f9fa_15"> app:cardCornerRadius="@dimen/dp_8"
app:cardElevation="0dp">
<LinearLayout
android:id="@+id/ll"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:foreground="?attr/selectableItemBackground"
android:gravity="center_vertical"
android:orientation="horizontal"
tools:background="#FFF7F2">
<androidx.appcompat.widget.AppCompatImageView <androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv_icon" android:id="@+id/ivIcon"
android:layout_width="@dimen/dp_30" android:layout_width="@dimen/dp_40"
android:layout_height="@dimen/dp_30" android:layout_height="@dimen/dp_40"
android:layout_marginVertical="20dp" android:layout_marginStart="@dimen/dp_16" />
android:layout_marginStart="18dp"
android:src="@drawable/h_junkclean" <LinearLayout
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/tv_name"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="22dp" android:layout_marginHorizontal="@dimen/dp_8"
android:layout_marginEnd="8dp" android:layout_weight="1"
android:text="@string/app_name" android:orientation="vertical">
android:textColor="@color/black"
android:textSize="16sp" <TextView
app:layout_constraintBottom_toBottomOf="parent" android:id="@+id/tvName"
app:layout_constraintEnd_toStartOf="@id/iv_more" android:layout_width="match_parent"
app:layout_constraintStart_toEndOf="@id/iv_icon" android:layout_height="match_parent"
app:layout_constraintTop_toTopOf="parent" /> android:textColor="#262626"
android:textSize="@dimen/sp_16"
android:textStyle="bold"
tools:text="@string/clean_junk" />
<TextView
android:id="@+id/tvContent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#999999"
android:textSize="@dimen/sp_14"
tools:text="Make your phone clean" />
</LinearLayout>
<androidx.appcompat.widget.AppCompatImageView <androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv_more"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginEnd="16dp" android:layout_marginEnd="@dimen/dp_16"
android:src="@drawable/icon_right_tool" app:srcCompat="@drawable/icon_jiantou" />
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" </LinearLayout>
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.cardview.widget.CardView>
\ No newline at end of file \ No newline at end of file
...@@ -48,4 +48,6 @@ ...@@ -48,4 +48,6 @@
<dimen name="dp_260">260dp</dimen> <dimen name="dp_260">260dp</dimen>
<dimen name="dp_26">26dp</dimen> <dimen name="dp_26">26dp</dimen>
<dimen name="dp_450">450dp</dimen> <dimen name="dp_450">450dp</dimen>
<dimen name="sp_30">30sp</dimen>
<dimen name="dp_88">88dp</dimen>
</resources> </resources>
\ No newline at end of file
...@@ -152,5 +152,19 @@ Please rest assured that we will handle your information in strict accordance wi ...@@ -152,5 +152,19 @@ Please rest assured that we will handle your information in strict accordance wi
<string name="notification_title">Turn on notification</string> <string name="notification_title">Turn on notification</string>
<string name="notification_content">Never miss important phone cleaning notification reminders</string> <string name="notification_content">Never miss important phone cleaning notification reminders</string>
<string name="turn_on">Turn on</string> <string name="turn_on">Turn on</string>
<string name="junk_files">Junk Files</string>
<string name="memory_used">Memory Used</string>
<string name="storage_used">Storage Used</string>
<string name="CLEAN">CLEAN</string>
<string name="make_your_phone_clean">Make your phone clean</string>
<string name="antivirus">Antivirus</string>
<string name="mobile_antivirus_protection">Mobile antivirus protection</string>
<string name="clear_phone_screenshot">Clear phone screenshot</string>
<string name="clear_large_files_on_the_phone">Clear large files on the phone</string>
<string name="cear_simnilar_pictures_on_the_phone">Cear simnilar pictures on the phone</string>
<string name="image_compression">image Compression</string>
<string name="coepress_mobile_phone_images">Coepress mobile phone images</string>
<string name="wiew_battery_information">Wiew battery information</string>
<string name="show_all_settings">show all settings</string>
</resources> </resources>
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