我正在制作一个应用程序,供个人使用,在单个活动上有多个横幅广告。 我想听所有的广告onAdLoaded()事件。 为此,我必须为每个广告添加AdListener 。 如果我有十个广告,我必须写十次相同的代码吗? 所以,我的问题是,有没有什么办法来减少像onClickListener这样的多个按钮这样的代码? 我已经尝试以按钮的onClickListener相同的方式做到这一点,但它不起作用。 我的代码的一部分: ad1.adListener = object : AdListener() { override fun onAdLoaded() { super.onAdLoaded() incrementCounter() } } ad2.adListener = object : AdListener() { override fun onAdLoaded() { super.onAdLoaded() incrementCounter() } } ad3.adListener = object : AdListener() { override fun onAdLoaded() { super.onAdLoaded() incrementCounter() } } 我必须为所有广告单元重复相同的代码。这使我的代码笨重,这是我的问题。
所以我有一个领域: private lateinit var adMobAd: RewardedVideoAd 我在onCreate()方法中初始化它: adMobAd = MobileAds.getRewardedVideoAdInstance(this) 我在onDestroy()方法中销毁: public override fun onDestroy() { adMobAd.destroy(this) super.onDestroy() } 但是当我点击按钮来加载广告,然后快速离开活动,一个广告几秒钟后显示(我在onRewardedVideoAdLoaded()回调中显示广告)。 这是非常不好的行为,特别是当广告不可跳过时。 当它完成时,它也会调用回调函数,所以当然我得到了崩溃。 另外,我使用一些调解来奖励我的视频 implementation 'com.google.ads.mediation:adcolony:3.1.2.0' implementation 'com.google.ads.mediation:tapjoy:11.11.0.0' implementation 'com.google.ads.mediation:unity:2.1.0.0' 我怎样才能防止这种情况?
java.lang.IncompatibleClassChangeError: Superclass com.google.android.gms.dynamic.zzg of com.google.android.gms.internal.zzdx is declared final (declaration of 'com.google.android.gms.internal.zzdx' appears in /data/app/io.github.basixkor.scipnet-1/split_lib_dependencies_apk.apk:classes12.dex) at com.google.android.gms.internal.zzeh.zzeO(Unknown Source) at com.google.android.gms.internal.zzey.<clinit>(Unknown Source) at com.google.android.gms.ads.AdRequest.<clinit>(Unknown Source) at com.google.android.gms.ads.AdRequest$Builder.<init>(Unknown Source) 这是通过调用AdRequest引发的堆栈跟踪。 我尝试清洁,并重建,但仍然无法正常工作。 find<AdView>(R.id.adView).loadAd(AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build()) 此代码是用于加载广告的kotlin代码。 <com.google.android.gms.ads.AdView android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_alignParentBottom="true" ads:adSize="BANNER" ads:adUnitId="@string/banner_ad_unit_id" /> 这是一个布局。 我如何解决这个错误?
我有一个与Kotlin一起写的Android项目。 我可以使用kotlin添加admob广告吗?