Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
B
Browser White
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
Browser White
Commits
33c2cba5
Commit
33c2cba5
authored
Aug 14, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...
parent
d17b317a
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
253 additions
and
0 deletions
+253
-0
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+12
-0
ConstObject.kt
app/src/main/java/com/base/browserwhite/bean/ConstObject.kt
+10
-0
CleaningActivity.kt
...se/browserwhite/ui/activity/cleanjunk/CleaningActivity.kt
+103
-0
ResultActivity.kt
...om/base/browserwhite/ui/activity/result/ResultActivity.kt
+17
-0
MediaStoreUtils.kt
.../main/java/com/base/browserwhite/utils/MediaStoreUtils.kt
+17
-0
activity_layout_cleanuping.xml
app/src/main/res/layout/activity_layout_cleanuping.xml
+84
-0
activity_result.xml
app/src/main/res/layout/activity_result.xml
+10
-0
qingliyuan.webp
app/src/main/res/mipmap-xxhdpi/qingliyuan.webp
+0
-0
qingliz.webp
app/src/main/res/mipmap-xxhdpi/qingliz.webp
+0
-0
No files found.
app/src/main/AndroidManifest.xml
View file @
33c2cba5
...
...
@@ -36,6 +36,18 @@
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<activity
android:name=
".ui.activity.result.ResultActivity"
android:exported=
"false"
android:launchMode=
"singleTop"
android:screenOrientation=
"portrait"
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
/>
<activity
android:name=
".ui.activity.cleanjunk.CleaningActivity"
android:exported=
"false"
android:launchMode=
"singleTop"
android:screenOrientation=
"portrait"
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
/>
<activity
android:name=
".ui.activity.cleanjunk.ScanJunkActivity"
android:exported=
"false"
...
...
app/src/main/java/com/base/browserwhite/bean/ConstObject.kt
View file @
33c2cba5
...
...
@@ -9,6 +9,16 @@ object ConstObject {
const
val
YANDEX
=
"Yandex"
const
val
BAIDU
=
"Baidu"
const
val
JUNK_CLEANER
=
"Junk Cleaner"
// const val REPEAT_PHOTOS = "Repeat Photos"
// const val SCREENSHOT_CLEANER = "Screenshot Cleaner"
// const val PRIVACY_SPACE = "Privacy Space"
// const val WHATSAPP_CLEANER = "WhatsApp Cleaner"
// const val APP_PROCESS = "App Process"
// const val APP_MANAGER = "App Manager"
// const val LARGE_FILE = "Large File"
// const val BATTERY_INFO = "Battery Info"
const
val
MIME_TYPE_IMAGE
=
"image/*"
const
val
MIME_TYPE_VIDEO
=
"video/*"
...
...
app/src/main/java/com/base/browserwhite/ui/activity/cleanjunk/CleaningActivity.kt
0 → 100644
View file @
33c2cba5
package
com.base.browserwhite.ui.activity.cleanjunk
import
android.animation.ValueAnimator
import
android.content.Intent
import
android.graphics.Color
import
android.view.animation.LinearInterpolator
import
android.widget.Toast
import
androidx.activity.addCallback
import
androidx.core.animation.doOnEnd
import
androidx.core.view.updatePadding
import
com.base.browserwhite.bean.ConstObject.JUNK_CLEANER
import
com.base.browserwhite.databinding.ActivityLayoutCleanupingBinding
import
com.base.browserwhite.ui.activity.BaseActivity
import
com.base.browserwhite.ui.activity.result.ResultActivity
import
com.base.browserwhite.utils.BarUtils
import
com.base.browserwhite.utils.MediaStoreUtils.updateMediaStore
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.MainScope
import
kotlinx.coroutines.launch
import
java.io.File
import
kotlin.random.Random
/**
* 实际清理页面
*/
class
CleaningActivity
:
BaseActivity
<
ActivityLayoutCleanupingBinding
>()
{
override
val
binding
:
ActivityLayoutCleanupingBinding
by
lazy
{
ActivityLayoutCleanupingBinding
.
inflate
(
layoutInflater
)
}
private
val
intentSize
by
lazy
{
intent
.
getLongExtra
(
"size"
,
-
1
)
}
private
val
listPath
by
lazy
{
intent
.
getStringArrayExtra
(
"list"
)
?:
arrayOf
()
}
override
fun
initView
()
{
BarUtils
.
setStatusBarColor
(
this
,
Color
.
TRANSPARENT
)
binding
.
root
.
updatePadding
(
top
=
BarUtils
.
getStatusBarHeight
())
MainScope
().
launch
(
Dispatchers
.
IO
)
{
try
{
listPath
.
forEach
{
val
file
=
File
(
it
)
runCatching
{
file
.
deleteRecursively
()
}
}
updateMediaStore
(
listPath
)
}
catch
(
_
:
Exception
)
{
}
finally
{
}
}
playAnm
()
}
override
fun
initListener
()
{
onBackPressedDispatcher
.
addCallback
{
Toast
.
makeText
(
this
@CleaningActivity
,
"wait a moment"
,
Toast
.
LENGTH_SHORT
).
show
()
}
}
private
fun
playAnm
()
{
ValueAnimator
.
ofFloat
(
0f
,
360f
).
run
{
duration
=
1000
repeatMode
=
ValueAnimator
.
RESTART
repeatCount
=
ValueAnimator
.
INFINITE
interpolator
=
LinearInterpolator
()
addUpdateListener
{
binding
.
idYuan
.
rotation
=
it
.
animatedValue
as
Float
}
start
()
}
ValueAnimator
.
ofInt
(
0
,
100
).
run
{
duration
=
Random
.
nextLong
(
7000
,
8000
)
interpolator
=
LinearInterpolator
()
addUpdateListener
{
binding
.
idTvJd
.
text
=
"${it.animatedValue as Int}"
}
doOnEnd
{
// val isCleanEndAdSp = AppPreferences.getInstance().getString("isCleanEndAdSp", "0").toInt()
// if (isCleanEndAdSp == 1) {
// AdmobMaxHelper.admobMaxShowInterstitialAd(this@CleaningActivity) {
// startActivity(
// Intent(this@CleaningActivity, ResultActivity::class.java).putExtra("from", JUNK_CLEANER)
// .putExtra("clean_size", intentSize)
// )
// finish()
// }
// } else {
startActivity
(
Intent
(
this
@CleaningActivity
,
ResultActivity
::
class
.
java
).
putExtra
(
"from"
,
JUNK_CLEANER
)
.
putExtra
(
"clean_size"
,
intentSize
)
)
finish
()
// }
}
start
()
}
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/ui/activity/result/ResultActivity.kt
0 → 100644
View file @
33c2cba5
package
com.base.browserwhite.ui.activity.result
import
com.base.browserwhite.databinding.ActivityResultBinding
import
com.base.browserwhite.ui.activity.BaseActivity
class
ResultActivity
:
BaseActivity
<
ActivityResultBinding
>()
{
override
val
binding
:
ActivityResultBinding
by
lazy
{
ActivityResultBinding
.
inflate
(
layoutInflater
)
}
override
fun
initView
()
{
}
}
\ No newline at end of file
app/src/main/java/com/base/browserwhite/utils/MediaStoreUtils.kt
View file @
33c2cba5
...
...
@@ -2,8 +2,10 @@ package com.base.browserwhite.utils
import
android.content.Context
import
android.database.Cursor
import
android.media.MediaScannerConnection
import
android.net.Uri
import
android.os.Build
import
android.os.Environment
import
android.provider.MediaStore
import
com.base.browserwhite.bean.ConstObject.MIME_TYPE_APK
import
com.base.browserwhite.bean.ConstObject.MIME_TYPE_AUDIO
...
...
@@ -30,6 +32,21 @@ object MediaStoreUtils {
private
val
TAG
=
"MediaStoreUtils"
private
val
commonMediaDir
=
arrayOf
(
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_DOCUMENTS
).
absolutePath
,
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_DCIM
).
absolutePath
,
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_DOWNLOADS
).
absolutePath
,
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_MOVIES
).
absolutePath
,
)
fun
Context
.
updateMediaStore
(
filePath
:
Array
<
String
>
=
commonMediaDir
)
{
MediaScannerConnection
.
scanFile
(
this
,
filePath
,
null
)
{
path
:
String
?,
uri
:
Uri
?
->
}
}
//图片视频音频不用这个查
fun
Context
.
getMediaFile
(
selectionArgs
:
Array
<
String
>?
=
null
):
ArrayList
<
MediaBean
>
{
...
...
app/src/main/res/layout/activity_layout_cleanuping.xml
0 → 100644
View file @
33c2cba5
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<androidx.appcompat.widget.LinearLayoutCompat
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_marginTop=
"169dp"
android:orientation=
"vertical"
app:layout_constraintBottom_toTopOf=
"@+id/id_bottom_content"
app:layout_constraintTop_toTopOf=
"parent"
>
<FrameLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<androidx.appcompat.widget.AppCompatImageView
android:id=
"@+id/id_yuan"
android:layout_width=
"229dp"
android:layout_height=
"229dp"
android:layout_gravity=
"center_horizontal"
android:src=
"@mipmap/qingliz"
/>
<androidx.appcompat.widget.AppCompatImageView
android:layout_width=
"124dp"
android:layout_height=
"124dp"
android:layout_gravity=
"center"
android:src=
"@mipmap/qingliyuan"
/>
<androidx.appcompat.widget.LinearLayoutCompat
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
>
<TextView
android:id=
"@+id/id_tv_jd"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"0"
android:textColor=
"@color/white"
android:textSize=
"48sp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"%"
android:textColor=
"@color/white"
android:textSize=
"14sp"
tools:ignore=
"HardcodedText"
/>
</androidx.appcompat.widget.LinearLayoutCompat>
</FrameLayout>
</androidx.appcompat.widget.LinearLayoutCompat>
<androidx.appcompat.widget.LinearLayoutCompat
android:id=
"@+id/id_bottom_content"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
app:layout_constraintBottom_toBottomOf=
"parent"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginBottom=
"150dp"
android:text=
"Wait a moment..."
android:textColor=
"#666666"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
</androidx.appcompat.widget.LinearLayoutCompat>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/activity_result.xml
0 → 100644
View file @
33c2cba5
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:id=
"@+id/main"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".ui.activity.result.ResultActivity"
>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/mipmap-xxhdpi/qingliyuan.webp
0 → 100644
View file @
33c2cba5
File added
app/src/main/res/mipmap-xxhdpi/qingliz.webp
0 → 100644
View file @
33c2cba5
File added
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment