私はプレイヤーが死んだときに、AdMobサービス(プラグイン)を含むUnityゲームを作成しました。エディタでアプリをテストすると、すべてうまく動作します。しかし、私がAPKをアンドロイドの電話にコピーして、プレイヤーが死ぬ場所でゲームをするとクラッシュします。 Logcatを使用して私のデバイスでユニティアプリケーションがクラッシュする
は私がスローされた例外が見つかりました:私は資産を使用してみましたが
10-29 11:46:36.806 29956 29956 E AndroidRuntime: Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/ads/MobileAds;
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at com.google.unity.ads.RewardBasedVideo$1.run(RewardBasedVideo.java:65)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:746)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:95)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at android.os.Looper.loop(Looper.java:148)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5443)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.ads.MobileAds" on path: DexPathList[[zip file "/data/app/com.comp.game-1/base.apk"],nativeLibraryDirectories=[/data/app/com.comp.game-1/lib/arm, /data/app/com.comp.game-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: ... 8 more
10-29 11:46:36.806 29956 29956 E AndroidRuntime: Suppressed: java.lang.ClassNotFoundException: com.google.android.gms.ads.MobileAds
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at java.lang.Class.classForName(Native Method)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
10-29 11:46:36.806 29956 29956 E AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:504)10-29 11:46:36.806 29956 29956 E AndroidRuntime: ... 9 more
を>サービスリゾルバ> Androidのリゾルバを再生する>クライアントJARを解決します。
ただし、[クライアントJarの解決]オプションは存在しません。だから私はhereからプラグインをインストールしようとしましたが、それが表示されませんでした。
JARリゾルバを使用していない場合は、JARファイルが見つからない場合がありますが、JARリゾルバを使用しない場合は、どのJARファイルを追加するのか分かりません。
ああ、細部に言及する価値がある:私は古いバージョンのツール(tools_r25.2.5)をインストールしなければならなかった。
ありがとうございます。
多分admobのデバッグ中にリリースキーを使用しています –
https://github.com/googleads/googleads-mobile-unity/issues/549 –
ユニティのどのバージョンですか? – Mars