こちらの手順に従って、動作している Android アプリに AdMob 広告を挿入しています。アプリには 2 つのアクティビティがあります。そのうちの 1 つは、最初からのみ到達可能です。現在、この 2 番目のアクティビティに広告を追加しています。AdView
メソッドでプログラムを使用して作成するonCreate
ことと、アクティビティの XML レイアウト ファイルに適切なコードを追加することの両方を試みました。どちらの場合も、アクティビティは 2 番目のアクティビティを終了し、広告 (またはネットワーク経由で少なくとも一部の広告データ) を受信するとすぐに [戻る] ボタンが押されたかのように最初のアクティビティに移動します。追加リクエストを行わないようにコードを変更した場合 (プログラムで広告を追加しても、呼び出しを行わない場合でもloadAd
)、またはネットワーク アクセスをオフにすると、広告は表示されませんが、アクティビティも終了しません。何が原因でしょうか?
ここですべての(時代遅れだと思う)手順を実行しましたが、それは役に立ちません。私が何か間違ったことをした場合に備えて明確にするために、私は持っています:
- 少なくとも先週の金曜日の時点で、最新の Android および AdMob SDK をダウンロードしました。
- default.properties(うまくいかなかったので、プロジェクトのルートに作成する必要がありました)とproject.properties(プロジェクトが実際に使用していると思います)に「target = android-17」を設定します。
- AndroidManifest.xml で「android:minSdkVersion="3"」を設定します。
- ライブラリをプロジェクトに追加しました (GoogleAdMobAdsSdk-6.2.1.jar をプロジェクト ルートの libs ディレクトリに配置)。
- ここ
com.google.ads.AdActivity
からコピーしたを AndroidManifest.xml に追加しました。 - AndroidManifest.xml にパーミッションを追加し、同じ場所から再度コピーしました。
- ここからコードと XML タグ (および属性) の両方をコピーし、それらをプロジェクトに追加しました (MY_AD_UNIT_ID を発行者 ID に置き換えます)。ただし、エミュレーターをテスト デバイスにするためにコードで要求を分割しました。
- 広告スタイルを含む attrs.xml を追加しました。これは時代遅れのアドバイスだと確信していますが、とにかくそうしました。に変更しましたが、この質問のものを使用しました。
com.admob.android.ads.AdView
com.google.ads
あなたが私を助けようとするなら、次にあなたが知りたいと思うと思うのは、LogCat が何を言っているのかということです。あまりない:
09-02 14:33:34.861: I/Ads(12839): adRequestUrlHtml: <html><head><script src="http://media.admob.com/sdk-core-v40.js"></script><script>AFMA_getSdkConstants();AFMA_buildAdURL({"msid":"com.Package.Name","hl":"en","bas_off":0,"simulator":1,"preqs":0,"slotname":"a150cbaa53d9d3d","js":"afma-sdk-a-v6.2.1","isu":"B3EEABB8EE11C2BE770B684D95219ECB","u_audio":4,"cap":"m,a","cipa":0,"u_sd":1.5,"net":"ed","u_h":533,"oar":0,"session_id":"4834854664722735718","seq_num":"1","app_name":"1.android.com.Package.Name","bas_on":0,"kw":[],"u_w":320,"gnt":3,"adtest":"on","format":"320x50_mb","carrier":"310260","ad_pos":{"visible":0,"width":0,"height":0,"x":0,"y":0},"ptime":0});</script></head><body></body></html>
09-02 14:33:35.111: D/dalvikvm(12839): GC freed 8784 objects / 437720 bytes in 64ms
09-02 14:33:37.101: I/Ads(12839): Received ad url: <url: "http://googleads.g.doubleclick.net:80/mads/gma?msid=com.Package.Name&hl=en&bas_off=0&preqs=0&js=afma-sdk-a-v6.2.1&isu=B3EEABB8EE11C2BE770B684D95219ECB&u_audio=4&cap=m%2Ca&cipa=0&u_sd=1.5&net=ed&u_h=533&oar=0&session_id=4834854664722735718&seq_num=1&app_name=1.android.com.Package.Name&bas_on=0&kw&u_w=320&gnt=3&adtest=on&format=320x50_mb&carrier=310260&ptime=0&u_so=p&output=html®ion=mobile_app&u_tz=0&client_sdk=1&ex=1&slotname=a14e8f77524dde8&kw_type=broad&gsb=3g&caps=interactiveVideo_th_autoplay_mediation_sdkAdmobApiForAds_di&jsv=41" type: "admob" afmaNotifyDt: "null" useWebViewLoadUrl: "false">
09-02 14:33:37.111: I/Ads(12839): Request scenario: Online server request.
09-02 14:33:38.061: I/jdwp(12861): received file descriptor 10 from ADB
09-02 14:33:38.091: D/ddm-heap(12861): Got feature list request
編集: あまり役に立たないと思いますが、suleman khan のリクエストにより、現在の XML がここにあります
<com.google.ads.AdView android:layout_width="wrap_content"
android:layout_height="wrap_content" ads:adUnitId="a150cbaa53d9d3d"
ads:adSize="SMART_BANNER" android:id="@+id/adView" ads:refreshInterval="60"
ads:testDevices="TEST_EMULATOR"
ads:loadAdOnCreate="true" />
私はこれの多くのバリエーションを試しましたが、成功しませんでした.