1

Facebook の Audience Networkからの広告を使用して、アプリで多くのクラッシュが発生しました。レポートは次のとおりです。

NullPointerException (@FBInterstitial:InitInterstitialAd:-1) {Thread:main Exception:java.lang.NullPointerException at android.webkit.WebSettingsClassic.getDefaultUserAgentForLocale(WebSettingsClassic.java:453) at android.webkit.WebViewClassic$Factory.getDefaultUserAgent(WebViewClassic.java) :1503) android.webkit.WebSettings.getDefaultUserAgent(WebSettings.java:1280) com.facebook.ads.asa(不明なソース) com.facebook.ads.asa(不明なソース) com.facebook.ads.aj (不明なソース) com.facebook.ads.akb (不明なソース) com.facebook.ads.InterstitialAd.loadAd (不明なソース)

facebook InterstitialAd のインスタンスで発生しmInterstitialAd.show(); 、 クラスの show() メソッドを呼び出します。mInterstitialAdInterstitialAd

mInterstitialAdasのnull可能性もチェックしました

  if (mInterstitialAd != null && mInterstitialAd.isAdLoaded()) {
      mInterstitialAd.show();
    }

新しい広告を表示しようとすると、エラー プロンプトが表示されます。このエラーが発生した人は、それを解決する方法を知っていますか?

注:ファイルを使用しています。AudienceNetwork.jarログから、パッケージ(jarファイルで利用可能)にあるaクラスのメソッドs(以下のコードを参照)にエラーがあるようです。com.facebook.ads.a

  // IntelliJ API Decompiler stub source generated from a class file
  // Implementation of methods is not available

package com.facebook.ads.a;

public class s {
    private static java.lang.String a;

    public static void a(android.webkit.WebView webView, android.webkit.WebViewClient webViewClient, com.facebook.ads.a.r r) { /* compiled code */ }

    public static void a(android.webkit.WebView webView) { /* compiled code */ }

    public static java.lang.String a() { /* compiled code */ }

    public static java.lang.String a(android.content.Context context, com.facebook.ads.a.o o) { /* compiled code */ }

    private static java.lang.String a(android.content.Context context, java.lang.String s, java.lang.String s1) { /* compiled code */ }

    @android.annotation.TargetApi(17)
    private static java.lang.String a(android.content.Context context) { /* compiled code */ }
}

編集 次のように初期化します

mInterstitialAd = new InterstitialAd(mContext, "FaceBookPlacementID");
mInterstitialAd.setAdListener(this);
mInterstitialAd.loadAd();
4

1 に答える 1

1

この問題とよく似ています: https://groups.google.com/forum/#!topic/google-admob-ads-sdk/SX9yb3F_PNk

しかし、別の方法で UA を取得するためのフォールバックを持つ try/catch で、SDK からの呼び出しを囲むことができます。明日、ホットフィックスを出します。4.1.1 でまだ問題が発生する場合は、ご報告ください。

于 2015-05-06T00:13:04.187 に答える