海への応用--AdMob

前書き

Google AdMobは現在、世界最大のモバイルAPP広告プラットフォームです。アプリケーションで広告を掲載する必要のあるアプリケーション開発者や広告主に開放されており、ビジネスチャンスを模索し、ブランドを構築し、モバイル端末で収益を実現するためのソリューションを提供します。

実際には、アプリ、ゲームページ、ウェブページに広告を表示するためのプラットフォームです。

広告タイプの違い

バナー広告
は小さな領域を占め、AdViewが読み込まれ、webViewによって内部的に実装されます。ロード後、自動的にアドバタイズし、クリックして対応するマーケットまたはWebページにジャンプします。
バナー広告
インタースティシャル広告
フルスクリーンで表示される広告。写真や動画の場合があります。内部には、ウェブビューのリワード
ここに画像の説明を挿入
ビデオ広告があります。
フルスクリーンでビデオを再生します。リワードの時点とリワード値をバックグラウンドで構成し、監視中にコールバックを受信して​​、対応するビジネス処理を実行できます。通常、仮想通貨の報酬やビデオのロック解除などのシナリオで使用されます。これは、
ここに画像の説明を挿入
ネイティブ広告を実装するWebビューでもあり
ます。前のいくつかとの違いは、このタイプの広告リクエストは、リクエストが成功した後に自動的に読み込まれるのではなく、レイアウトが広告コンテンツを表示する方法を定義する開発者に広告情報を返すことです。
広告コンテンツの背景で、ビデオと写真の一方または両方を選択できます。
ここに画像の説明を挿入

アクセス

アクセスに関する問題はそれほど多くありません。公式ウェブサイトのドキュメントに従って、ステップバイステップでアクセスしてください。
公式ウェブサイトアクセスドキュメント-> ドキュメントアドレス

  1. gradleまたはjarパッケージ経由sdkをインポートする
  2. 申し込み(パッケージ名)、広告ユニットの申し込み、unitIdを生成します、表示される各広告は、unitIdに対応している必要があります。もちろん、同じIDを使用することもできますが、クリックスルー率と収益を特定の場所の広告と区別することはできません。
  3. 古いバージョン:アプリケーション内初期化(appIdを使用します)。新しいバージョン:AndroidManifest.xmlで構成します
  4. 広告表示布を設置するビューロー(xml構成またはjava生成)。注:バナーアドバタイズメント:unitIdとAdSizeは、xmlまたはコードで同時に設定する必要があります。サイズはxmlで設定できず、unitIdはコードで設定されます。
  5. unitIdを設定し、広告をリクエストする
  6. 広告を表示
  7. モニター必要なイベント(ロードの失敗、成功、クリック、閉じる、ジャンプなど)

注意点

ネイティブ広告の読み込みは自動的には読み込まれませんが、各フィールドの意味、クリックイベントの取得方法、ジャンプ方法などを説明する詳細なドキュメントはありません。公式デモを参照できます。
デモアドレスを参照してください。

ピットガイド

海外でも人気があるため、中国ではこの図書館を受け入れる人は少なく、ゆっくりと足を踏み入れるピットもかなりあります。

一、ロードに失敗しました、errorCode = 3

この問題にはかなりの数の遭遇があります。おおよそ2つの理由があります。

  1. 登録したばかりのユニットID
  2. リクエストは成功しましたが、返品するのに十分な在庫がありません

また、携帯電話が壁をひっくり返さなかったため、コードが3に戻ったことがわかりました。壁をひっくり返した直後は正常に表示されていましたが、壁をひっくり返さなくても取得できることがはっきりとわかりました。

さらに、onLoadFailedメソッドのerrCodeに対応して、公式Webサイトにそれを説明するドキュメントがあり、ドキュメントに従って対応する原因を見つけることができます。
リンク—> 対応するコードエンコーディング
例は次のとおりです。

タイプ コード 理由
int ERROR_CODE_NO_FILL 広告リクエストは成功しましたが、広告在庫がないため、広告は返されませんでした。
int ERROR_CODE_INTERNAL_ERROR 内部で何かが発生しました。たとえば、広告サーバーから無効な応答を受け取りました。


