4

関連する部分をマニフェストに含めました。

<meta-data android:value="123456789" android:name="ADMOB_PUBLISHER_ID" />

            <!-- Track Market installs from AdMob ads -->             
            <receiver android:name="com.admob.android.ads.analytics.InstallReceiver" android:exported="true">
                    <intent-filter>
                            <action android:name="com.android.vending.INSTALL_REFERRER" />
                    </intent-filter>
            </receiver>
            <meta-data android:value="true" android:name="ADMOB_ALLOW_LOCATION_FOR_ADS" />'

<uses-sdk android:minSdkVersion="3" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>'

例から右にコピーされた属性:

<?xml version="1.0" encoding="utf-8"?>
    <resources>
            <declare-styleable name="com.admob.android.ads.AdView">
                    <attr name="backgroundColor" format="color" />
                    <attr name="primaryTextColor" format="color" />
                    <attr name="secondaryTextColor" format="color" />
                    <attr name="keywords" format="string" />
                    <attr name="refreshInterval" format="integer" />
            </declare-styleable>
    </resources>

私のレイアウト(これはタブビューです)は、独自の行にあるテーブルです:

xmlns:app="http://schemas.android.com/apk/res/com.icukansas.lenscalculator"

<TableRow>
     <!-- Place an AdMob ad at the bottom of the screen. -->
    <!-- It has white text on a black background. -->
    <com.admob.android.ads.AdView
      android:layout_span="4"
      android:id="@+id/ad" 
      app:backgroundColor="#000000"
      app:primaryTextColor="#FFFFFF"
      app:secondaryTextColor="#CCCCCC"
      app:keywords="security"
    />
    </TableRow>

次に、次のように呼び出します。

public class myClass extends Activity implements AdListener{

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

    setContentView(R.layout.tab_thistab);

    AdView ad = (AdView) findViewById(R.id.ad);
    ad.setAdListener(this);

ログに onFailedToReceiveAd エラーが表示されるたびに。

私が見逃しているのは簡単なことだと確信しています:)

4

6 に答える 6

1

マニフェストにnetstate権限を追加するのを忘れました。

于 2011-11-09T16:01:50.110 に答える
1

これが古いことは知っていますが、テーブルレイアウトに広告を入れようとしている人には役立つと思いました. TableLayout に android:stretchColumns="0,1,2,3" を含めることで、最終的にこれが機能するようになりました。スパンが 4 以外の場合は、スパンと同じ量の列/数値を stretchColumns に入れます。

<TableLayout android:id="@+id/TableLayout01" android:stretchColumns="0,1,2,3" android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android">
于 2011-01-05T02:20:49.473 に答える
1

はい、次の2つがありません:

1.最も重要:

<meta-data android:value="a14e20856e4ad8f" android:name="ADMOB_PUBLISHER_ID" />

2.リフレッシュ間隔:

 <com.admob.android.ads.AdView     
           android:id="@+id/ad" 
           android:layout_width="fill_parent" 
           android:layout_height="wrap_content"
           myapp:backgroundColor="#000000"
           myapp:primaryTextColor="#FFFFFF"
           myapp:secondaryTextColor="#CCCCCC"
           myapp:refreshInterval="30"           
  /> 

残りは問題ないようです。

于 2010-08-09T05:46:38.967 に答える
0

こんにちはジェイソン私は解決策を持っています。クラスでこのコードを書くのに役立つかもしれません

AdManager.setTestDevices(new String[] { AdManager.TEST_EMULATOR, // Android emulator
                "5669B77A6042345BC23219DCAC6C15CA",// device id
                });
ad = (AdView) findViewById(R.id.ad);
ad.requestFreshAd();
ad.setAdListener(this);

情報タブでアプリケーションを実行した後、logcat でデバイス ID を取得し、テキストを検索できます。

エミュレータでテスト広告を取得するには、AdManager.setTestDevices を使用します... リスナーも設定します

デバイスIDを取得して貼り付けます。それ以外の場合は、以前のコードは完璧です。

于 2011-02-15T10:17:59.100 に答える
0

私は同じ問題を抱えていました-フリギンタブビュー。タブの代わりにメインアクティビティに配置すると、完全に機能しました。

于 2010-10-18T19:59:32.827 に答える
0

私はすでに3時間近く問題を試しました。私はすべてのグーグルの例に従います。最後に、私はそれを理解します。リクエストをカスタマイズすると、機能します。私の例では、Activity クラスでこれを行います。

    AdRequest re = new AdRequest();
    //re.setTesting(true);
    re.setGender(AdRequest.Gender.FEMALE); 
    adview.loadAd(re);

ここで私の例を確認できます。私は常に apk とソース コードを配置しています。ダウンロードして試すことができます:

Android アプリに Google Admob を追加する

于 2011-04-30T17:49:20.480 に答える