Как решить эту ошибку 'com.google.ads.mediation.admob.AdMobAdapter не может быть приведен к com.google.android.gms.ads.mediation.m '?

Я использую Firebase адаптер в моем проекте, теперь я интегрирую admob для вознагражденного объявления, он работает нормально, но каждое видео после завершения будет выдавать следующую ошибку...

  java.lang.ClassCastException: com.google.ads.mediation.admob.AdMobAdapter cannot be cast to com.google.android.gms.ads.mediation.m
    at com.google.android.gms.ads.internal.mediation.client.y.a(:com.google.android.gms.dynamite_dynamitemodulesa@12685008@12.6.85 (020306-197041431):262)
    at com.google.android.gms.ads.internal.reward.c.b(:com.google.android.gms.dynamite_dynamitemodulesa@12685008@12.6.85 (020306-197041431):54)
    at com.google.android.gms.ads.internal.reward.client.e.onTransact(:com.google.android.gms.dynamite_dynamitemodulesa@12685008@12.6.85 (020306-197041431):56)
    at android.os.Binder.transact(Binder.java:380)
    at com.google.android.gms.internal.ads.zzej.transactAndReadExceptionReturnVoid(Unknown Source)
    at com.google.android.gms.internal.ads.zzahb.zze(Unknown Source)
    at com.google.android.gms.internal.ads.zzahm.resume(Unknown Source)
    at com.mopub.mobileads.GooglePlayServicesRewardedVideo$1.onResume(GooglePlayServicesRewardedVideo.java:84)
    at com.mopub.common.MoPubLifecycleManager.onResume(MoPubLifecycleManager.java:83)
    at com.mopub.common.MoPub.onResume(MoPub.java:257)
    at com.coderays.realquiz.RealQuizDashBoard.onResume(RealQuizDashBoard.java:956)
    at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1280)
    at android.app.Activity.performResume(Activity.java:6096)
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3011)
    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3063)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1361)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:135)
    at android.app.ActivityThread.main(ActivityThread.java:5343)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700)

Я попробую этот метод /questions/16321561/sboj-pri-vozobnovlenii-admob-rewardedvideoad/16321566#16321566 но все равно выдаю эту ошибку.

мой gradle это..

dependencies {
     implementation('com.mopub:mopub-sdk-interstitial:5.0.0@aar') {
     transitive = true
      }
    // For rewarded videos. This will automatically also include interstitials
     implementation('com.mopub:mopub-sdk-rewardedvideo:5.0.0@aar') {
     transitive = true
      }
     implementation 'com.google.firebase:firebase-core:16.0.0'
     implementation 'com.google.firebase:firebase-ads:15.0.1'
  }

Какой из них изменить, пожалуйста, дайте мне решение, ищу еще 3 дня, но никаких улучшений.

Заранее спасибо...

1 ответ

Спасибо, ошибка будет исправлена ​​через долгое время.

Шаг 1: я удаляю свой класс адаптера GooglePlayServicesRewardedVideo.java от com.mopub.mobileads(если вы используете GooglePlayServicesInterstitial.java пожалуйста, удалите).

Шаг 2: затем поместите опосредованный sdk admob в build.gradle, т.е. implementation 'com.mopub.mediation:admob:15.0.0.8',

Шаг 3: затем удалите следующие строки в вашем вознагражденном просмотре.

public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   MoPubRewardedVideos.initializeRewardedVideo(this);
   MoPub.onCreate(this); // remove 
   // ...
}

@Override
public void onPause() {
    super.onPause();
    MoPub.onPause(this); // remove 
}

@Override
public void onResume() {
    super.onResume();
    MoPub.onResume(this);  // remove 
}

// The following methods are required for Chartboost rewarded video mediation
@Override
public void onStart() {
    super.onStart();
    MoPub.onStart(this); // remove 
}

@Override
public void onRestart() {
    super.onRestart();
    MoPub.onRestart(this); // remove 
}

@Override
public void onStop() {
    super.onStop();
    MoPub.onStop(this); // remove 
}

@Override
public void onDestroy() {
    super.onDestroy();
    MoPub.onDestroy(this); // remove 
}

@Override
public void onBackPressed() {
    super.onBackPressed();
    MoPub.onBackPressed(this); // remove 
  }
}

Шаг 4: синхронизируй свой проект и возьми сборку. Работает нормально без ошибок.

Благодарю.

Другие вопросы по тегам