Commit 9212d532 authored by wanglei's avatar wanglei

同步NetWorkActivity和SpeakCleaningActivity的广告逻辑

parent a9f34908
...@@ -28,7 +28,7 @@ android { ...@@ -28,7 +28,7 @@ android {
abiFilters 'arm64-v8a', 'armeabi-v7a', 'x86', 'x86_64' abiFilters 'arm64-v8a', 'armeabi-v7a', 'x86', 'x86_64'
} }
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
setProperty("archivesBaseName", "supercleanermax-v${versionName}") setProperty("archivesBaseName", "SmartCleaner&JunkCleaner-v${versionName}")
} }
buildTypes { buildTypes {
......
...@@ -124,7 +124,7 @@ ...@@ -124,7 +124,7 @@
android:name=".activity.SpeakerCleanerActivity" android:name=".activity.SpeakerCleanerActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".activity.SpeakCleaningActivity" android:name=".activity.SpeakerCleaningActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".activity.RepeaterdPhotoActivity" android:name=".activity.RepeaterdPhotoActivity"
......
package com.test.basd.smartjunkcleaner.activity package com.test.basd.smartjunkcleaner.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
...@@ -30,6 +32,7 @@ import com.test.basd.smartjunkcleaner.helps.KotlinExt.toFormatSize ...@@ -30,6 +32,7 @@ import com.test.basd.smartjunkcleaner.helps.KotlinExt.toFormatSize
import com.test.basd.smartjunkcleaner.helps.NetworkStatsHelper import com.test.basd.smartjunkcleaner.helps.NetworkStatsHelper
import com.test.basd.smartjunkcleaner.helps.ads.AdmobUtils import com.test.basd.smartjunkcleaner.helps.ads.AdmobUtils
import com.test.basd.smartjunkcleaner.view.DialogViews import com.test.basd.smartjunkcleaner.view.DialogViews
import kotlin.random.Random
class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() { class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() {
...@@ -41,28 +44,39 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() { ...@@ -41,28 +44,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() {
private fun playlottie() {
binding.idLlNetDh.isVisible = true binding.idLlNetDh.isVisible = true
binding.idLottieNetwork.imageAssetsFolder = "wan_sjunk_luo/images/" binding.idLottieNetwork.imageAssetsFolder = "wan_sjunk_luo/images/"
binding.idLottieNetwork.setAnimation("wan_sjunk_luo/data.json") binding.idLottieNetwork.setAnimation("wan_sjunk_luo/data.json")
...@@ -70,8 +84,10 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() { ...@@ -70,8 +84,10 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() {
binding.root.postDelayed({ binding.root.postDelayed({
AdmobUtils.showInterstitialAd(this) { AdmobUtils.showInterstitialAd(this) {
binding.idLlNetDh.isVisible = false binding.idLlNetDh.isVisible = false
ifPlayAnimal = true
hasAccessSettings()
} }
}, 4000) }, Random.nextLong(2500, 4000))
} }
...@@ -84,6 +100,7 @@ class NetWorkActivity : BaseActivity<ActivityLayoutNetworkBinding>() { ...@@ -84,6 +100,7 @@ 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()
} }
override fun initListener() { override fun initListener() {
......
...@@ -37,7 +37,7 @@ class SpeakerCleanerActivity : BaseActivity<ActivityLayoutSpeakerCleanBinding>() ...@@ -37,7 +37,7 @@ class SpeakerCleanerActivity : BaseActivity<ActivityLayoutSpeakerCleanBinding>()
} }
}) })
binding.idCleanDust.setOnClickListener { binding.idCleanDust.setOnClickListener {
startActivity(Intent(this, SpeakCleaningActivity::class.java)) startActivity(Intent(this, SpeakerCleaningActivity::class.java))
} }
} }
} }
\ No newline at end of file
package com.test.basd.smartjunkcleaner.activity package com.test.basd.smartjunkcleaner.activity
import android.animation.Animator import android.animation.Animator
import android.content.Intent
import android.graphics.Color import android.graphics.Color
import android.media.AudioManager import android.media.AudioManager
import android.media.MediaPlayer import android.media.MediaPlayer
...@@ -15,7 +16,7 @@ import com.test.basd.smartjunkcleaner.helps.BaseActivity ...@@ -15,7 +16,7 @@ import com.test.basd.smartjunkcleaner.helps.BaseActivity
import com.test.basd.smartjunkcleaner.helps.ads.AdmobUtils import com.test.basd.smartjunkcleaner.helps.ads.AdmobUtils
class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding>() { class SpeakerCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding>() {
private val zAudio by lazy { private val zAudio by lazy {
MediaPlayer.create(this, R.raw.z) MediaPlayer.create(this, R.raw.z)
...@@ -30,8 +31,8 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding> ...@@ -30,8 +31,8 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding>
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, maxVolume, 0) audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, maxVolume, 0)
BarUtils.setStatusBarColor(this, Color.TRANSPARENT) BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight()) binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
binding.idSpeakCleanLottie.imageAssetsFolder = "speak_sjunk_clean/images/" binding.idSpeakCleanLottie.imageAssetsFolder = "speaker_sjunk_clean/images/"
binding.idSpeakCleanLottie.setAnimation("speak_sjunk_clean/data.json") binding.idSpeakCleanLottie.setAnimation("speaker_sjunk_clean/data.json")
binding.idSpeakCleanLottie.playAnimation() binding.idSpeakCleanLottie.playAnimation()
binding.root.postDelayed({ binding.root.postDelayed({
zAudio.stop() zAudio.stop()
...@@ -50,6 +51,7 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding> ...@@ -50,6 +51,7 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding>
super.onStart() super.onStart()
zAudio.start() zAudio.start()
} }
override fun onStop() { override fun onStop() {
super.onStop() super.onStop()
try { try {
...@@ -58,13 +60,13 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding> ...@@ -58,13 +60,13 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding>
zAudio.stop() zAudio.stop()
} }
} }
override fun onDestroy() { override fun onDestroy() {
super.onDestroy() super.onDestroy()
zAudio.release() zAudio.release()
} }
private fun playComplete() { private fun playComplete() {
binding.idLottieComplete.playAnimation() binding.idLottieComplete.playAnimation()
...@@ -78,7 +80,8 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding> ...@@ -78,7 +80,8 @@ class SpeakCleaningActivity : BaseActivity<ActivityLayoutSpeakerCleaningBinding>
} }
override fun onAnimationEnd(p0: Animator) { override fun onAnimationEnd(p0: Animator) {
AdmobUtils.showInterstitialAd(this@SpeakCleaningActivity) { AdmobUtils.showInterstitialAd(this@SpeakerCleaningActivity) {
startActivity(Intent(this@SpeakerCleaningActivity, SpeakerCleanerActivity::class.java))
finish() finish()
} }
......
...@@ -18,6 +18,7 @@ import com.test.basd.smartjunkcleaner.activity.NetWorkActivity ...@@ -18,6 +18,7 @@ import com.test.basd.smartjunkcleaner.activity.NetWorkActivity
import com.test.basd.smartjunkcleaner.activity.RecentAppActivity import com.test.basd.smartjunkcleaner.activity.RecentAppActivity
import com.test.basd.smartjunkcleaner.activity.ScanJunkActivity import com.test.basd.smartjunkcleaner.activity.ScanJunkActivity
import com.test.basd.smartjunkcleaner.activity.SpeakerCleanerActivity import com.test.basd.smartjunkcleaner.activity.SpeakerCleanerActivity
import com.test.basd.smartjunkcleaner.activity.SpeakerCleaningActivity
import com.test.basd.smartjunkcleaner.activity.photocompress.photo.StartCompressionPhotoActivity import com.test.basd.smartjunkcleaner.activity.photocompress.photo.StartCompressionPhotoActivity
import com.test.basd.smartjunkcleaner.databinding.FragmentLayoutHomeBinding import com.test.basd.smartjunkcleaner.databinding.FragmentLayoutHomeBinding
import com.test.basd.smartjunkcleaner.helps.BaseFragment import com.test.basd.smartjunkcleaner.helps.BaseFragment
...@@ -61,7 +62,7 @@ class HomeFragment : BaseFragment<FragmentLayoutHomeBinding>() { ...@@ -61,7 +62,7 @@ class HomeFragment : BaseFragment<FragmentLayoutHomeBinding>() {
startActivity(Intent(requireContext(), ScanJunkActivity::class.java)) startActivity(Intent(requireContext(), ScanJunkActivity::class.java))
} }
binding.idSpeakClean.setOnClickListener { binding.idSpeakClean.setOnClickListener {
startActivity(Intent(requireActivity(), SpeakerCleanerActivity::class.java)) startActivity(Intent(requireActivity(), SpeakerCleaningActivity::class.java))
} }
binding.idPhotoCompress.setOnClickListener { binding.idPhotoCompress.setOnClickListener {
startActivity(Intent(requireActivity(), StartCompressionPhotoActivity::class.java)) startActivity(Intent(requireActivity(), StartCompressionPhotoActivity::class.java))
......
...@@ -10,6 +10,7 @@ import com.test.basd.smartjunkcleaner.activity.RecentAppActivity ...@@ -10,6 +10,7 @@ import com.test.basd.smartjunkcleaner.activity.RecentAppActivity
import com.test.basd.smartjunkcleaner.activity.RepeaterdPhotoActivity import com.test.basd.smartjunkcleaner.activity.RepeaterdPhotoActivity
import com.test.basd.smartjunkcleaner.activity.ScanJunkActivity import com.test.basd.smartjunkcleaner.activity.ScanJunkActivity
import com.test.basd.smartjunkcleaner.activity.SpeakerCleanerActivity import com.test.basd.smartjunkcleaner.activity.SpeakerCleanerActivity
import com.test.basd.smartjunkcleaner.activity.SpeakerCleaningActivity
import com.test.basd.smartjunkcleaner.activity.photocompress.photo.StartCompressionPhotoActivity import com.test.basd.smartjunkcleaner.activity.photocompress.photo.StartCompressionPhotoActivity
import com.test.basd.smartjunkcleaner.adapter.ToolsAdapter import com.test.basd.smartjunkcleaner.adapter.ToolsAdapter
import com.test.basd.smartjunkcleaner.databinding.FragmentLayoutToolsBinding import com.test.basd.smartjunkcleaner.databinding.FragmentLayoutToolsBinding
...@@ -72,7 +73,7 @@ class ToolsFragment : BaseFragment<FragmentLayoutToolsBinding>() { ...@@ -72,7 +73,7 @@ class ToolsFragment : BaseFragment<FragmentLayoutToolsBinding>() {
} }
SPEAK_CLEANER -> { SPEAK_CLEANER -> {
startActivity(Intent(requireContext(), SpeakerCleanerActivity::class.java)) startActivity(Intent(requireContext(), SpeakerCleaningActivity::class.java))
} }
PHOTO_COMPRESS -> { PHOTO_COMPRESS -> {
......
...@@ -258,7 +258,7 @@ ...@@ -258,7 +258,7 @@
android:gravity="center" android:gravity="center"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@+id/id_back_network" app:layout_constraintTop_toBottomOf="@+id/id_back_network"
tools:visibility="gone"> tools:visibility="visible">
<com.airbnb.lottie.LottieAnimationView <com.airbnb.lottie.LottieAnimationView
android:id="@+id/id_lottie_network" android:id="@+id/id_lottie_network"
......
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