この問題を解決する解決策はまったくない感じています。最初はこの問題に半か月間取り組みました。unitIdをテストしましたが、すべて正常でした。公式IDに切り取ったときにエラーが発生しました。さまざまなドキュメントを読んでも結果が見つかりませんでした。その後、プランBを作成してオンラインにしました。オンラインにするだけで、広告は正常に読み込まれます。

2つ目は、正常に読み込まれた後、AdViewが表示されないことです。

バナー広告が表示されないという問題が発生しました。読み込みに失敗したと思います。監視の結果、読み込みは成功しましたが、表示されませんでした。
理由
1googlePlayサービスがADMobに遭遇すると、激しい衝突の後、そのようなバグが発生します。AdViewがロードされた後、表示を自動的に更新することはできません。次回再描画されるまで待つ必要があります。今回は60秒なので、リソースの取得は成功します。表示されません。
この問題の場合、admobをインポートする方法はapi 'com.google.android.gms.play-services-ads:8.1.0'、play-servicesを介してインポートするのではなく、個別にインポートするようにadmobライブラリに変更した場合、そのような問題は発生しません。
解決策:コールバックメソッドonLoadAd()で、手動で再描画をトリガーします。setBackground()、layout()、その他のメソッドなど

理由2
実際の開発では、AdSizeの設定に関連する状況があり、ロードは正常に実行されますが、表示されません。
公式サイトのドキュメントには、AdSizeの設定ミスによる表示異常の説明があります。

注:バナー広告コンテナのサイズは、少なくともバナー広告と同じ大きさである必要があります。コンテナに内側の余白がある場合は、コンテナのサイズを効果的に縮小します。コンテナがバナー広告を収容できない場合、バナー広告は表示されず、次の警告がログに表示されます。
広告あり:広告を表示するのに十分なスペースがありません。320x50dpが必要ですが、288x495dpしかありません。

公式ウェブサイトにはSMART_BANNERと呼ばれるAdSizeのタイプがあります。公式ウェブサイトでは、縦、横、大画面にインテリジェントに適応して幅と高さを適応的に変更すると説明しています。とてもスマートなので、このサイズに設定しました。結果が読み込まれず、表示できないことがよくあります。次のように置き換えてください。 BANNERの直後は正常です。
解決策:公式サイズを使用してみてください。幅と高さを自分で設定する場合は、広告に対応できるように注意してください。

3つのネイティブ広告ビデオ関連

バックグラウンドでネイティブ広告が選択されている場合、確認できる広告には2つのタイプがあります。

  • 画像
  • 映画

再生モニタリング
多くのシナリオで、製品はビデオ広告の使用を提案します。ユーザーに何かを見たり、特定のコンテンツのロックを解除した後、ネイティブ広告のビデオ再生モニタリングは異なりますが、モニタリングを使用する必要があります。次の設定が必要です。

NativeADオブジェクトを取得した後、VideoControllerオブジェクトを取得し、次の方法で監視します。

VideoController vc = nativeAd.getVideoController();
vc.setVideoLifecycleCallbacks(new VideoController.VideoLifecycleCallbacks() {
    @Override
    public void onVideoPlay() {
        super.onVideoPlay();
        isStartPlay = true;
    }

    @Override
    public void onVideoEnd() {
        super.onVideoEnd();
        isPlayEnd = true;
    }
    //其他回调方法
    ...
});

再生設定
無音で再生するかどうかについては、次のように設定できます。

VideoOptions videoOptions = new VideoOptions.Builder()
        //设置不静音播放,默认静音
        .setStartMuted(false)
        //设置是否点击展开全屏,默认否
        .setClickToExpandRequested(true)
        .build();

最後に、AdLoaderを構築する過程で、オプションを追加します。

.withNativeAdOptions(new NativeAdOptions.Builder()
        //设置的配置
        .setVideoOptions(videoOptions)
        .build())
.build()

広告ソースの問題
バックグラウンドでビデオをチェックするだけで、それらがすべてビデオ広告であることを認識したい場合は、多くの問題発生します。それはまだ多くのイメージ広告を公開しているからです。
考えられる理由1:googleのフィルタリングに問題があり、チェックしても意味がありません

考えられる理由2:広告主は、配置されたときに明らかに写真である可能性があり、ビデオタイプでキャストする必要があります。そうすると、ロードする生と死は単なる写真になります。

4.将来はゆっくりと記入してください

おすすめ

転載: blog.csdn.net/lizebin_bin/article/details/89710358