Commit c0b5e137 authored by leichao.gao's avatar leichao.gao

Merge remote-tracking branch 'origin/master'

parents 23173122 22d9e001
...@@ -9,10 +9,12 @@ import androidx.lifecycle.lifecycleScope ...@@ -9,10 +9,12 @@ import androidx.lifecycle.lifecycleScope
import com.base.datarecovery.adapter.MediaAdapter import com.base.datarecovery.adapter.MediaAdapter
import com.base.datarecovery.adapter.MediaSubAdapter import com.base.datarecovery.adapter.MediaSubAdapter
import com.base.datarecovery.ads.AdmobInterstitialUtils import com.base.datarecovery.ads.AdmobInterstitialUtils
import com.base.datarecovery.ads.AdmobNativeUtils
import com.base.datarecovery.bean.MediaBean import com.base.datarecovery.bean.MediaBean
import com.base.datarecovery.bean.MediaTimeBean import com.base.datarecovery.bean.MediaTimeBean
import com.base.datarecovery.databinding.ActivityRepeatBinding import com.base.datarecovery.databinding.ActivityRepeatBinding
import com.base.datarecovery.help.BaseActivity import com.base.datarecovery.help.BaseActivity
import com.base.datarecovery.help.ConfigHelper
import com.base.datarecovery.help.KotlinExt.toFormatSize import com.base.datarecovery.help.KotlinExt.toFormatSize
import com.base.datarecovery.help.KotlinExt.toFormatTime import com.base.datarecovery.help.KotlinExt.toFormatTime
import com.base.datarecovery.help.MediaStoreHelp.getImageMedia import com.base.datarecovery.help.MediaStoreHelp.getImageMedia
...@@ -119,6 +121,9 @@ class RepeatActivity : BaseActivity<ActivityRepeatBinding>() { ...@@ -119,6 +121,9 @@ class RepeatActivity : BaseActivity<ActivityRepeatBinding>() {
launch(Dispatchers.Main) { launch(Dispatchers.Main) {
binding.progressBar.visibility = View.GONE binding.progressBar.visibility = View.GONE
mediaAdapter.setData(beanList) mediaAdapter.setData(beanList)
if (beanList.sumOf { it.beans.size } > 6 || ConfigHelper.mustShowNativeAd) {
AdmobNativeUtils.showNativeAd(this@RepeatActivity, binding.flAd)
}
} }
} }
......
...@@ -6,6 +6,7 @@ import android.graphics.Color ...@@ -6,6 +6,7 @@ import android.graphics.Color
import androidx.activity.OnBackPressedCallback import androidx.activity.OnBackPressedCallback
import androidx.core.content.ContentProviderCompat.requireContext import androidx.core.content.ContentProviderCompat.requireContext
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.datarecovery.R
import com.base.datarecovery.activity.junkclean.ScanJunkActivity import com.base.datarecovery.activity.junkclean.ScanJunkActivity
import com.base.datarecovery.activity.privacyspace.PrivacyPinOneActivity import com.base.datarecovery.activity.privacyspace.PrivacyPinOneActivity
import com.base.datarecovery.activity.privacyspace.PrivacySpaceActivity import com.base.datarecovery.activity.privacyspace.PrivacySpaceActivity
...@@ -123,7 +124,7 @@ class ResultActivity : BaseActivity<ActivityLayoutResultBinding>() { ...@@ -123,7 +124,7 @@ class ResultActivity : BaseActivity<ActivityLayoutResultBinding>() {
onBackPressedDispatcher.onBackPressed() onBackPressedDispatcher.onBackPressed()
} }
AdmobNativeUtils.showNativeAd(this@ResultActivity, binding.flAd) AdmobNativeUtils.showNativeAd(this@ResultActivity, binding.flAd, R.layout.layout_native_custom_white)
} }
override fun onDestroy() { override fun onDestroy() {
......
...@@ -8,10 +8,12 @@ import androidx.core.view.updatePadding ...@@ -8,10 +8,12 @@ import androidx.core.view.updatePadding
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import com.base.datarecovery.adapter.ScreenShotAdapter import com.base.datarecovery.adapter.ScreenShotAdapter
import com.base.datarecovery.ads.AdmobInterstitialUtils import com.base.datarecovery.ads.AdmobInterstitialUtils
import com.base.datarecovery.ads.AdmobNativeUtils
import com.base.datarecovery.bean.ScreenPhotoBean import com.base.datarecovery.bean.ScreenPhotoBean
import com.base.datarecovery.bean.ScreenshotBean import com.base.datarecovery.bean.ScreenshotBean
import com.base.datarecovery.databinding.ActivityScreenShotBinding import com.base.datarecovery.databinding.ActivityScreenShotBinding
import com.base.datarecovery.help.BaseActivity import com.base.datarecovery.help.BaseActivity
import com.base.datarecovery.help.ConfigHelper
import com.base.datarecovery.help.FileHelp import com.base.datarecovery.help.FileHelp
import com.base.datarecovery.help.KotlinExt.toFormatSize import com.base.datarecovery.help.KotlinExt.toFormatSize
import com.base.datarecovery.help.PermissionHelp.checkStorePermission import com.base.datarecovery.help.PermissionHelp.checkStorePermission
...@@ -84,6 +86,9 @@ class ScreenShotActivity : BaseActivity<ActivityScreenShotBinding>() { ...@@ -84,6 +86,9 @@ class ScreenShotActivity : BaseActivity<ActivityScreenShotBinding>() {
val sizeF = size.toFormatSize().split(" ") val sizeF = size.toFormatSize().split(" ")
binding.tvSize.text = sizeF[0] binding.tvSize.text = sizeF[0]
binding.tvUnit.text = sizeF[1] binding.tvUnit.text = sizeF[1]
if (list.sumOf { it.screenPhotoBean.size } > 6 || ConfigHelper.mustShowNativeAd) {
AdmobNativeUtils.showNativeAd(this@ScreenShotActivity, binding.flAd)
}
} }
} }
......
...@@ -25,7 +25,6 @@ import com.base.datarecovery.view.DialogViews.showGerPermission ...@@ -25,7 +25,6 @@ import com.base.datarecovery.view.DialogViews.showGerPermission
import com.base.datarecovery.view.FileScanDialog import com.base.datarecovery.view.FileScanDialog
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.channels.BufferOverflow import kotlinx.coroutines.channels.BufferOverflow
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.SharedFlow import kotlinx.coroutines.flow.SharedFlow
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
...@@ -127,8 +126,9 @@ class FileScanActivity : BaseActivity<ActivityFileScanBinding>() { ...@@ -127,8 +126,9 @@ class FileScanActivity : BaseActivity<ActivityFileScanBinding>() {
pathList.add(file.absolutePath) pathList.add(file.absolutePath)
if (!oneShowAd) { if (!oneShowAd) {
oneShowAd = true oneShowAd = true
dialogClass.scanShowUI()
lifecycleScope.launch(Dispatchers.Main) { lifecycleScope.launch(Dispatchers.Main) {
AdmobInterstitialUtils.showInterstitialAd(this@FileScanActivity,true,false) { } AdmobInterstitialUtils.showInterstitialAd(this@FileScanActivity, true, false) { }
} }
} }
}, },
...@@ -136,7 +136,7 @@ class FileScanActivity : BaseActivity<ActivityFileScanBinding>() { ...@@ -136,7 +136,7 @@ class FileScanActivity : BaseActivity<ActivityFileScanBinding>() {
if (pathList.isEmpty()) { if (pathList.isEmpty()) {
scanDialog.dismiss() scanDialog.dismiss()
binding.ivIcon.setImageResource(R.mipmap.queshengye) binding.ivIcon.setImageResource(R.mipmap.queshengye)
binding.tvBtn.text = "Finish" binding.tvBtn.text = "Finished"
binding.tvBtn.setOnClickListener { binding.tvBtn.setOnClickListener {
onBackPressedDispatcher.onBackPressed() onBackPressedDispatcher.onBackPressed()
} }
......
...@@ -16,6 +16,9 @@ object ConfigHelper { ...@@ -16,6 +16,9 @@ object ConfigHelper {
const val nativeAdmobId = "ca-app-pub-3940256099942544/2247696110" const val nativeAdmobId = "ca-app-pub-3940256099942544/2247696110"
const val openAdmobId = "/6499/example/app-open" const val openAdmobId = "/6499/example/app-open"
//一定展示大图广告
var mustShowNativeAd: Boolean = false
// 正式包名 // 正式包名
const val packageName = "com.kuke.photosrecovery.allrecovery.acbcali" const val packageName = "com.kuke.photosrecovery.allrecovery.acbcali"
......
...@@ -31,8 +31,6 @@ class FileScanDialog( ...@@ -31,8 +31,6 @@ class FileScanDialog(
sharedFlow: SharedFlow<String>, sharedFlow: SharedFlow<String>,
foundFlow: SharedFlow<Int> foundFlow: SharedFlow<Int>
): AlertDialog { ): AlertDialog {
dialog?.setView(binding.root) dialog?.setView(binding.root)
dialog?.setCanceledOnTouchOutside(false) dialog?.setCanceledOnTouchOutside(false)
dialog?.setCancelable(false) dialog?.setCancelable(false)
...@@ -80,7 +78,7 @@ class FileScanDialog( ...@@ -80,7 +78,7 @@ class FileScanDialog(
a1.cancel() a1.cancel()
binding.tvBtn.visibility = View.VISIBLE binding.tvBtn.visibility = View.VISIBLE
binding.iv.visibility = View.GONE binding.iv.visibility = View.GONE
binding.tvPath.visibility=View.GONE binding.tvPath.visibility = View.GONE
binding.tvTitle.text = "Scan Completed" binding.tvTitle.text = "Scan Completed"
binding.tvBtn.setOnClickListener { binding.tvBtn.setOnClickListener {
activity.startActivity(Intent(activity, FileScanResultActivity::class.java).apply { activity.startActivity(Intent(activity, FileScanResultActivity::class.java).apply {
...@@ -90,4 +88,8 @@ class FileScanDialog( ...@@ -90,4 +88,8 @@ class FileScanDialog(
activity.finish() activity.finish()
} }
} }
fun scanShowUI() {
binding.tvPath.visibility = View.VISIBLE
}
} }
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#1B1B1B" /> <solid android:color="#FF8A00" />
<corners android:radius="10dp" /> <corners android:radius="10dp" />
</shape> </shape>
\ No newline at end of file
...@@ -115,6 +115,10 @@ ...@@ -115,6 +115,10 @@
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<FrameLayout
android:id="@+id/fl_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<FrameLayout <FrameLayout
android:layout_width="match_parent" android:layout_width="match_parent"
......
...@@ -115,6 +115,11 @@ ...@@ -115,6 +115,11 @@
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<FrameLayout
android:id="@+id/fl_ad"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<androidx.recyclerview.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv" android:id="@+id/rv"
android:layout_width="match_parent" android:layout_width="match_parent"
......
...@@ -46,22 +46,23 @@ ...@@ -46,22 +46,23 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="5dp" android:layout_marginVertical="5dp"
android:text="Found 0 files"
android:textColor="#333333" android:textColor="#333333"
android:textSize="15sp" android:textSize="15sp"
tools:text="Found 100 files" /> tools:ignore="HardcodedText" />
<TextView <TextView
android:id="@+id/tv_path" android:id="@+id/tv_path"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginHorizontal="15dp" android:layout_marginHorizontal="15dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="25dp" android:layout_marginBottom="25dp"
android:ellipsize="middle" android:ellipsize="middle"
android:singleLine="true" android:singleLine="true"
android:textColor="#666666" android:textColor="#666666"
android:textSize="12sp" /> android:textSize="12sp"
android:visibility="gone" />
<FrameLayout <FrameLayout
android:id="@+id/fl_ad" android:id="@+id/fl_ad"
......
<com.google.android.gms.ads.nativead.NativeAdView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/white"
android:baselineAligned="false">
<com.google.android.gms.ads.nativead.MediaView
android:id="@+id/ad_media"
android:layout_width="91dp"
android:layout_height="91dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="5dp" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginHorizontal="8dp"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:id="@+id/ad_headline"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="2"
android:textColor="@color/black"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="#FF923E"
android:padding="2dp"
android:text="Ad"
android:textColor="@color/white"
android:textSize="12sp"
tools:ignore="HardcodedText" />
<TextView
android:id="@+id/ad_body"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginEnd="10dp"
android:ellipsize="end"
android:maxLines="2"
android:textColor="@color/black"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="5dp">
<ImageView
android:id="@+id/ad_app_icon"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_gravity="center_vertical"
tools:ignore="ContentDescription" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/ad_call_to_action"
android:layout_width="match_parent"
android:layout_height="26dp"
android:layout_gravity="center_vertical"
android:layout_marginHorizontal="12dp"
android:background="@drawable/bg_ad_button"
android:gravity="center"
android:textColor="@color/white"
android:textSize="15sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</com.google.android.gms.ads.nativead.NativeAdView>
\ No newline at end of file
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