Commit 31a936d8 authored by wanglei's avatar wanglei

========NetWorkActivity广告逻辑修改========

parent be57cec0
package com.base.superfilemanager.activity package com.base.superfilemanager.activity
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.AppOpsManager
import android.app.usage.NetworkStats import android.app.usage.NetworkStats
import android.app.usage.NetworkStatsManager import android.app.usage.NetworkStatsManager
import android.content.Context import android.content.Context
import android.graphics.Color import android.graphics.Color
import android.net.ConnectivityManager import android.net.ConnectivityManager
import android.os.Build
import android.util.SparseLongArray import android.util.SparseLongArray
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
...@@ -41,40 +43,39 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() { ...@@ -41,40 +43,39 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() {
private var startTime = NetworkStatsHelper.getTimesMonthmorning() private var startTime = NetworkStatsHelper.getTimesMonthmorning()
private var types = 2 private var types = 2
private var ifPlayAnimal = false
override fun onStart() { override fun onStart() {
super.onStart() super.onStart()
checkAccesSettings() if (ifPlayAnimal) {
hasAccessSettings()
}
} }
var isplay = 0 private fun hasAccessSettings() {
override fun onAccesSettingsResult(isGranted: Boolean) { val appOpsManager = getSystemService(Context.APP_OPS_SERVICE) as AppOpsManager
binding.idLlNoAccpermion.isVisible = !isGranted if (
if (isGranted) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
isplay += 1 appOpsManager.unsafeCheckOpNoThrow(
binding.idLlNetDh.isVisible = false AppOpsManager.OPSTR_GET_USAGE_STATS,
initList() android.os.Process.myUid(),
if (isplay == 1) { this.packageName
playlottie() ) == AppOpsManager.MODE_ALLOWED
} else {
appOpsManager.checkOpNoThrow(
AppOpsManager.OPSTR_GET_USAGE_STATS,
android.os.Process.myUid(),
this.packageName
) == AppOpsManager.MODE_ALLOWED
} }
) {
binding.idLlNoAccpermion.isVisible = false
initList()
} else { } else {
finishToMain() binding.idLlNoAccpermion.isVisible = true
} }
} }
private fun playlottie() {
binding.idLlNetDh.isVisible = true
binding.idLottieNetwork.imageAssetsFolder = "wan_super_gluo/images/"
binding.idLottieNetwork.setAnimation("wan_super_gluo/data.json")
binding.idLottieNetwork.playAnimation()
binding.root.postDelayed({
AdmobUtils.showInterstitialAd(this) {
binding.idLlNetDh.isVisible = false
}
}, 4000)
}
override val binding: ActivityLayoutNetworkBinding by lazy { override val binding: ActivityLayoutNetworkBinding by lazy {
ActivityLayoutNetworkBinding.inflate(layoutInflater) ActivityLayoutNetworkBinding.inflate(layoutInflater)
} }
...@@ -84,6 +85,19 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() { ...@@ -84,6 +85,19 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() {
BarUtils.setStatusBarColor(this, Color.TRANSPARENT) BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight()) binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
binding.idTvThisMonth.isSelected = true binding.idTvThisMonth.isSelected = true
playLottie()
}
private fun playLottie() {
binding.idLlNetDh.isVisible = true
binding.idLottieNetwork.imageAssetsFolder = "wan_super_gluo/images/"
binding.idLottieNetwork.setAnimation("wan_super_gluo/data.json")
binding.idLottieNetwork.playAnimation()
binding.root.postDelayed({
AdmobUtils.showInterstitialAd(this) {
binding.idLlNetDh.isVisible = false
}
}, 4000)
} }
override fun initListener() { override fun initListener() {
...@@ -100,7 +114,7 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() { ...@@ -100,7 +114,7 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() {
}) })
binding.idGant.setOnClickListener { binding.idGant.setOnClickListener {
checkAccesSettings(true) checkAccessSettings(true)
} }
binding.idTvThisMonth.setOnClickListener { binding.idTvThisMonth.setOnClickListener {
clickTop(0) clickTop(0)
......
...@@ -60,6 +60,9 @@ class FileCategoryAdapter(val mode: String, val click: (key: String) -> Unit) : ...@@ -60,6 +60,9 @@ class FileCategoryAdapter(val mode: String, val click: (key: String) -> Unit) :
MODE_RECENT -> { MODE_RECENT -> {
val binding = ItemRecentMediaBinding.bind(holder.itemView) val binding = ItemRecentMediaBinding.bind(holder.itemView)
Glide.with(context).load(data.url).centerCrop().into(binding.iv) Glide.with(context).load(data.url).centerCrop().into(binding.iv)
binding.root.setOnClickListener {
click.invoke(data.key)
}
} }
} }
......
...@@ -11,6 +11,7 @@ import com.base.superfilemanager.activity.FileCategoryActivity ...@@ -11,6 +11,7 @@ import com.base.superfilemanager.activity.FileCategoryActivity
import com.base.superfilemanager.activity.MainActivity import com.base.superfilemanager.activity.MainActivity
import com.base.superfilemanager.adapter.FileCategoryAdapter import com.base.superfilemanager.adapter.FileCategoryAdapter
import com.base.superfilemanager.bean.FileCategoryBean import com.base.superfilemanager.bean.FileCategoryBean
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.file.MediaStoreEx import com.base.superfilemanager.helps.file.MediaStoreEx
...@@ -106,7 +107,7 @@ class FileCategoryFragment : BaseFragment<FragmentFileCategoryBinding>() { ...@@ -106,7 +107,7 @@ class FileCategoryFragment : BaseFragment<FragmentFileCategoryBinding>() {
private fun loadRecentImageVideo() = lifecycleScope.launch(Dispatchers.Main) { private fun loadRecentImageVideo() = lifecycleScope.launch(Dispatchers.Main) {
val imageList = arrayListOf<FileCategoryBean>() val imageList = arrayListOf<FileCategoryBean>()
async { async {
val list = MediaStoreEx.recentImage(requireContext()).map { FileCategoryBean(url = it.toString()) } val list = MediaStoreEx.recentImage(requireContext()).map { FileCategoryBean(key = Image, url = it.toString()) }
imageList.addAll(list) imageList.addAll(list)
}.await() }.await()
if (imageList.isEmpty()) { if (imageList.isEmpty()) {
......
...@@ -139,9 +139,9 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() { ...@@ -139,9 +139,9 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
} }
fun checkAccesSettings(needcheck: Boolean = false) { fun checkAccessSettings(needCheck: Boolean = false) {
val appOpsManager = getSystemService(Context.APP_OPS_SERVICE) as AppOpsManager val appOpsManager = getSystemService(Context.APP_OPS_SERVICE) as AppOpsManager
if (needcheck) { if (needCheck) {
onAccesSettingsResult( onAccesSettingsResult(
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
appOpsManager.unsafeCheckOpNoThrow( appOpsManager.unsafeCheckOpNoThrow(
......
...@@ -115,7 +115,8 @@ ...@@ -115,7 +115,8 @@
android:textSize="13sp" android:textSize="13sp"
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent"
tools:ignore="HardcodedText" />
<TextView <TextView
android:id="@+id/id_mobile_liuliang" android:id="@+id/id_mobile_liuliang"
...@@ -137,9 +138,11 @@ ...@@ -137,9 +138,11 @@
android:textColor="#4772FF" android:textColor="#4772FF"
android:textSize="13sp" android:textSize="13sp"
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintStart_toStartOf="@id/id_wifi_liuliang"
app:layout_constraintEnd_toEndOf="@id/id_wifi_liuliang"
app:layout_constraintBottom_toBottomOf="@+id/id_tv_mobile" app:layout_constraintBottom_toBottomOf="@+id/id_tv_mobile"
app:layout_constraintStart_toStartOf="@+id/id_wifi_liuliang" app:layout_constraintTop_toTopOf="@+id/id_tv_mobile"
app:layout_constraintTop_toTopOf="@+id/id_tv_mobile" /> tools:ignore="HardcodedText" />
<TextView <TextView
android:id="@+id/id_wifi_liuliang" android:id="@+id/id_wifi_liuliang"
......
...@@ -520,7 +520,7 @@ ...@@ -520,7 +520,7 @@
android:layout_weight="1" android:layout_weight="1"
android:text="Recent App Usage" android:text="Recent App Usage"
android:textColor="#000000" android:textColor="#000000"
android:textSize="13sp" android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
tools:ignore="HardcodedText" /> tools:ignore="HardcodedText" />
......
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