繁体   English   中英

AndroidJavaException:java.lang.ClassNotFoundException:com.google.unity.ads.UnityInterstitialAdCallback

[英]AndroidJavaException: java.lang.ClassNotFoundException: com.google.unity.ads.UnityInterstitialAdCallback

我将 Admob 添加到我的游戏中,我的测试广告在 Unity 编辑器上完美运行,我没有收到任何错误。 但是,当我为我的 android 设备构建时,广告没有显示,我收到此行的错误消息:

java.lang.ClassNotFoundException: com.google.unity.ads.UnityInterstitialAdCallback
java.lang.Class.classForName(Native Method)
java.lang.Class.forName(Class.java:453)
com.unity3d.player.UnityPlayer.nativeRender(Native Method)
com.unity3d.player.UnityPlayer.access$300(Unknown Source:0)
com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source:95)
android.os.Handler.dispatchMessage(Handler.java:102)
android.os.Looper.loop(Looper.java:193)
com.unity3d.player.UnityPlayer$e.run(Unknown Source:20)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.unity.ads.UnityInterstitialAdCallback" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.tts.puzzle.brick.infinity-N5SeCpyddtonur1RZv9mHA==/base.apk"],nativeLibraryDirectories=[/data/app/com.tts.puzzle.brick.infinity-N5SeCpyddtonur1RZv9mHA==/lib/arm64, /data/app/com.tts.puzzle.brick.infinity-N5SeCpyddtonur1RZv9mHA==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
java.lang.ClassLoader.loadClass(ClassLoader.java:379)
java.lang.ClassLoader.loadClass(ClassLoader.java:312)
... 8 more
UnityEngine.AndroidJNISafe.CheckException () (at <00000000000000000000000000000000>:0)
UnityEngine.AndroidJNISafe.FindClass (System.String name) (at <00000000000000000000000000000000>:0)
UnityEngine.AndroidJavaClass._AndroidJavaClass (System.String className) (at <00000000000000000000000000000000>:0)
UnityEngine.AndroidJavaProxy..ctor (System.String javaInterface) (at <00000000000000000000000000000000>:0)
GoogleMobileAds.Android.InterstitialClient..ctor () (at <00000000000000000000000000000000>:0)
GoogleMobileAds.GoogleMobileAdsClientFactory.BuildInterstitialClient () (at <00000000000000000000000000000000>:0)
GoogleMobileAds.Api.InterstitialAd..ctor (System.String adUnitId) (at <00000000000000000000000000000000>:0)
EasyMobile.AdMobClientImpl+Interstitial+Instance.Load () (at <00000000000000000000000000000000>:0)
EasyMobile.AdMobClientImpl+Interstitial.Load (EasyMobile.AdPlacement placement) (at <00000000000000000000000000000000>:0)
EasyMobile.Advertising.LoadAllInterstitialAds (System.Collections.Generic.List`1[T] clients) (at <00000000000000000000000000000000>:0)
EasyMobile.Advertising+<CRAutoLoadAllAds>d__143.MoveNext () (at <00000000000000000000000000000000>:0)
UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at <00000000000000000000000000000000>:0)

您的构建中似乎缺少 class。 您是否解决了所有 android 依赖项? 签入 Assets -> Plugins -> Android googlemobileads-unity.aar 文件的文件夹。 如果此文件不存在,则执行以下操作。

尝试在 Android Resolver -> Force Resolve 中强制解析 android 依赖。 它将包含您构建中的所有文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM