EclipseのAndroidアプリにadmobを含めようとしましたが、layout.xmlでエラーが発生します。Eclipseはcom.admot.Android.ads.AdViewがバインドされていないプレフィックスであることを通知します。 pdfの指示に従って、ビルドパスにadmobライブラリが含まれていますが、それでもAdViewクラスが見つからないようです。しかしなぜですか。
エラーが発生するレイアウトは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res/renegrothmann.kalah"
Android:layout_width="wrap_content" Android:layout_height="wrap_content"
>
<renegrothmann.kalah.GameView
Android:id="@+id/gameView" Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:layout_margin="2px"
/>
<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"
/>
</LinearLayout>
このレイアウトでも同じエラーが発生しました
<RelativeLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:id="@+id/topLayout"
>
<!-- Ad Placeholder -->
<com.google.ads.AdView
Android:id="@+id/adView"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
ads:adUnitId="a14df07c16f171a"
ads:adSize="BANNER"
ads:loadAdOnCreate="true"
/>
</RelativeLayout>
それから私はそれを作りました:
<RelativeLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:ads="http://schemas.Android.com/apk/lib/com.google.ads"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:id="@+id/topLayout"
>
<!-- Ad Placeholder -->
<com.google.ads.AdView
Android:id="@+id/adView"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
ads:adUnitId="a14df07c16f171a"
ads:adSize="BANNER"
ads:loadAdOnCreate="true"
/>
</RelativeLayout>
2番目の例のRelativeLayoutの2番目のxmlns:ads="http://schemas.Android.com/apk/lib/com.google.ads"
に注意してください。
実際、Android名前空間宣言xmlns:Android="http://schemas.Android.com/apk/res/Android"
を削除すると、すべてのAndroidコンポーネントについてもうめき声が上がります。
以下を変更します
<LinearLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res/renegrothmann.kalah"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" />
沿って
<LinearLayout
xmlns:ads="http://schemas.Android.com/apk/lib/com.google.ads"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res/renegrothmann.kalah"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" />
私にとってそれは
<TableLayout
Android:id="@+id/resultsuperlotto"
xmlns:ads="http://schemas.Android.com/apk/lib/com.google.ads"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:orientation="vertical" />
乾杯!
実際には、ルート要素(または親要素)にxmlns:ads
を追加する必要はありません。
次のように、xmlns:ads
プロパティをAdView
要素に追加するだけです。
<com.google.Android.gms.ads.AdView
xmlns:ads="http://schemas.Android.com/apk/res-auto"
...>
</com.google.Android.gms.ads.AdView>
チェック このページ 。
プロジェクトを右クリックし、[プロパティ]、[Android]の順にクリックし、[ライブラリ]パネルの[追加]ボタンをクリックして、プロジェクトの下にgoogle-play-services_libライブラリとappcompat_v7ライブラリの両方を適用、更新、クリーンアップします。
これが機能しない場合は、次のことを試してください。
これがうまくいくことを願っています。
おそらく、下部の「myapp」を「app」に置き換えるか、上部の「xmlns:app」を「xmlns:myapp」に置き換える必要があります。それらはおそらく同じであるはずです。
実際にはわからないので、本当の答えを提供することはできません。私がしたこと:私は新しいプロジェクトで再開しました。時々、あなたは単に1つの間違ったステップを踏みます!