Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
S
scanqrwhitecopy
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
scanqrwhitecopy
Commits
34704608
Commit
34704608
authored
Jan 22, 2025
by
周文华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
【调整】1.调整部分UI。2.新增存储权限申请时机用以计算清理大小。
parent
9fb5de39
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
43 additions
and
41 deletions
+43
-41
ActivityJumpHelps.kt
.../main/java/com/base/scanqrclear/luma/ActivityJumpHelps.kt
+1
-1
HomeFragment.kt
app/src/main/java/com/base/scanqrclear/luma/HomeFragment.kt
+41
-39
item_function_2.xml
app/src/main/res/layout/item_function_2.xml
+1
-1
No files found.
app/src/main/java/com/base/scanqrclear/luma/ActivityJumpHelps.kt
View file @
34704608
...
...
@@ -73,7 +73,7 @@ object ActivityJumpHelps {
fun
requestPermission
(
context
:
Context
,
launcher
:
ActivityLauncher
,
block
:
(()
->
Unit
?
)?
=
null
block
:
(()
->
Unit
)?
=
null
)
{
if
(
PermissionHelps
.
checkFilesAccessPermission
(
context
))
{
block
?.
invoke
()
...
...
app/src/main/java/com/base/scanqrclear/luma/HomeFragment.kt
View file @
34704608
...
...
@@ -124,47 +124,49 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
}
private
fun
initData
()
{
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
val
totalStorage
=
async
{
AppHelps
.
getTotalExternalSize
()
}
val
availableStorage
=
async
{
AppHelps
.
getAvailableExternalSize
()
}
val
totalStorageSize
=
totalStorage
.
await
()
val
availableStorageSize
=
availableStorage
.
await
()
val
usedMemoryStorageSize
=
totalStorageSize
-
availableStorageSize
val
usedMemoryStorageScale
=
usedMemoryStorageSize
*
100
/
totalStorageSize
ActivityJumpHelps
.
requestPermission
(
requireContext
(),
launcher
)
{
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
val
totalStorage
=
async
{
AppHelps
.
getTotalExternalSize
()
}
val
availableStorage
=
async
{
AppHelps
.
getAvailableExternalSize
()
}
val
totalStorageSize
=
totalStorage
.
await
()
val
availableStorageSize
=
availableStorage
.
await
()
val
usedMemoryStorageSize
=
totalStorageSize
-
availableStorageSize
val
usedMemoryStorageScale
=
usedMemoryStorageSize
*
100
/
totalStorageSize
val
totalMemoryUsed
=
async
{
AppHelps
.
getMemTotal
(
requireContext
())
}
val
availableMemoryUsed
=
async
{
AppHelps
.
getMemAvailable
(
requireContext
())
}
val
totalMemoryUsedSize
=
totalMemoryUsed
.
await
()
val
availableMemoryUsedSize
=
availableMemoryUsed
.
await
()
val
usedMemoryUsedSize
=
totalMemoryUsedSize
-
availableMemoryUsedSize
val
usedMemoryUsedScale
:
Long
=
usedMemoryUsedSize
*
100
/
totalMemoryUsedSize
withContext
(
Dispatchers
.
Main
)
{
binding
.
tvStorageUsed
.
text
=
"${usedMemoryStorageScale.toInt()}%"
binding
.
tvMemoryUsed
.
text
=
"${usedMemoryUsedScale.toInt()}%"
binding
.
llStorageUsed
.
visibility
=
View
.
VISIBLE
binding
.
llMemoryUsed
.
visibility
=
View
.
VISIBLE
AnimationHelps
.
progress
(
binding
.
pbStorageUsed
,
usedMemoryStorageScale
.
toInt
())
AnimationHelps
.
progress
(
binding
.
pbMemoryUsed
,
usedMemoryUsedScale
.
toInt
())
val
totalMemoryUsed
=
async
{
AppHelps
.
getMemTotal
(
requireContext
())
}
val
availableMemoryUsed
=
async
{
AppHelps
.
getMemAvailable
(
requireContext
())
}
val
totalMemoryUsedSize
=
totalMemoryUsed
.
await
()
val
availableMemoryUsedSize
=
availableMemoryUsed
.
await
()
val
usedMemoryUsedSize
=
totalMemoryUsedSize
-
availableMemoryUsedSize
val
usedMemoryUsedScale
:
Long
=
usedMemoryUsedSize
*
100
/
totalMemoryUsedSize
withContext
(
Dispatchers
.
Main
)
{
binding
.
tvStorageUsed
.
text
=
"${usedMemoryStorageScale.toInt()}%"
binding
.
tvMemoryUsed
.
text
=
"${usedMemoryUsedScale.toInt()}%"
binding
.
llStorageUsed
.
visibility
=
View
.
VISIBLE
binding
.
llMemoryUsed
.
visibility
=
View
.
VISIBLE
AnimationHelps
.
progress
(
binding
.
pbStorageUsed
,
usedMemoryStorageScale
.
toInt
())
AnimationHelps
.
progress
(
binding
.
pbMemoryUsed
,
usedMemoryUsedScale
.
toInt
())
}
}
}
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
val
emptyFoldersDeferred
=
async
{
FileHelps
.
findEmptyFolders
(
lifecycleScope
)
}
val
filesDeferred
=
async
{
MediaHelps
.
findSpecifiedFiles
(
requireContext
())
}
val
emptyFolder
=
emptyFolder
sDeferred
.
await
()
val
files
=
filesDeferred
.
await
()
val
emptyLength
=
emptyFolder
.
sumOf
{
it
.
length
}
val
filesLength
=
files
.
sumOf
{
it
.
length
}
val
totalLength
=
emptyLength
+
filesLength
val
totalSize
=
Utils
.
getSize
(
totalLength
)
withContext
(
Dispatchers
.
Main
)
{
val
sp
=
SpannableString
(
"$totalSize\n${getString(R.string.junk_files)}"
)
sp
.
setSpan
(
AbsoluteSizeSpan
(
16
,
true
),
sp
.
indexOf
(
"\n"
)
,
sp
.
length
,
SpannableString
.
SPAN_EXCLUSIVE_EXCLUSIVE
)
binding
.
tvJunkFiles
.
text
=
sp
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
val
emptyFoldersDeferred
=
async
{
FileHelps
.
findEmptyFolders
(
lifecycleScope
)
}
val
filesDeferred
=
async
{
MediaHelps
.
findSpecifiedFiles
(
requireContext
()
)
}
val
emptyFolder
=
emptyFoldersDeferred
.
await
()
val
files
=
file
sDeferred
.
await
()
val
emptyLength
=
emptyFolder
.
sumOf
{
it
.
length
}
val
filesLength
=
files
.
sumOf
{
it
.
length
}
val
totalLength
=
emptyLength
+
filesLength
val
totalSize
=
Utils
.
getSize
(
totalLength
)
withContext
(
Dispatchers
.
Main
)
{
val
sp
=
SpannableString
(
"$totalSize\n${getString(R.string.junk_files)}"
)
sp
.
setSpan
(
AbsoluteSizeSpan
(
16
,
true
),
sp
.
indexOf
(
"\n"
),
sp
.
length
,
SpannableString
.
SPAN_EXCLUSIVE_EXCLUSIVE
)
binding
.
tvJunkFiles
.
text
=
sp
}
}
}
}
...
...
app/src/main/res/layout/item_function_2.xml
View file @
34704608
...
...
@@ -10,7 +10,7 @@
android:id=
"@+id/iv_icon"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"1
5
dp"
android:layout_marginTop=
"1
0
dp"
android:src=
"@mipmap/icon_junk_scan"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
...
...
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