Commit 7d49dc3a authored by wanglei's avatar wanglei

==========FileCategoryActivity处理进入权限问题=============

parent 67e5b524
package com.base.superfilemanager.activity
import android.util.Log
import android.view.View
import android.widget.LinearLayout
import androidx.activity.addCallback
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.DividerItemDecoration
import com.base.superfilemanager.adapter.FileBrowseAdapter
......@@ -20,6 +22,7 @@ import com.base.superfilemanager.bean.FileCategoryBean.Companion.ZIP
import com.base.superfilemanager.databinding.ActivityFileCategoryBinding
import com.base.superfilemanager.helps.BaseActivity
import com.base.superfilemanager.helps.FileHelps
import com.base.superfilemanager.helps.LogEx
import com.base.superfilemanager.helps.ads.AdmobUtils
import com.base.superfilemanager.helps.file.FileEx.deleteDirectory
import com.base.superfilemanager.view.AdPreparationPop
......@@ -32,6 +35,7 @@ import java.lang.Exception
class FileCategoryActivity : BaseActivity<ActivityFileCategoryBinding>() {
private val TAG = "FileCategoryActivity"
private var type: String = ""
private lateinit var adapter: FileBrowseAdapter
......@@ -50,7 +54,12 @@ class FileCategoryActivity : BaseActivity<ActivityFileCategoryBinding>() {
binding.rv.adapter = adapter
binding.rv.addItemDecoration(DividerItemDecoration(this, LinearLayout.VERTICAL))
binding.flBack.setOnClickListener {
finishToMain()
onBackPressedDispatcher.onBackPressed()
}
onBackPressedDispatcher.addCallback {
AdmobUtils.showInterstitialAd(this@FileCategoryActivity) {
finishToMain()
}
}
binding.tvDelete.setOnClickListener {
val deleteList = adapter.getSelect()
......@@ -82,7 +91,13 @@ class FileCategoryActivity : BaseActivity<ActivityFileCategoryBinding>() {
}
override fun onPermissionsResult(isGranted: Boolean) {
LogEx.logDebug(TAG, "onPermissionsResult isGranted=$isGranted")
if (isGranted) {
if (!haveJumpPermission) {
AdPreparationPop(this@FileCategoryActivity) {
AdmobUtils.showInterstitialAd(this@FileCategoryActivity)
}.show()
}
initData()
} else {
finishToMain()
......@@ -95,22 +110,26 @@ class FileCategoryActivity : BaseActivity<ActivityFileCategoryBinding>() {
binding.progressbar.visibility = View.VISIBLE
FileHelps.getFileList(
onUpdate = {
val temp = arrayListOf<FileBean>()
val temp = arrayListOf<FileBean?>()
temp.addAll(FileHelps.fileList)
if (temp.isNotEmpty()) {
when (type) {
FileCategoryBean.ALL -> showList.addAll(temp.filter { it.isDoc() })
XLS -> showList.addAll(temp.filter { it.isXls() })
DOC -> showList.addAll(temp.filter { it.isDocx() })
PDF -> showList.addAll(temp.filter { it.isPdf() })
ZIP -> showList.addAll(temp.filter { it.isZip() })
TXT -> showList.addAll(temp.filter { it.isTxt() })
PPT -> showList.addAll(temp.filter { it.isPpt() })
Video -> showList.addAll(temp.filter { it.isVideo() })
Audio -> showList.addAll(temp.filter { it.isAudio() })
APK -> showList.addAll(temp.filter { it.isApk() })
Image -> showList.addAll(temp.filter { it.isImage() })
val addList = when (type) {
FileCategoryBean.ALL -> temp.filter { it != null && it.isDoc() }.filterNotNull()
XLS -> temp.filter { it != null && it.isXls() }.filterNotNull()
DOC -> temp.filter { it != null && it.isDocx() }.filterNotNull()
PDF -> temp.filter { it != null && it.isPdf() }.filterNotNull()
ZIP -> temp.filter { it != null && it.isZip() }.filterNotNull()
TXT -> temp.filter { it != null && it.isTxt() }.filterNotNull()
PPT -> temp.filter { it != null && it.isPpt() }.filterNotNull()
Video -> temp.filter { it != null && it.isVideo() }.filterNotNull()
Audio -> temp.filter { it != null && it.isAudio() }.filterNotNull()
APK -> temp.filter { it != null && it.isApk() }.filterNotNull()
Image -> temp.filter { it != null && it.isImage() }.filterNotNull()
else -> listOf()
}
showList.addAll(addList)
if (showList.isNotEmpty()) {
binding.clOther.visibility = View.GONE
binding.progressbar.visibility = View.GONE
......
......@@ -14,7 +14,9 @@ import com.base.superfilemanager.bean.FileCategoryBean
import com.base.superfilemanager.bean.FileCategoryBean.Companion.Image
import com.base.superfilemanager.databinding.FragmentFileCategoryBinding
import com.base.superfilemanager.helps.BaseFragment
import com.base.superfilemanager.helps.ads.AdmobUtils
import com.base.superfilemanager.helps.file.MediaStoreEx
import com.base.superfilemanager.view.AdPreparationPop
import com.blankj.utilcode.constant.PermissionConstants
import com.blankj.utilcode.util.PermissionUtils
import kotlinx.coroutines.Dispatchers
......
......@@ -29,6 +29,9 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
protected open val isLightMode: Boolean? = null
//是否跳转过系统选项页面
protected var haveJumpPermission: Boolean = false
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(binding.root)
......@@ -103,6 +106,7 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
intent.data = Uri.parse("package:${packageName}")
permissionLauncher.launch(intent)
PermissionTripActivity.launch(this)
haveJumpPermission = true
}, {
AdPreparationPop(this@BaseActivity) {
AdmobUtils.showInterstitialAd(this@BaseActivity) {
......@@ -191,6 +195,7 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
intent.addCategory("android.intent.category.DEFAULT")
intent.data = Uri.parse("package:${this.packageName}")
accessLauncher.launch(intent)
haveJumpPermission = true
}
} else {
......
......@@ -47,7 +47,7 @@ object NetWorkSpeed {
NetWorkSpeed.totalTxSpeed = totalTxSpeed
NetWorkSpeed.totalRxSpeed = totalRxSpeed
preElapsedRealtime = elapsedRealtime
Log.i("networkSpeedMonitor", "Tx: $totalTxSpeed, Rx: $totalRxSpeed")
// Log.i("networkSpeedMonitor", "Tx: $totalTxSpeed, Rx: $totalRxSpeed")
} catch (e10: Exception) {
}
waitAMoment(4000L)
......
......@@ -2,16 +2,17 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_marginVertical="10dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="25dp"
android:layout_marginVertical="10dp"
android:orientation="vertical"
tools:ignore="UseCompoundDrawables">
<ImageView
android:id="@+id/iv"
android:layout_width="42dp"
android:layout_height="40dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
tools:ignore="ContentDescription" />
<TextView
......
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