Commit 1597a141 authored by yanglin's avatar yanglin

完善所有功能

parent 2f8a9c9e
{
"version": 3,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.xm.test.myfilemaster",
"variantName": "release",
"elements": [
{
"type": "SINGLE",
"filters": [],
"attributes": [],
"versionCode": 1,
"versionName": "1.0",
"outputFile": "app-release.apk"
}
],
"elementType": "File"
}
\ No newline at end of file
......@@ -35,7 +35,15 @@
tools:targetApi="31">
<activity
android:name=".activity.ImageShowActivity"
android:screenOrientation="portrait"
android:theme="@style/MediaActivityTheme"
android:exported="false" />
<activity
android:name=".activity.ResultPageActivity"
android:exported="false"
android:screenOrientation="portrait"
android:theme="@style/BatteryActivityTheme"
tools:ignore="DiscouragedApi" />
<activity
android:name=".activity.ScanResultActivity"
android:exported="false"
......
......@@ -50,7 +50,7 @@ class BatteryActivity : AppCompatActivity() {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_battery)
BatteryUtil.ReceiverBatteryOhterInfo(this)
PermissionUtil.requestLocationPermission(this)
// PermissionUtil.requestLocationPermission(this)
initView()
setOnClickListener()
......
......@@ -3,6 +3,7 @@ package com.xm.test.myfilemaster.activity
import android.annotation.SuppressLint
import android.content.Intent
import android.os.Bundle
import android.os.Environment
import android.os.Handler
import android.os.Looper
import android.util.Log
......@@ -30,6 +31,7 @@ import com.xm.test.myfilemaster.antivirus.AntivirusActivity
import com.xm.test.myfilemaster.model.CleanBean
import com.xm.test.myfilemaster.model.FileBean
import com.xm.test.myfilemaster.util.FileUtil
import kotlinx.coroutines.runInterruptible
import java.io.File
class CleanActivity : AppCompatActivity(), CleanAdapter2.IClean {
......@@ -37,9 +39,8 @@ class CleanActivity : AppCompatActivity(), CleanAdapter2.IClean {
private var mHintTv: TextView? = null
private var mProgress: ProgressBar? = null
private lateinit var mListView: RecyclerView
private lateinit var mCleanSuccessView: View
private lateinit var mScaningView: View
private lateinit var mCleanSizeSuccessTv: TextView
private var mCleanSizeSuccessTv: String = ""
// private var mCleanAdapter: CleanAdapter? = null
private var mCleanAdapter2: CleanAdapter2? = null
......@@ -75,12 +76,12 @@ class CleanActivity : AppCompatActivity(), CleanAdapter2.IClean {
mAdView = findViewById(R.id.ad_layout)
mAnimation = findViewById(R.id.clean_animation)
mCleanBtn = findViewById(R.id.clean_click_text)
mCleanSuccessView = findViewById(R.id.clean_success_layout)
// mCleanSuccessView = findViewById(R.id.clean_success_layout)
mScaningView = findViewById(R.id.battery_animation_btn)
mCleanSizeSuccessTv = findViewById(R.id.clean_success_size_text)
// mCleanSizeSuccessTv = findViewById(R.id.clean_success_size_text)
CleanAdapter.isCleanOver = false
mCleanBtn.text = "One-click cleanup of 0 B"
mCleanSizeSuccessTv.text = "Successfully cleaned up 1KB of junk!"
// mCleanSizeSuccessTv.text = "Successfully cleaned up 1KB of junk!"
setViewOnclickListener()
......@@ -112,11 +113,18 @@ class CleanActivity : AppCompatActivity(), CleanAdapter2.IClean {
MyApplication.mCleanSdk?.startScan(junkScanCallback, true)
MyApplication.mCleanSdk?.timeout(30000)
Thread(Runnable {
FileUtil.scanEmptyFiles(Environment.getExternalStorageDirectory(), mCleanBeans[0].fileBeans, 5)
runOnUiThread {
mCleanAdapter2?.setData(mCleanBeans)
}
}).start()
val handler = Handler(Looper.getMainLooper())
val runnable = object : Runnable {
override fun run() {
if (mCount < 99) {
if (mCount < 92) {
mCount++
mProgress?.setProgress(mCount)
handler.postDelayed(this, 300)
......@@ -132,18 +140,7 @@ class CleanActivity : AppCompatActivity(), CleanAdapter2.IClean {
mQuitBtn?.setOnClickListener {
finish()
}
findViewById<View>(R.id.go_to_antivirus).setOnClickListener {
startActivity(Intent(this, AntivirusActivity::class.java))
}
findViewById<View>(R.id.go_to_battery).setOnClickListener {
startActivity(Intent(this, BatteryActivity::class.java))
}
findViewById<View>(R.id.go_to_scan_large).setOnClickListener {
startActivity(Intent(this, ScanLargeFilesActivity::class.java))
}
findViewById<View>(R.id.go_to_scan_similar_images).setOnClickListener {
startActivity(Intent(this, SimilarImagesActivity::class.java))
}
findViewById<View>(R.id.clean_click_text).setOnClickListener {
mAnimation.visibility = View.VISIBLE
Thread(Runnable {
......@@ -152,11 +149,12 @@ class CleanActivity : AppCompatActivity(), CleanAdapter2.IClean {
MyApplication.mCleanSdk?.delete(File(it.filePath))
}
runOnUiThread {
mListView.visibility = View.GONE
mAnimation.visibility = View.GONE
findViewById<View>(R.id.ad_layout).visibility = View.GONE
findViewById<View>(R.id.over_layout).visibility = View.VISIBLE
mCleanSuccessView.visibility = View.VISIBLE
val intent = Intent(this, ResultPageActivity::class.java)
intent.putExtra("pageTitle", "Clean")
intent.putExtra("pageName", "clean")
intent.putExtra("pageSuccessText", mCleanSizeSuccessTv)
startActivity(intent)
finish()
}
}).start()
}
......@@ -349,7 +347,7 @@ class CleanActivity : AppCompatActivity(), CleanAdapter2.IClean {
"${size}B"
}
mCleanBtn.text = "One-click cleanup of $sizeStr"
mCleanSizeSuccessTv.text = "Successfully cleaned up $sizeStr of junk!"
mCleanSizeSuccessTv = "Successfully cleaned up $sizeStr of junk!"
}
......
......@@ -97,7 +97,7 @@ class MediaActivity : AppCompatActivity() {
// binding.imageItemGrid.adapter = mItemAdapter
Thread(Runnable {
WaitDialog.show("please wait..")
mItemDataList = FileUtil.getMediaFiles(this, mFileType!!, 50)
mItemDataList = FileUtil.getMediaFiles(this, mFileType!!, 30)
runOnUiThread {
WaitDialog.dismiss()
for (fileBean in mItemDataList) {
......@@ -150,7 +150,7 @@ class MediaActivity : AppCompatActivity() {
bundle.putSerializable("fileBean", mItemDataList[position])
intent.putExtras(bundle)
intent.putExtra("fileType", mFileType)
startActivity(intent)
// startActivity(intent)
}
}
}
......
package com.xm.test.myfilemaster.activity
import android.content.Intent
import android.os.Bundle
import android.view.View
import androidx.activity.ComponentActivity
import com.xm.test.myfilemaster.R
import com.xm.test.myfilemaster.antivirus.AntivirusActivity
import com.xm.test.myfilemaster.databinding.ActivityAntivirusBinding
import com.xm.test.myfilemaster.databinding.ActivityMainBinding
import com.xm.test.myfilemaster.databinding.ResultLayoutBinding
class ResultPageActivity : ComponentActivity() {
private lateinit var binding: ResultLayoutBinding
private var mFromWhereType: String = ""
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// setContentView(R.layout.result_layout)
binding = ResultLayoutBinding.inflate(layoutInflater)
var view = binding.root
setContentView(view)
initView()
setViewOnClickListener()
}
private fun initView() {
binding.resultTitle.text = intent.getStringExtra("pageTitle") ?: ""
binding.cleanSuccessSizeText.text = intent.getStringExtra("pageSuccessText") ?: ""
mFromWhereType = intent.getStringExtra("pageName").toString() ?: ""
when (mFromWhereType){
"clean" ->{
binding.cleanView.visibility = View.GONE
binding.AntivirusView.visibility = View.VISIBLE
}
"antivirus" ->{
binding.cleanView.visibility = View.VISIBLE
binding.AntivirusView.visibility = View.GONE
}
}
}
fun setViewOnClickListener(){
binding.goToAntivirus.setOnClickListener {
startActivity(Intent(this, AntivirusActivity::class.java))
finish()
}
binding.goToBattery.setOnClickListener {
startActivity(Intent(this, BatteryActivity::class.java))
finish()
}
binding.goToScanLarge.setOnClickListener {
startActivity(Intent(this, ScanLargeFilesActivity::class.java))
finish()
}
binding.goToScanSimilarImages.setOnClickListener {
startActivity(Intent(this, SimilarImagesActivity::class.java))
finish()
}
binding.goToClean.setOnClickListener {
startActivity(Intent(this, CleanActivity::class.java))
finish()
}
binding.resultQuitBtn.setOnClickListener {
finish()
}
}
}
\ No newline at end of file
......@@ -107,7 +107,16 @@ class ScanResultActivity : AppCompatActivity() {
mSettleText.text = mIgnoreCount.toString()
mAntivirusSuccessView.visibility = View.VISIBLE
}
findViewById<View>(R.id.scan_result_quit_btn).setOnClickListener {
finish()
}
findViewById<View>(R.id.scan_result_finish_text).setOnClickListener {
val intent = Intent(this, ResultPageActivity::class.java)
intent.putExtra("pageTitle", "Antivirus")
intent.putExtra("pageName", "antivirus")
intent.putExtra("pageSuccessText", "No risks were identified")
startActivity(intent)
finish()
}
}
......
package com.xm.test.myfilemaster.antivirus
import android.content.Context
import android.content.Intent
import android.content.SharedPreferences
import android.os.Bundle
import android.os.Handler
import android.os.Looper
......@@ -17,7 +19,6 @@ import com.xm.test.myfilemaster.activity.ScanResultActivity
class AntivirusActivity : AppCompatActivity() {
private lateinit var mPage1: View
private lateinit var mPage2: View
private lateinit var mPagerCheck: View
private lateinit var mProgress: ProgressBar
......@@ -27,20 +28,31 @@ class AntivirusActivity : AppCompatActivity() {
private var mIntent : Intent? = null
private var mTotal = "22"
private var isClickAgree = false
private var mSp: SharedPreferences? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_antivirus)
mIntent = Intent(this, ScanResultActivity::class.java)
initView()
setOnclickListener()
// SharedPreferences(Context.MODE_PRIVATE, "isClickAgree")
mSp = getSharedPreferences("antivirus", MODE_PRIVATE)
isClickAgree = mSp!!.getBoolean("isClickAgree", false)
if (isClickAgree){
startAntivirus()
}
}
private fun setOnclickListener() {
findViewById<View>(R.id.interrupt_cancel_text).setOnClickListener {
MyApplication.mCloudScan?.cancelScan()
finish()
}
// findViewById<View>(R.id.interrupt_cancel_text).setOnClickListener {
// MyApplication.mCloudScan?.cancelScan()
// finish()
// }
findViewById<View>(R.id.antivirus_quit_btn).setOnClickListener {
MyApplication.mCloudScan?.cancelScan()
finish()
......@@ -49,12 +61,12 @@ class AntivirusActivity : AppCompatActivity() {
MyApplication.mCloudScan?.cancelScan()
finish()
}
findViewById<View>(R.id.Start_scanning).setOnClickListener {
val edit = mSp!!.edit()
edit.putBoolean("isClickAgree", true)
edit.apply()
startAntivirus()
mPage2.visibility = View.GONE
mPagerCheck.visibility = View.VISIBLE
}
findViewById<View>(R.id.antivirus_stop_text).setOnClickListener {
MyApplication.mCloudScan?.cancelScan()
......@@ -63,7 +75,6 @@ class AntivirusActivity : AppCompatActivity() {
}
private fun initView() {
mPage1 = findViewById(R.id.antivirus_page_1)
mPage2 = findViewById(R.id.antivirus_page_2)
mPagerCheck = findViewById(R.id.check_the_source_layout)
mProgress = findViewById(R.id.antivirus_progress)
......@@ -73,6 +84,8 @@ class AntivirusActivity : AppCompatActivity() {
}
private fun startAntivirus(){
mPage2.visibility = View.GONE
mPagerCheck.visibility = View.VISIBLE
MyApplication.mCloudScan?.startQuickScan(object : CloudScanListener(){
override fun onScanStarted() {
Log.e("yanglin", "onScanStarted: start", )
......
......@@ -304,6 +304,24 @@ object FileUtil {
}
}
fun scanEmptyFiles(file: File, fileBeans: ArrayList<FileBean>, number: Int){
if (fileBeans.size >= number) return
file.listFiles().forEach {
if (it.isDirectory && it.listFiles()?.isEmpty() ?: false){
val fileBean = FileBean()
fileBean.fileName = it.name
fileBean.filePath = it.path
fileBean.fileSize = it.length()
fileBean.fileType = "dir"
fileBean.isDir = true
fileBeans.add(fileBean)
}else if (it.isDirectory && it.listFiles()?.isNotEmpty() ?: false){
scanEmptyFiles(it, fileBeans, number)
}
}
}
fun dpToPx(dp: Int, context: Context): Int {
return TypedValue.applyDimension(
......
......@@ -7,61 +7,6 @@
android:layout_height="match_parent"
tools:context=".antivirus.AntivirusActivity">
<FrameLayout
android:id="@+id/antivirus_page_1"
android:background="@color/black"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:orientation="vertical"
android:layout_gravity="center_vertical"
android:background="@drawable/bg_item_shape"
android:padding="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Warm reminder"
android:layout_gravity="center_horizontal"
android:textSize="21dp"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TrustlookSDK provides security services
thatrecord a Some information, including userinstalled
applications and device messagesBecause it will analyze
the applicatiorcollection,
apply static and rows Provideapplication risk report for analysis.
\n\nView infom"/>
<TextView
android:id="@+id/interrupt_scan_text"
android:layout_width="245dp"
android:layout_height="42dp"
android:layout_marginTop="16dp"
android:background="@drawable/bg_btn_sure_shape"
android:layout_gravity="center_horizontal"
android:text="Interrupt scan"
android:gravity="center"
android:textColor="@color/white"
android:textStyle="bold"/>
<TextView
android:id="@+id/interrupt_cancel_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cancel"
android:layout_gravity="center_horizontal"
android:layout_marginTop="12dp"
android:textColor="#8B8B8B"/>
</LinearLayout>
</FrameLayout>
<FrameLayout
android:id="@+id/antivirus_page_2"
android:layout_width="match_parent"
......
......@@ -55,47 +55,7 @@
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/qinglisaomiao" />
<LinearLayout
android:id="@+id/clean_success_layout"
android:orientation="vertical"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_centerInParent="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/clean_success"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="completed !"
android:textSize="33dp"
android:textColor="@color/white"
android:layout_marginStart="22dp"/>
</LinearLayout>
<TextView
android:id="@+id/clean_success_size_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Successfully cleaned up 414KB of junk!"
android:layout_gravity="center|bottom"
android:textColor="@color/white"/>
</LinearLayout>
<!--1111-->
</RelativeLayout>
......
......@@ -59,7 +59,7 @@
android:text="22"
android:textColor="@color/style_background"
android:textStyle="bold"
android:textSize="44dp"
android:textSize="41sp"
android:layout_marginStart="16dp"
android:layout_marginTop="50dp"/>
......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:background="@drawable/bg_ad_shape"
android:padding="8dp"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:layout_height="90dp">
<ImageView
android:id="@+id/ad_image"
android:src="@mipmap/battery_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/ad_title_text"
android:layout_width="wrap_content"
<ImageView
android:layout_centerInParent="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="15dp"
android:textStyle="bold"
android:textColor="@color/black"
android:layout_toRightOf="@+id/ad_image"
android:text="澳门皇冠赌场"/>
android:src="@mipmap/ad"/>
<!-- <ImageView-->
<!-- android:id="@+id/ad_image"-->
<!-- android:src="@mipmap/battery_image"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"/>-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="性感荷官在线发牌"
android:layout_toRightOf="@+id/ad_image"
android:layout_below="@+id/ad_title_text"
android:textSize="9dp"/>
<!-- <TextView-->
<!-- android:id="@+id/ad_title_text"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:textSize="15dp"-->
<!-- android:textStyle="bold"-->
<!-- android:textColor="@color/black"-->
<!-- android:layout_toRightOf="@+id/ad_image"-->
<!-- android:text="澳门皇冠赌场"/>-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="赶快来体验"
android:textSize="9dp"
android:layout_toRightOf="@+id/ad_image"
android:layout_alignParentBottom="true"/>
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="性感荷官在线发牌"-->
<!-- android:layout_toRightOf="@+id/ad_image"-->
<!-- android:layout_below="@+id/ad_title_text"-->
<!-- android:textSize="9dp"/>-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="赶快来体验"-->
<!-- android:textSize="9dp"-->
<!-- android:layout_toRightOf="@+id/ad_image"-->
<!-- android:layout_alignParentBottom="true"/>-->
</RelativeLayout>
\ No newline at end of file
......@@ -14,13 +14,13 @@
<LinearLayout
android:id="@+id/scan_ing_layout"
android:layout_below="@+id/antivirus_quit_btn"
android:layout_below="@+id/antivirus_quit_btn_2"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:textSize="19dp"
android:textSize="16dp"
android:textColor="@color/black"
android:textStyle="bold"
android:layout_marginTop="38dp"
......@@ -39,7 +39,7 @@
android:layout_alignParentBottom="true"
android:layout_width="wrap_content"
android:layout_marginBottom="30dp"
android:textSize="19dp"
android:textSize="16dp"
android:layout_height="wrap_content"
android:text="Applications from unknow soursess: 10"
android:textColor="#FF0707"/>
......@@ -49,7 +49,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tiktok"
android:textSize="19dp"/>
android:textSize="16sp"/>
</RelativeLayout>
......@@ -70,7 +70,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_gravity="center_horizontal"
android:textSize="19dp"
android:textSize="16sp"
android:text="Stop"
android:textStyle="bold"
android:textColor="#999999"/>
......@@ -84,7 +84,7 @@
android:layout_width="match_parent"
android:visibility="gone"
android:layout_height="match_parent"
android:layout_below="@id/antivirus_quit_btn">
android:layout_below="@id/antivirus_quit_btn_2">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/antivirus_page_1"
android:background="@color/black"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp"
android:orientation="vertical"
android:layout_gravity="center_vertical"
android:background="@drawable/bg_item_shape"
android:padding="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Warm reminder"
android:layout_gravity="center_horizontal"
android:textSize="21dp"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TrustlookSDK provides security services
thatrecord a Some information, including userinstalled
applications and device messagesBecause it will analyze
the applicatiorcollection,
apply static and rows Provideapplication risk report for analysis.
\n\nView infom"/>
<TextView
android:id="@+id/interrupt_scan_text"
android:layout_width="245dp"
android:layout_height="42dp"
android:layout_gravity="center_horizontal"
android:layout_marginTop="16dp"
android:background="@drawable/bg_btn_sure_shape"
android:gravity="center"
android:text="Interrupt scan"
android:textColor="@color/white"
android:textStyle="bold" />
<TextView
android:id="@+id/interrupt_cancel_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cancel"
android:layout_gravity="center_horizontal"
android:layout_marginTop="12dp"
android:textColor="#8B8B8B"/>
</LinearLayout>
</FrameLayout>
</RelativeLayout>
\ No newline at end of file
......@@ -12,7 +12,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Create a new folder"
android:layout_marginBottom="16dp"
android:layout_marginBottom="8dp"
android:textSize="17dp"
android:textStyle="bold"/>
......@@ -20,6 +20,7 @@
android:id="@+id/dialog_hint_text"
android:layout_width="wrap_content"
android:layout_marginBottom="16dp"
android:layout_marginTop="8dp"
android:layout_height="wrap_content"
android:text="Please enter a file name"
android:textSize="17dp"/>
......
......@@ -234,7 +234,6 @@
android:gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="17dp"
android:text="Antivirus"/>
</LinearLayout>
......@@ -254,7 +253,6 @@
android:gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="17dp"
android:text="Battery Info"/>
</LinearLayout>
......@@ -281,7 +279,6 @@
android:gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="17dp"
android:text="@string/scan_large_files"/>
</LinearLayout>
......@@ -323,7 +320,6 @@
android:layout_weight="0.9"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:textSize="17dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Scan\nSimilar Images"/>
......
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="home_btn_textsp">15sp</dimen>
</resources>
\ No newline at end of file
File added
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