Commit 04fb8630 authored by wanglei's avatar wanglei

========ui部分的bug=========

parent 0432cdae
...@@ -4,6 +4,7 @@ import android.content.Intent ...@@ -4,6 +4,7 @@ import android.content.Intent
import android.os.Build import android.os.Build
import android.os.Environment import android.os.Environment
import android.view.View import android.view.View
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.GridLayoutManager
import com.base.superfilemanager.R import com.base.superfilemanager.R
...@@ -14,9 +15,7 @@ import com.base.superfilemanager.bean.FileCategoryBean ...@@ -14,9 +15,7 @@ import com.base.superfilemanager.bean.FileCategoryBean
import com.base.superfilemanager.bean.FileCategoryBean.Companion.Image import com.base.superfilemanager.bean.FileCategoryBean.Companion.Image
import com.base.superfilemanager.databinding.FragmentFileCategoryBinding import com.base.superfilemanager.databinding.FragmentFileCategoryBinding
import com.base.superfilemanager.helps.BaseFragment import com.base.superfilemanager.helps.BaseFragment
import com.base.superfilemanager.helps.ads.AdmobUtils
import com.base.superfilemanager.helps.file.MediaStoreEx import com.base.superfilemanager.helps.file.MediaStoreEx
import com.base.superfilemanager.view.AdPreparationPop
import com.blankj.utilcode.constant.PermissionConstants import com.blankj.utilcode.constant.PermissionConstants
import com.blankj.utilcode.util.PermissionUtils import com.blankj.utilcode.util.PermissionUtils
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
...@@ -64,10 +63,11 @@ class FileCategoryFragment : BaseFragment<FragmentFileCategoryBinding>() { ...@@ -64,10 +63,11 @@ class FileCategoryFragment : BaseFragment<FragmentFileCategoryBinding>() {
mediaAdapter.setData(mediaList) mediaAdapter.setData(mediaList)
binding.tvAuthorization.setOnClickListener { binding.tvAuthorization.setOnClickListener {
(requireActivity() as MainActivity).checkPermission(true) (requireActivity() as MainActivity).checkPermission(true, false)
} }
binding.llAll.isVisible = checkStorage()
binding.llAll.setOnClickListener { binding.llAll.setOnClickListener {
(requireActivity() as MainActivity).checkPermission(true) itemClick(Image)
} }
recentAdapter = FileCategoryAdapter(FileCategoryAdapter.MODE_RECENT, ::itemClick) recentAdapter = FileCategoryAdapter(FileCategoryAdapter.MODE_RECENT, ::itemClick)
binding.rvRecent.adapter = recentAdapter binding.rvRecent.adapter = recentAdapter
...@@ -80,6 +80,9 @@ class FileCategoryFragment : BaseFragment<FragmentFileCategoryBinding>() { ...@@ -80,6 +80,9 @@ class FileCategoryFragment : BaseFragment<FragmentFileCategoryBinding>() {
binding.tvAuthorization.visibility = View.GONE binding.tvAuthorization.visibility = View.GONE
binding.rvRecent.visibility = View.VISIBLE binding.rvRecent.visibility = View.VISIBLE
loadRecentImageVideo() loadRecentImageVideo()
binding.llAll.isVisible = true
} else {
binding.llAll.isVisible = false
} }
} }
......
...@@ -68,7 +68,7 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() { ...@@ -68,7 +68,7 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
} }
private var isRequested = false private var isRequested = false
fun checkPermission(needcheck: Boolean = false) { fun checkPermission(needcheck: Boolean = false, denyFinish: Boolean = true) {
if (needcheck) { if (needcheck) {
onPermissionsResult( onPermissionsResult(
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
...@@ -108,11 +108,14 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() { ...@@ -108,11 +108,14 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
PermissionTripActivity.launch(this) PermissionTripActivity.launch(this)
haveJumpPermission = true haveJumpPermission = true
}, { }, {
if (denyFinish) {
AdPreparationPop(this@BaseActivity) { AdPreparationPop(this@BaseActivity) {
AdmobUtils.showInterstitialAd(this@BaseActivity) { AdmobUtils.showInterstitialAd(this@BaseActivity) {
finishToMain() finishToMain()
} }
}.show() }.show()
}
null null
}) })
} }
......
package com.base.superfilemanager.helps
import android.annotation.SuppressLint
import android.content.Context
import android.content.Intent
import android.net.Uri
import android.os.Build
import android.os.Environment
import android.provider.Settings
import com.blankj.utilcode.constant.PermissionConstants
import com.blankj.utilcode.util.PermissionUtils
object PermissionHelp {
fun checkStorePermission(): Boolean {
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
Environment.isExternalStorageManager()
} else {
PermissionUtils.isGranted(PermissionConstants.STORAGE)
}
}
fun Context.requestStorePermission(
launcher: ActivityLauncher,
jumpAction: (() -> Unit)? = null,
result: (flag: Boolean) -> Unit
) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
val intent =
Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION)
intent.addCategory("android.intent.category.DEFAULT")
intent.data = Uri.parse("package:${packageName}")
jumpAction?.invoke()
launcher.launch(intent) {
result.invoke(checkStorePermission())
}
} else {
PermissionUtils.permissionGroup(PermissionConstants.STORAGE).callback { isAllGranted, _, _, _ ->
result.invoke(isAllGranted)
}
}
}
}
\ No newline at end of file
...@@ -84,12 +84,12 @@ ...@@ -84,12 +84,12 @@
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
<LinearLayout <LinearLayout
android:visibility="invisible"
android:id="@+id/ll_all" android:id="@+id/ll_all"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal" android:orientation="horizontal"
android:padding="8dp" android:padding="8dp"
android:visibility="invisible"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
......
...@@ -82,8 +82,8 @@ ...@@ -82,8 +82,8 @@
<LinearLayout <LinearLayout
android:layout_width="59dp" android:layout_width="wrap_content"
android:layout_height="35dp" android:layout_height="wrap_content"
android:orientation="vertical" android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="@id/iv_launches_border" app:layout_constraintBottom_toBottomOf="@id/iv_launches_border"
app:layout_constraintEnd_toEndOf="@id/iv_launches_border" app:layout_constraintEnd_toEndOf="@id/iv_launches_border"
......
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