Commit f9a69403 authored by wanglei's avatar wanglei

...

parent 4911d0ad
# Data Recovery White
文件恢复类型应用
\ No newline at end of file
文件恢复类型应用
1.广告使用max聚合,admob的 <meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~3347511713" />也需要配置
2.max聚合,不设置为测试设备,广告id不对会崩溃
\ No newline at end of file
package com.base.datarecovery.ads.admob
import android.content.Context
import android.os.Bundle
import android.util.Log
import android.view.ViewGroup
import android.view.ViewTreeObserver
import com.base.datarecovery.help.ConfigHelper
import com.google.ads.mediation.admob.AdMobAdapter
import com.google.android.gms.ads.AdListener
import com.google.android.gms.ads.AdRequest
import com.google.android.gms.ads.AdSize
import com.google.android.gms.ads.AdView
import java.util.UUID
object AdmobBannerUtils {
private var adView: AdView? = null
private var listener: ViewTreeObserver.OnGlobalLayoutListener? = null
fun showCollapsibleBannerAd(context: Context, parent: ViewGroup) {
if (adView != null) {
adView?.destroy()
}
adView = AdView(context)
parent.removeAllViews()
parent.addView(adView)
listener = ViewTreeObserver.OnGlobalLayoutListener {
val screenPixelDensity = context.resources.displayMetrics.density
val adWidth = (parent.width / screenPixelDensity).toInt()
val adSize = AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(context, adWidth)
adView?.adUnitId = ConfigHelper.bannerAdmobId
adView?.setAdSize(adSize)
loadCollapsibleBanner()
parent.viewTreeObserver.removeOnGlobalLayoutListener(listener)
}
parent.viewTreeObserver.addOnGlobalLayoutListener(listener)
}
private fun loadCollapsibleBanner() {
val extras = Bundle()
extras.putString("collapsible", "bottom")
extras.putString("collapsible_request_id", UUID.randomUUID().toString())
val adRequest =
AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, extras).build()
adView?.adListener =
object : AdListener() {
override fun onAdLoaded() {}
}
adView?.loadAd(adRequest)
}
}
\ No newline at end of file
......@@ -15,6 +15,7 @@ import com.base.datarecovery.activity.recovery.FileScanResultActivity
import com.base.datarecovery.activity.repeat.RepeatAnimationActivity
import com.base.datarecovery.activity.screenshot.ScreenShotAnimationActivity
import com.base.datarecovery.ads.AdmobMaxHelper
import com.base.datarecovery.ads.admob.AdmobBannerUtils
import com.base.datarecovery.bean.ConstObject.SCAN_DOCUMENTS
import com.base.datarecovery.bean.ConstObject.SCAN_PHOTOS
import com.base.datarecovery.bean.ConstObject.SCAN_VIDEOS
......@@ -36,8 +37,10 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
animatorSet = createHeartbeatAnimation(binding.flScan)
val flag = (requireActivity() as MainActivity).permissionDialogShowed
if (flag) {
AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.flAd, 0)
// AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.flAd, 0)
// AdmobBannerUtils.showCollapsibleBannerAd(requireContext(), binding.flAd)
}
AdmobBannerUtils.showCollapsibleBannerAd(requireContext(), binding.flAd)
}
override fun setListener() {
......@@ -120,7 +123,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>() {
if (resumeTime != 0) {
val flag = (requireActivity() as MainActivity).permissionDialogShowed
if (flag) {
AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.flAd, 0)
// AdmobMaxHelper.admobMaxShowNativeAd(requireActivity(), binding.flAd, 0)
}
}
resumeTime++
......
......@@ -11,12 +11,13 @@ object ConfigHelper {
const val eventUrl = "https://rp.rocioxyn.xyz"
const val apiUrl = "https://api.rocioxyn.xyz"
const val admobTrueMaxFlase = false
const val admobTrueMaxFlase = true
// admob广告id
const val interAdmobId = "ca-app-pub-3940256099942544/1033173712"
const val nativeAdmobId = "ca-app-pub-3940256099942544/2247696110"
const val openAdmobId = "/6499/example/app-open"
const val bannerAdmobId = "ca-app-pub-3940256099942544/9214589741"
//max广告id
const val interAdMaxId = "aa"
......
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