Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
F
FileManager
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
yanglin
FileManager
Commits
48e4d96a
Commit
48e4d96a
authored
Apr 22, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
病毒扫描
parent
38b12d9c
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
339 additions
and
348 deletions
+339
-348
deploymentTargetDropDown.xml
.idea/deploymentTargetDropDown.xml
+3
-0
FileManagerActivity.kt
...n/java/com/xm/test/myfile/activity/FileManagerActivity.kt
+25
-14
HomeActivity.kt
...src/main/java/com/xm/test/myfile/activity/HomeActivity.kt
+0
-1
AntivirusActivity.kt
...in/java/com/xm/test/myfile/antivirus/AntivirusActivity.kt
+37
-39
FileManagerFragment.kt
...n/java/com/xm/test/myfile/fragment/FileManagerFragment.kt
+52
-42
HomeFragment.kt
...src/main/java/com/xm/test/myfile/fragment/HomeFragment.kt
+0
-21
InternalStorageFragment.kt
...va/com/xm/test/myfile/fragment/InternalStorageFragment.kt
+22
-34
activity_antivirus.xml
app/src/main/res/layout/activity_antivirus.xml
+153
-8
activity_file_manager.xml
app/src/main/res/layout/activity_file_manager.xml
+0
-1
check_the_source_layout.xml
app/src/main/res/layout/check_the_source_layout.xml
+0
-149
fragment_file_manager.xml
app/src/main/res/layout/fragment_file_manager.xml
+13
-18
fragment_internal_storage.xml
app/src/main/res/layout/fragment_internal_storage.xml
+33
-20
not_permission_layout.xml
app/src/main/res/layout/not_permission_layout.xml
+1
-1
tu.png
app/src/main/res/mipmap-hdpi/tu.png
+0
-0
tu.png
app/src/main/res/mipmap-mdpi/tu.png
+0
-0
tu.png
app/src/main/res/mipmap-xhdpi/tu.png
+0
-0
tu.png
app/src/main/res/mipmap-xxhdpi/tu.png
+0
-0
tu.png
app/src/main/res/mipmap-xxxhdpi/tu.png
+0
-0
No files found.
.idea/deploymentTargetDropDown.xml
View file @
48e4d96a
...
...
@@ -5,6 +5,9 @@
<entry
key=
"App"
>
<State
/>
</entry>
<entry
key=
"HomeActivity"
>
<State
/>
</entry>
</value>
</component>
</project>
\ No newline at end of file
app/src/main/java/com/xm/test/myfile/activity/FileManagerActivity.kt
View file @
48e4d96a
...
...
@@ -9,24 +9,37 @@ import com.xm.test.myfile.util.FileUtil
class
FileManagerActivity
:
BaseActivity
()
{
private
var
mFileBeanList
=
ArrayList
<
FileBean
>()
private
lateinit
var
mFileTypeBeanList
:
ArrayList
<
FileBean
>
private
lateinit
var
mFileType
:
String
override
fun
getLayout
():
Int
{
return
R
.
layout
.
activity_file_manager
}
companion
object
{
companion
object
{
val
fileTypes
=
arrayOf
(
arrayOf
(
"png"
,
"jpg"
),
arrayOf
(
"mp4"
,
"3gp"
,
"avi"
),
arrayOf
(
"mp3"
,
"aac"
,
"wav"
),
arrayOf
(
"png"
,
"jpg"
),
arrayOf
(
"mp4"
,
"3gp"
,
"avi"
),
arrayOf
(
"mp3"
,
"aac"
,
"wav"
),
arrayOf
(
"zip"
),
arrayOf
(
"apk"
),
arrayOf
(
"log"
),
arrayOf
(
"png"
,
"jpg"
,
"doc"
,
"docm"
,
"docx"
,
"xlsx"
,
"xlsm"
,
"xlsb"
,
"xltx"
,
"ppt"
,
"pdf"
,
"txt"
),
arrayOf
(
"doc"
,
"docm"
,
"docx"
),
arrayOf
(
"xlsx"
,
"xlsm"
,
"xlsb"
,
"xltx"
,),
arrayOf
(
"png"
,
"jpg"
,
"doc"
,
"docm"
,
"docx"
,
"xlsx"
,
"xlsm"
,
"xlsb"
,
"xltx"
,
"ppt"
,
"pdf"
,
"txt"
),
arrayOf
(
"doc"
,
"docm"
,
"docx"
),
arrayOf
(
"xlsx"
,
"xlsm"
,
"xlsb"
,
"xltx"
),
arrayOf
(
"ppt"
),
arrayOf
(
"pdf"
),
arrayOf
(
"txt"
),
...
...
@@ -41,13 +54,11 @@ class FileManagerActivity : BaseActivity() {
isCurrantTvShow
(
false
)
initData
()
setOnClickBtn
()
}
private
fun
initData
()
{
WaitDialog
.
show
(
"please wait.."
)
Thread
(
Runnable
{
Thread
{
if
(
mFileType
.
contains
(
"audio"
))
{
mFileBeanList
.
addAll
(
FileUtil
.
getFileType
(
FileUtil
.
MP3_MIME_TYPE
,
this
))
mFileBeanList
.
addAll
(
FileUtil
.
getFileType
(
FileUtil
.
WAV_MIME_TYPE
,
this
))
...
...
@@ -99,11 +110,11 @@ class FileManagerActivity : BaseActivity() {
}
}
}
runOnUiThread
(
Runnable
{
runOnUiThread
{
setAdapter
(
findViewById
(
R
.
id
.
files_item_listview
),
mFileBeanList
)
WaitDialog
.
dismiss
()
}
)
}
)
.
start
()
}
}.
start
()
}
}
\ No newline at end of file
app/src/main/java/com/xm/test/myfile/activity/HomeActivity.kt
View file @
48e4d96a
...
...
@@ -174,7 +174,6 @@ class HomeActivity : AppCompatActivity() {
override
fun
onResume
()
{
super
.
onResume
()
storePermission
()
}
...
...
app/src/main/java/com/xm/test/myfile/antivirus/AntivirusActivity.kt
View file @
48e4d96a
...
...
@@ -10,61 +10,59 @@ import android.view.View
import
android.widget.ProgressBar
import
android.widget.TextView
import
androidx.appcompat.app.AppCompatActivity
import
androidx.datastore.preferences.core.booleanPreferencesKey
import
androidx.datastore.preferences.core.stringPreferencesKey
import
com.trustlook.sdk.cloudscan.CloudScanListener
import
com.trustlook.sdk.data.AppInfo
import
com.xm.test.myfile.MyApplication
import
com.xm.test.myfile.R
import
com.xm.test.myfile.activity.ScanResultActivity
import
com.xm.test.myfile.ad.MaxAdUtils
import
com.xm.test.myfile.ad.queryDataStoreBlock
import
com.xm.test.myfile.ad.saveDataStore
import
com.xm.test.myfile.ad.saveDataStoreBlock
import
com.xm.test.myfile.databinding.ActivityAntivirusBinding
class
AntivirusActivity
:
AppCompatActivity
()
{
private
lateinit
var
mPage2
:
View
private
lateinit
var
mPagerCheck
:
View
private
lateinit
var
mProgress
:
ProgressBar
private
lateinit
var
mScaningView
:
View
private
lateinit
var
mScanSuccessView
:
View
private
lateinit
var
mScanAppNameText
:
TextView
private
var
mIntent
:
Intent
?
=
null
private
var
mIntent
:
Intent
?
=
null
private
var
mTotal
=
"22"
private
var
isClickAgree
=
false
private
var
mSp
:
SharedPreferences
?
=
null
private
lateinit
var
binding
:
ActivityAntivirusBinding
private
val
AGREE_VIRUS_PRIVACY_KEY
=
booleanPreferencesKey
(
"agree_virus_privacy"
)
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
setContentView
(
R
.
layout
.
activity_antivirus
)
binding
=
ActivityAntivirusBinding
.
inflate
(
layoutInflater
)
setContentView
(
binding
.
root
)
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
){
val
isAgree
=
queryDataStoreBlock
(
AGREE_VIRUS_PRIVACY_KEY
,
false
)
if
(
isAgree
)
{
binding
.
llVirusScan
.
visibility
=
View
.
VISIBLE
startAntivirus
()
}
else
{
binding
.
flVirusPrivacy
.
visibility
=
View
.
VISIBLE
}
}
private
fun
setOnclickListener
()
{
// findViewById<View>(R.id.interrupt_cancel_text).setOnClickListener {
// MyApplication.mCloudScan?.cancelScan()
// finish()
// }
findViewById
<
View
>(
R
.
id
.
antivirus_quit_btn
).
setOnClickListener
{
binding
.
ivBack
.
setOnClickListener
{
MyApplication
.
mCloudScan
?.
cancelScan
()
finish
()
}
findViewById
<
View
>(
R
.
id
.
antivirus_quit_btn_2
)
.
setOnClickListener
{
binding
.
ivBack2
.
setOnClickListener
{
MyApplication
.
mCloudScan
?.
cancelScan
()
finish
()
}
findViewById
<
View
>(
R
.
id
.
Start_scanning
).
setOnClickListener
{
val
edit
=
mSp
!!
.
edit
()
edit
.
putBoolean
(
"isClickAgree"
,
true
)
edit
.
apply
()
saveDataStoreBlock
(
AGREE_VIRUS_PRIVACY_KEY
,
true
)
startAntivirus
()
}
findViewById
<
View
>(
R
.
id
.
antivirus_stop_text
).
setOnClickListener
{
...
...
@@ -74,25 +72,24 @@ class AntivirusActivity : AppCompatActivity() {
}
private
fun
initView
()
{
mPage2
=
findViewById
(
R
.
id
.
antivirus_page_2
)
mPagerCheck
=
findViewById
(
R
.
id
.
check_the_source_layout
)
mProgress
=
findViewById
(
R
.
id
.
antivirus_progress
)
mScaningView
=
findViewById
(
R
.
id
.
scan_ing_layout
)
mScanSuccessView
=
findViewById
(
R
.
id
.
antivirus_success_layout
)
mScanAppNameText
=
findViewById
(
R
.
id
.
scan_name_text
)
}
private
fun
startAntivirus
(){
mPage2
.
visibility
=
View
.
GONE
mPagerCheck
.
visibility
=
View
.
VISIBLE
MyApplication
.
mCloudScan
?.
startQuickScan
(
object
:
CloudScanListener
(){
private
fun
startAntivirus
()
{
MyApplication
.
mCloudScan
?.
startQuickScan
(
object
:
CloudScanListener
()
{
override
fun
onScanStarted
()
{
Log
.
e
(
"yanglin"
,
"onScanStarted: start"
,
)
Log
.
e
(
"yanglin"
,
"onScanStarted: start"
)
}
override
fun
onScanProgress
(
curr
:
Int
,
total
:
Int
,
result
:
AppInfo
?)
{
Log
.
e
(
"yanglin"
,
"onScanProgress, "
+
"curr="
+
curr
+
" total="
+
total
+
" app name="
+
result
?.
appName
,
)
Log
.
e
(
"yanglin"
,
"onScanProgress, "
+
"curr="
+
curr
+
" total="
+
total
+
" app name="
+
result
?.
appName
,
)
mScanAppNameText
.
text
=
result
?.
appName
mIntent
?.
putExtra
(
"curr"
,
curr
)
mProgress
.
setProgress
(
curr
)
...
...
@@ -101,19 +98,19 @@ class AntivirusActivity : AppCompatActivity() {
}
override
fun
onScanError
(
errCode
:
Int
,
p1
:
String
?)
{
Log
.
e
(
"yanglin"
,
"onScanError="
+
errCode
,
)
Log
.
e
(
"yanglin"
,
"onScanError="
+
errCode
)
}
override
fun
onScanCanceled
()
{
Log
.
e
(
"yanglin"
,
"onScanStarted: cancel"
,
)
Log
.
e
(
"yanglin"
,
"onScanStarted: cancel"
)
}
override
fun
onScanInterrupt
()
{
Log
.
e
(
"yanglin"
,
"onScanStarted: onScanInterrupt"
,
)
Log
.
e
(
"yanglin"
,
"onScanStarted: onScanInterrupt"
)
}
override
fun
onScanFinished
(
result
:
MutableList
<
AppInfo
>?)
{
Log
.
e
(
"yanglin"
,
"onScanFinished: start"
+
result
!!
[
0
].
toString
()
,
)
Log
.
e
(
"yanglin"
,
"onScanFinished: start"
+
result
!!
[
0
].
toString
())
mProgress
.
setProgress
(
100
)
mScaningView
.
visibility
=
View
.
GONE
mScanSuccessView
.
visibility
=
View
.
VISIBLE
...
...
@@ -121,18 +118,19 @@ class AntivirusActivity : AppCompatActivity() {
val
bundle
=
Bundle
()
bundle
.
putSerializable
(
"result"
,
appInfos
)
mIntent
?.
putExtra
(
"total"
,
mTotal
)
for
(
appInfo
in
result
){
for
(
appInfo
in
result
)
{
appInfos
.
add
(
appInfo
)
}
Thread
(
Runnable
{
Handler
(
Looper
.
getMainLooper
()).
postDelayed
(
Runnable
{
Thread
{
Handler
(
Looper
.
getMainLooper
()).
postDelayed
({
mIntent
?.
putExtras
(
bundle
)
startActivity
(
mIntent
)
finish
()
},
2000
)
}
)
.
start
()
}.
start
()
}
})
MaxAdUtils
.
showMaxNativeAd
(
null
,
binding
.
flAd
)
}
}
\ No newline at end of file
app/src/main/java/com/xm/test/myfile/fragment/FileManagerFragment.kt
View file @
48e4d96a
...
...
@@ -10,8 +10,12 @@ import android.view.ViewGroup
import
android.widget.GridView
import
com.xm.test.myfile.R
import
com.xm.test.myfile.activity.FileManagerActivity
import
com.xm.test.myfile.activity.HomeActivity
import
com.xm.test.myfile.activity.MediaActivity
import
com.xm.test.myfile.ad.MaxAdUtils
import
com.xm.test.myfile.adapter.MediaAdapter
import
com.xm.test.myfile.databinding.FragmentFileManagerBinding
import
com.xm.test.myfile.databinding.FragmentHomeBinding
import
com.xm.test.myfile.model.FileBean
import
com.xm.test.myfile.util.MediaUtil
import
com.xm.test.myfile.util.PermissionUtil
...
...
@@ -34,14 +38,9 @@ class FileManagerFragment : Fragment(), View.OnClickListener {
private
lateinit
var
mTxtBtn
:
View
private
lateinit
var
mRecentGrid
:
GridView
private
lateinit
var
mRecentView
:
View
private
var
mFileBeanList
:
ArrayList
<
FileBean
>?
=
null
private
var
mIntent
:
Intent
?
=
null
private
var
mRecentAdapter
:
MediaAdapter
?
=
null
private
var
mRecentImages
=
ArrayList
<
FileBean
>()
private
lateinit
var
binding
:
FragmentFileManagerBinding
override
fun
onCreateView
(
...
...
@@ -49,7 +48,7 @@ class FileManagerFragment : Fragment(), View.OnClickListener {
savedInstanceState
:
Bundle
?
):
View
{
mView
=
inflater
.
inflate
(
R
.
layout
.
fragment_file_manager
,
container
,
false
)
binding
=
FragmentFileManagerBinding
.
bind
(
mView
)
initView
()
return
mView
}
...
...
@@ -84,14 +83,13 @@ class FileManagerFragment : Fragment(), View.OnClickListener {
mTxtBtn
.
setOnClickListener
(
this
)
mRecentView
.
setOnClickListener
(
this
)
mIntent
=
Intent
(
context
,
FileManagerActivity
::
class
.
java
)
mImageBtn
.
setOnClickListener
{
mImageBtn
.
setOnClickListener
{
val
intent
=
Intent
(
context
,
MediaActivity
::
class
.
java
)
intent
.
putExtra
(
"fileType"
,
"image"
)
context
?.
startActivity
(
intent
)
}
mVideoBtn
.
setOnClickListener
{
mVideoBtn
.
setOnClickListener
{
val
intent
=
Intent
(
context
,
MediaActivity
::
class
.
java
)
intent
.
putExtra
(
"fileType"
,
"video"
)
context
?.
startActivity
(
intent
)
...
...
@@ -102,46 +100,58 @@ class FileManagerFragment : Fragment(), View.OnClickListener {
context
?.
startActivity
(
intent
)
}
val
sparseBooleanArray
=
SparseBooleanArray
()
mRecentAdapter
=
MediaAdapter
(
mRecentImages
,
requireContext
(),
sparseBooleanArray
,
"image"
,
80
)
mRecentAdapter
=
MediaAdapter
(
mRecentImages
,
requireContext
(),
sparseBooleanArray
,
"image"
,
80
)
mRecentAdapter
?.
setItemHeight
(
80
)
mRecentGrid
.
adapter
=
mRecentAdapter
MaxAdUtils
.
showMaxNativeAd
(
requireActivity
(),
binding
.
flAd
)
}
override
fun
onClick
(
v
:
View
?)
{
if
(
checkPermission
()){
when
(
v
?.
id
){
R
.
id
.
btn_audio
->{
mIntent
?.
putExtra
(
"fileType"
,
"audio"
)}
R
.
id
.
btn_zip
->{
mIntent
?.
putExtra
(
"fileType"
,
"zip"
)}
R
.
id
.
btn_apk
->{
mIntent
?.
putExtra
(
"fileType"
,
"apk"
)}
R
.
id
.
btn_log_file
->{
mIntent
?.
putExtra
(
"fileType"
,
"log"
)}
R
.
id
.
btn_all
->{
mIntent
?.
putExtra
(
"fileType"
,
"all"
)}
R
.
id
.
btn_word
->{
mIntent
?.
putExtra
(
"fileType"
,
"word"
)}
R
.
id
.
btn_excel
->{
mIntent
?.
putExtra
(
"fileType"
,
"excel"
)}
R
.
id
.
btn_ppt
->{
mIntent
?.
putExtra
(
"fileType"
,
"ppt"
)}
R
.
id
.
btn_pdf
->{
mIntent
?.
putExtra
(
"fileType"
,
"pdf"
)}
R
.
id
.
btn_txt
->{
mIntent
?.
putExtra
(
"fileType"
,
"txt"
)}
val
mIntent
=
Intent
(
context
,
FileManagerActivity
::
class
.
java
)
when
(
v
?.
id
)
{
R
.
id
.
btn_audio
->
{
mIntent
.
putExtra
(
"fileType"
,
"audio"
)
}
R
.
id
.
btn_zip
->
{
mIntent
.
putExtra
(
"fileType"
,
"zip"
)
}
R
.
id
.
btn_apk
->
{
mIntent
.
putExtra
(
"fileType"
,
"apk"
)
}
R
.
id
.
btn_log_file
->
{
mIntent
.
putExtra
(
"fileType"
,
"log"
)
}
R
.
id
.
btn_all
->
{
mIntent
.
putExtra
(
"fileType"
,
"all"
)
}
R
.
id
.
btn_word
->
{
mIntent
.
putExtra
(
"fileType"
,
"word"
)
}
R
.
id
.
btn_excel
->
{
mIntent
.
putExtra
(
"fileType"
,
"excel"
)
}
context
?.
startActivity
(
mIntent
)
}
}
private
fun
checkPermission
():
Boolean
{
// if (!PermissionUtil.checkGrantedPermission(activity)) {
// val customDialog = CustomDialog(context)
// customDialog.setsConfirm(View.OnClickListener {
// PermissionUtil.requestPermission(context)
// customDialog.dismiss()
// }).setsCancel(View.OnClickListener {
// customDialog.dismiss()
// }).show()
// customDialog.isShowEditText(false)
// customDialog.setsTitle("not permission")
// customDialog.setsHint("Please grant file management permissions")
// return false
// }
return
true
R
.
id
.
btn_ppt
->
{
mIntent
.
putExtra
(
"fileType"
,
"ppt"
)
}
R
.
id
.
btn_pdf
->
{
mIntent
.
putExtra
(
"fileType"
,
"pdf"
)
}
R
.
id
.
btn_txt
->
{
mIntent
.
putExtra
(
"fileType"
,
"txt"
)
}
}
context
?.
startActivity
(
mIntent
)
}
override
fun
onResume
()
{
...
...
app/src/main/java/com/xm/test/myfile/fragment/HomeFragment.kt
View file @
48e4d96a
...
...
@@ -92,7 +92,6 @@ class HomeFragment : Fragment(), OnClickListener {
}
override
fun
onClick
(
v
:
View
?)
{
if
(
checkPermission
())
{
when
(
v
?.
id
)
{
R
.
id
.
scan_for_duplicate_picture
->
{
activity
?.
startActivity
(
Intent
(
context
,
SimilarImagesActivity
::
class
.
java
))
...
...
@@ -116,26 +115,6 @@ class HomeFragment : Fragment(), OnClickListener {
}
else
if
(
v
?.
id
==
R
.
id
.
antivirus_btn
)
{
activity
?.
startActivity
(
Intent
(
context
,
AntivirusActivity
::
class
.
java
))
}
}
}
private
fun
checkPermission
():
Boolean
{
// if (!PermissionUtil.checkGrantedPermission(activity)) {
// val customDialog = CustomDialog(context)
// customDialog.setsConfirm(OnClickListener {
// PermissionUtil.requestPermission(context)
// customDialog.dismiss()
// }).setsCancel(OnClickListener {
// customDialog.dismiss()
// }).show()
// customDialog.isShowEditText(false)
// customDialog.setsTitle("not permission")
// customDialog.setsHint("Please grant fileAll management permissions")
// return false
// }
return
true
}
fun
setUseStorage
()
{
...
...
app/src/main/java/com/xm/test/myfile/fragment/InternalStorageFragment.kt
View file @
48e4d96a
...
...
@@ -29,6 +29,7 @@ import com.xm.test.myfile.activity.HomeActivity
import
com.xm.test.myfile.activity.MoveOrCopyActivity
import
com.xm.test.myfile.adapter.FilesItemViewAdapter
import
com.xm.test.myfile.base.BaseActivity
import
com.xm.test.myfile.databinding.FragmentInternalStorageBinding
import
com.xm.test.myfile.model.FileBean
import
com.xm.test.myfile.util.FileUtil
import
com.xm.test.myfile.util.PermissionUtil
...
...
@@ -38,8 +39,6 @@ import java.io.File
class
InternalStorageFragment
:
Fragment
(),
View
.
OnClickListener
{
private
lateinit
var
mView
:
View
lateinit
var
mTitleText
:
TextView
lateinit
var
mShareBtn
:
ImageView
lateinit
var
mDeleteBtn
:
ImageView
lateinit
var
mNewBtn
:
ImageView
lateinit
var
mCancelBtn
:
ImageView
...
...
@@ -48,9 +47,7 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
lateinit
var
mBottomBar
:
View
lateinit
var
mSelectNumText
:
TextView
lateinit
var
mCurrentFilePathTv
:
TextView
lateinit
var
mCheckItemSelectAllBtn
:
CheckBox
lateinit
var
mMoveBottomBtn
:
LinearLayout
lateinit
var
mRenameBottomBtn
:
LinearLayout
lateinit
var
mCopyBottomBtn
:
LinearLayout
...
...
@@ -59,7 +56,6 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
lateinit
var
mSwitchSelectView
:
RelativeLayout
lateinit
var
mNotFileFoundLayout
:
View
lateinit
var
mNotPermissionLayout
:
View
private
lateinit
var
mFilesItemListView
:
ListView
...
...
@@ -73,6 +69,7 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
var
mCurrentFileBean
:
FileBean
?
=
null
var
mTitleStr
:
String
=
""
private
var
mCurrentPaths
=
ArrayList
<
String
>()
private
lateinit
var
binding
:
FragmentInternalStorageBinding
companion
object
{
var
isClickEditBtn
=
false
...
...
@@ -92,6 +89,7 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
savedInstanceState
:
Bundle
?
):
View
?
{
mView
=
inflater
.
inflate
(
R
.
layout
.
fragment_internal_storage
,
container
,
false
)
binding
=
FragmentInternalStorageBinding
.
bind
(
mView
)
initView
()
return
mView
}
...
...
@@ -100,8 +98,6 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
mBaseViewModel
=
ViewModelProvider
(
this
)[
BaseActivityViewModel
::
class
.
java
]
mTitleText
=
mView
.
findViewById
(
R
.
id
.
title_bar_text
)
mShareBtn
=
mView
.
findViewById
(
R
.
id
.
btn_share
)
mDeleteBtn
=
mView
.
findViewById
(
R
.
id
.
btn_delete
)
mNewBtn
=
mView
.
findViewById
(
R
.
id
.
btn_new
)
mCancelBtn
=
mView
.
findViewById
(
R
.
id
.
btn_cancel
)
...
...
@@ -112,9 +108,8 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
mSelectNumText
=
mView
.
findViewById
(
R
.
id
.
select_num
)
mCheckItemSelectAllBtn
=
mView
.
findViewById
(
R
.
id
.
checkbox_item_all
)
mNotFileFoundLayout
=
mView
.
findViewById
(
R
.
id
.
not_file_found_layout
)
mNotPermissionLayout
=
mView
.
findViewById
(
R
.
id
.
not_file_permission_layout
)
mCurrentFilePathTv
=
mView
.
findViewById
(
R
.
id
.
current_file_path
)
mFilesItemListView
=
mView
.
findViewById
<
ListView
>
(
R
.
id
.
files_item_listview
)
mFilesItemListView
=
mView
.
findViewById
(
R
.
id
.
files_item_listview
)
mMoveBottomBtn
=
mBottomBar
.
findViewById
(
R
.
id
.
btn_move_bottom
)
...
...
@@ -123,8 +118,8 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
mDeleteBottomBtn
=
mBottomBar
.
findViewById
(
R
.
id
.
btn_delete_bottom
)
mCancelBottomBtn
=
mBottomBar
.
findViewById
(
R
.
id
.
btn_cancel_bottom
)
mTitle
Text
.
setOnClickListener
(
this
)
mShareBtn
.
setOnClickListener
(
this
)
binding
.
includeBar
.
titleBar
Text
.
setOnClickListener
(
this
)
binding
.
includeBar
.
btnShare
.
setOnClickListener
(
this
)
mDeleteBtn
.
setOnClickListener
(
this
)
mNewBtn
.
setOnClickListener
(
this
)
mCancelBtn
.
setOnClickListener
(
this
)
...
...
@@ -146,7 +141,6 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
mQuitBtn
.
visibility
=
View
.
GONE
mEditBtn
.
visibility
=
View
.
VISIBLE
mNewBtn
.
visibility
=
View
.
VISIBLE
mBaseViewModel
.
setNumber
(
0
)
mBaseViewModel
.
myInt
.
observe
(
viewLifecycleOwner
,
Observer
{
mSelectNumText
.
text
=
...
...
@@ -155,6 +149,12 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
}
private
fun
showNoPermissionUi
(
flag
:
Boolean
)
{
binding
.
includeBar
.
root
.
isVisible
=
!
flag
binding
.
llContent
.
isVisible
=
!
flag
binding
.
includeNoPermission
.
root
.
isVisible
=
flag
}
private
fun
requestDataList
()
{
println
(
"yanglin start getData"
)
mNewBtn
.
visibility
=
View
.
VISIBLE
...
...
@@ -163,8 +163,7 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
if
(
mItemDataList
.
size
==
0
)
{
WaitDialog
.
show
(
"please wait.."
)
Thread
(
Runnable
{
// val allFilesAndDirectories = FileUtil.getAllFilesAndDirectories(requireContext())
Thread
{
val
allFilesAndDirectories
=
FileUtil
.
getFileList
(
Environment
.
getExternalStorageDirectory
())
mItemDataList
=
FileUtil
.
fileListSort
(
allFilesAndDirectories
)
...
...
@@ -173,7 +172,7 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
setAdapter
(
mItemDataList
)
WaitDialog
.
dismiss
()
})
}
)
.
start
()
}.
start
()
}
else
{
if
(
mFilesItemLists
.
size
<
1
)
{
setAdapter
(
mFileDataBean
)
...
...
@@ -187,23 +186,16 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
mFileAdapter
=
FilesItemViewAdapter
(
itemList
,
requireContext
(),
mItemCheckedArray
)
mFilesItemListView
.
adapter
=
mFileAdapter
setOnListViewItemClickListener
()
mNotPermissionLayout
.
visibility
=
View
.
GONE
if
(
HomeActivity
.
isPermission
)
{
if
(
itemList
.
size
>
0
)
{
mNotFileFoundLayout
.
visibility
=
View
.
GONE
mFilesItemListView
.
visibility
=
View
.
VISIBLE
// isEditShow(true)
}
else
{
mFilesItemListView
.
visibility
=
View
.
GONE
mNotFileFoundLayout
.
visibility
=
View
.
VISIBLE
// isEditShow(false)
}
}
else
{
mNotPermissionLayout
.
visibility
=
View
.
VISIBLE
mFilesItemListView
.
visibility
=
View
.
GONE
// mNotFileFoundLayout.visibility = View.GONE
// isEditShow(false)
}
}
...
...
@@ -227,7 +219,7 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
mEditBtn
.
visibility
=
View
.
GONE
mCancelBtn
.
visibility
=
View
.
VISIBLE
mShareBtn
.
visibility
=
View
.
VISIBLE
binding
.
includeBar
.
btnShare
.
visibility
=
View
.
VISIBLE
mBottomBar
.
visibility
=
View
.
VISIBLE
mSwitchSelectView
.
visibility
=
View
.
VISIBLE
...
...
@@ -275,7 +267,6 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
R
.
id
.
btn_move_bottom
->
{
if
(
switchNumber
==
0
)
return
// mFileAdapter?.setEditClickState(false)
isMove
=
true
var
intent
=
Intent
(
context
,
MoveOrCopyActivity
::
class
.
java
)
intent
.
putExtra
(
"checkedItemBeans"
,
mFileCheckedItemList
)
...
...
@@ -323,12 +314,11 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
R
.
id
.
btn_cancel_bottom
->
{
mTitle
Text
.
text
=
mTitleStr
binding
.
includeBar
.
titleBar
Text
.
text
=
mTitleStr
mCancelBottomBtn
.
visibility
=
View
.
GONE
mQuitBtn
.
visibility
=
View
.
GONE
mCancelBtn
.
visibility
=
View
.
VISIBLE
// mDeleteBtn.visibility = View.VISIBLE
mShareBtn
.
visibility
=
View
.
VISIBLE
binding
.
includeBar
.
btnShare
.
visibility
=
View
.
VISIBLE
mCopyBottomBtn
.
visibility
=
View
.
VISIBLE
mMoveBottomBtn
.
visibility
=
View
.
VISIBLE
mRenameBottomBtn
.
visibility
=
View
.
VISIBLE
...
...
@@ -358,7 +348,7 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
mEditBtn
.
visibility
=
View
.
VISIBLE
mCancelBtn
.
visibility
=
View
.
GONE
mDeleteBtn
.
visibility
=
View
.
GONE
mShareBtn
.
visibility
=
View
.
GONE
binding
.
includeBar
.
btnShare
.
visibility
=
View
.
GONE
mBottomBar
.
visibility
=
View
.
GONE
mSwitchSelectView
.
visibility
=
View
.
GONE
if
(
mFilesItemLists
.
size
==
0
)
{
...
...
@@ -432,7 +422,6 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
}
mFileAdapter
?.
notifyDataSetChanged
()
mBaseViewModel
.
setNumber
(
switchNumber
)
// mSelectNumText.text = String.format(getString(R.string.select_0, mSelectNum.toString()))
}
fun
updateCheckBoxStatus
(
view
:
View
,
position
:
Int
)
{
...
...
@@ -494,9 +483,9 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
private
fun
createNewDir
()
{
val
customDialog
=
CustomDialog
(
context
)
customDialog
.
setsCancel
(
View
.
OnClickListener
{
customDialog
.
setsCancel
{
customDialog
.
dismiss
()
}
)
.
setsConfirm
(
View
.
OnClickListener
{
}.
setsConfirm
(
View
.
OnClickListener
{
val
editTextStr
=
customDialog
.
getEditTextStr
()
for
(
fileBean
:
FileBean
in
mItemDataList
)
{
if
(
editTextStr
.
equals
(
fileBean
.
fileName
))
{
...
...
@@ -579,11 +568,10 @@ class InternalStorageFragment : Fragment(), View.OnClickListener {
isCopy
=
false
}
if
(
PermissionUtil
.
checkGrantedPermission
(
requireActivity
()))
{
showNoPermissionUi
(
false
)
requestDataList
()
}
else
{
mEditBtn
.
visibility
=
View
.
GONE
mCurrentFilePathTv
.
visibility
=
View
.
GONE
mNotPermissionLayout
.
visibility
=
View
.
VISIBLE
showNoPermissionUi
(
true
)
}
}
...
...
app/src/main/res/layout/activity_antivirus.xml
View file @
48e4d96a
...
...
@@ -6,11 +6,13 @@
android:layout_height=
"match_parent"
tools:context=
".antivirus.AntivirusActivity"
>
<!-- 扫描病毒隐私ui -->
<FrameLayout
android:id=
"@+id/
antivirus_page_2
"
android:id=
"@+id/
fl_virus_privacy
"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"#F8F8F8"
>
android:background=
"#F8F8F8"
android:visibility=
"gone"
>
<RelativeLayout
android:layout_width=
"match_parent"
...
...
@@ -18,7 +20,7 @@
tools:ignore=
"UselessParent"
>
<ImageView
android:id=
"@+id/
antivirus_quit_btn
"
android:id=
"@+id/
iv_back
"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentStart=
"true"
...
...
@@ -153,15 +155,158 @@
</FrameLayout>
<
Frame
Layout
android:id=
"@+id/
check_the_source_layout
"
<!-- 开始病毒扫描ui -->
<
Linear
Layout
android:id=
"@+id/
ll_virus_scan
"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
android:visibility=
"gone"
>
<include
layout=
"@layout/check_the_source_layout"
/>
</FrameLayout>
<ImageView
android:id=
"@+id/iv_back_2"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"16dp"
android:src=
"@drawable/ic_quit"
tools:ignore=
"ContentDescription"
/>
<ScrollView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<LinearLayout
android:id=
"@+id/scan_ing_layout"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"38dp"
android:text=
"Check the safety of the source"
android:textColor=
"@color/black"
android:textSize=
"16dp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText,SpUsage"
/>
<RelativeLayout
android:layout_width=
"wrap_content"
android:layout_height=
"389dp"
android:layout_gravity=
"center_horizontal"
android:background=
"@mipmap/antivirus_image"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:layout_marginBottom=
"30dp"
android:text=
"Applications from unknow soursess: 10"
android:textColor=
"#FF0707"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<TextView
android:id=
"@+id/scan_name_text"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:text=
"Tiktok"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
</RelativeLayout>
<ProgressBar
android:id=
"@+id/antivirus_progress"
style=
"@style/Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width=
"match_parent"
android:layout_height=
"15dp"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"24dp"
android:layout_marginEnd=
"16dp"
android:progress=
"20"
android:progressDrawable=
"@drawable/progress_bg"
/>
<TextView
android:id=
"@+id/antivirus_stop_text"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"16dp"
android:text=
"Stop"
android:textColor=
"#999999"
android:textSize=
"16sp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText"
/>
</LinearLayout>
<RelativeLayout
android:id=
"@+id/antivirus_success_layout"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:visibility=
"gone"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:src=
"@mipmap/wancheng"
tools:ignore=
"ContentDescription"
/>
<ProgressBar
android:layout_width=
"54dp"
android:layout_height=
"54dp"
android:layout_alignParentBottom=
"true"
android:layout_centerHorizontal=
"true"
android:progressTint=
"@color/style_background"
/>
</RelativeLayout>
<LinearLayout
android:id=
"@+id/ad_group_layout"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:orientation=
"vertical"
tools:ignore=
"UseCompoundDrawables,UselessParent"
>
<TextView
android:id=
"@+id/power_by_trust_look"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginBottom=
"16dp"
android:text=
"Powered By Trustlook"
android:textColor=
"@color/style_background"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<FrameLayout
android:id=
"@+id/fl_ad"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"8dp"
tools:ignore=
"ContentDescription"
/>
</LinearLayout>
</LinearLayout>
</ScrollView>
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
app/src/main/res/layout/activity_file_manager.xml
View file @
48e4d96a
...
...
@@ -32,7 +32,6 @@
android:id=
"@+id/not_file_found_layout"
layout=
"@layout/not_found_layout"
/>
<include
android:id=
"@+id/bottom_btn_group"
layout=
"@layout/bottom_bar_layout"
...
...
app/src/main/res/layout/check_the_source_layout.xml
deleted
100644 → 0
View file @
38b12d9c
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<ImageView
android:id=
"@+id/antivirus_quit_btn_2"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentStart=
"true"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"16dp"
android:src=
"@drawable/ic_quit"
tools:ignore=
"ContentDescription"
/>
<LinearLayout
android:id=
"@+id/scan_ing_layout"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_below=
"@+id/antivirus_quit_btn_2"
android:orientation=
"vertical"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"38dp"
android:text=
"Check the safety of the source"
android:textColor=
"@color/black"
android:textSize=
"16dp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText,SpUsage"
/>
<RelativeLayout
android:layout_width=
"wrap_content"
android:layout_height=
"389dp"
android:layout_gravity=
"center_horizontal"
android:background=
"@mipmap/antivirus_image"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:layout_marginBottom=
"30dp"
android:text=
"Applications from unknow soursess: 10"
android:textColor=
"#FF0707"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<TextView
android:id=
"@+id/scan_name_text"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:text=
"Tiktok"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
</RelativeLayout>
<ProgressBar
android:id=
"@+id/antivirus_progress"
style=
"@style/Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width=
"match_parent"
android:layout_height=
"15dp"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"24dp"
android:layout_marginEnd=
"16dp"
android:progress=
"20"
android:progressDrawable=
"@drawable/progress_bg"
/>
<TextView
android:id=
"@+id/antivirus_stop_text"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"16dp"
android:text=
"Stop"
android:textColor=
"#999999"
android:textSize=
"16sp"
android:textStyle=
"bold"
tools:ignore=
"HardcodedText"
/>
</LinearLayout>
<RelativeLayout
android:id=
"@+id/antivirus_success_layout"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_above=
"@+id/ad_group_layout"
android:layout_below=
"@id/antivirus_quit_btn_2"
android:visibility=
"gone"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:src=
"@mipmap/wancheng"
tools:ignore=
"ContentDescription"
/>
<ProgressBar
android:layout_width=
"54dp"
android:layout_height=
"54dp"
android:layout_alignParentBottom=
"true"
android:layout_centerHorizontal=
"true"
android:progressTint=
"@color/style_background"
/>
</RelativeLayout>
<FrameLayout
android:id=
"@+id/ad_group_layout"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:layout_centerHorizontal=
"true"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
tools:ignore=
"UselessParent"
>
<TextView
android:id=
"@+id/power_by_trust_look"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginBottom=
"16dp"
android:text=
"Powered By Trustlook"
android:textColor=
"@color/style_background"
android:textSize=
"16sp"
tools:ignore=
"HardcodedText"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@mipmap/ad"
tools:ignore=
"ContentDescription"
/>
</LinearLayout>
</FrameLayout>
</RelativeLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_file_manager.xml
View file @
48e4d96a
...
...
@@ -7,9 +7,9 @@
<ScrollView
android:layout_width=
"match_parent"
android:layout_height=
"
match_par
ent"
android:
layout_above=
"@+id/file_manager_ad
"
android:scrollbars=
"none
"
>
android:layout_height=
"
wrap_cont
ent"
android:
scrollbars=
"none
"
tools:ignore=
"UselessParent
"
>
<LinearLayout
android:layout_width=
"match_parent"
...
...
@@ -358,7 +358,8 @@
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@drawable/ic_ppt"
/>
android:src=
"@drawable/ic_ppt"
tools:ignore=
"ContentDescription"
/>
<TextView
android:layout_width=
"wrap_content"
...
...
@@ -420,23 +421,17 @@
</LinearLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>
<FrameLayout
android:id=
"@+id/fl_ad"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginVertical=
"8dp"
/>
</LinearLayout>
<FrameLayout
android:id=
"@+id/file_manager_ad"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
>
<!-- <include layout="@layout/ad_layout"/>-->
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:src=
"@mipmap/ad"
/>
</FrameLayout>
</ScrollView>
</RelativeLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_internal_storage.xml
View file @
48e4d96a
...
...
@@ -7,33 +7,46 @@
android:orientation=
"vertical"
tools:context=
".fragment.InternalStorageFragment"
>
<include
layout=
"@layout/title_bar_layout"
/>
<include
android:id=
"@+id/include_bar"
layout=
"@layout/title_bar_layout"
android:visibility=
"gone"
/>
<Li
stView
android:id=
"@+id/
files_item_listview
"
<Li
nearLayout
android:id=
"@+id/
ll_content
"
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"12dp"
android:layout_marginEnd=
"16dp"
android:layout_weight=
"0.9"
android:divider=
"@null"
android:dividerHeight=
"10dp"
/>
android:layout_height=
"match_parent"
android:orientation=
"vertical"
android:visibility=
"gone"
>
<include
android:id=
"@+id/not_file_permission_layout"
layout=
"@layout/not_permission_layout"
android:visibility=
"gone"
/>
<ListView
android:id=
"@+id/files_item_listview"
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_marginStart=
"16dp"
android:layout_marginTop=
"12dp"
android:layout_marginEnd=
"16dp"
android:layout_weight=
"1"
android:divider=
"@null"
android:dividerHeight=
"10dp"
/>
<include
android:id=
"@+id/not_file_found_layout"
layout=
"@layout/not_found_layout"
android:visibility=
"gone"
/>
<include
android:id=
"@+id/not_file_found_layout"
layout=
"@layout/not_found_layout"
android:visibility=
"gone"
/>
<include
android:id=
"@+id/bottom_btn_group"
layout=
"@layout/bottom_bar_layout"
android:visibility=
"gone"
/>
</LinearLayout>
<include
android:id=
"@+id/
bottom_btn_group
"
layout=
"@layout/
bottom_bar
_layout"
android:id=
"@+id/
include_no_permission
"
layout=
"@layout/
not_permission
_layout"
android:visibility=
"gone"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/not_permission_layout.xml
View file @
48e4d96a
...
...
@@ -17,7 +17,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerHorizontal=
"true"
android:src=
"@
drawable/not_permissions
"
android:src=
"@
mipmap/tu
"
tools:ignore=
"ContentDescription"
/>
<TextView
...
...
app/src/main/res/mipmap-hdpi/tu.png
0 → 100644
View file @
48e4d96a
15.8 KB
app/src/main/res/mipmap-mdpi/tu.png
0 → 100644
View file @
48e4d96a
9.67 KB
app/src/main/res/mipmap-xhdpi/tu.png
0 → 100644
View file @
48e4d96a
18.9 KB
app/src/main/res/mipmap-xxhdpi/tu.png
0 → 100644
View file @
48e4d96a
45.6 KB
app/src/main/res/mipmap-xxxhdpi/tu.png
0 → 100644
View file @
48e4d96a
52 KB
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