2011-12-20 9 views
2

AdMobを統合しようとしていますが、この行を自分のマニフェストに追加する必要がありますが、このエラーが発生しています。これは、このリンクhttp://code.google.com/mobile/ads/docs/android/fundamentals.htmlAdmobのAndroidマニフェストエラー

<activity android:name="com.google.ads.AdActivity" 
      android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/> 

error: Error: String types not allowed (at 'configChanges' with value 'keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize').

答えて

7
あなたはAPI 13に対して構築する必要があります

(アンドロイド3.2)から模範です。マニフェストにはandroid:minSdkVersionをそのまま残しますが、3.2に対してビルドする必要があります。

Eclipseでは、プロジェクト>プロパティ> Android(左側)を右クリックし、3.2を選択して[OK]をクリックします。

これで問題は発生しません。アプリは古いデバイスで正常に動作します。ただし、古いデバイスに新しいコードを使用しないように注意してください。

これを簡単にするために私が一般的に行っているのは、公開するためにエクスポートする前です。ターゲットを最小限に戻し、コンパイルエラーがないことを確認してから、3.2に戻します。

+0

申し訳ありませんが何!?あなたの返事をありがとう、これは私を驚かせてくれました。現時点では1.6を目標にしています。これは食い違いですか? – Somk

+0

Eclipseに関しては何の問題もありません。 'configChanges'の中に入る属性のいくつかは3.2で導入されました。そしてあなたの広告は表示されないので、 'configChanges'からそれらを削除することはできません。 – Jakar

+1

古いデバイスは認識できない 'configChanges'を無視しますが、コンパイルエラーです。 – Hounshell

1

私はマニフェストで次を使用します。ターゲットAndroid SDKはバージョン8です.AdMob SDK 4.1.1を使用してください。

<activity android:name="com.google.ads.AdActivity" android:configChanges="keyboardHidden|orientation|keyboard"/> 
+0

これは、Admob SDKが古くなっている可能性があることを意味します。 http://code.google.com/mobile/ads/docs/android/fundamentals.htmlにある現在のドキュメントは、「Android v3.2以上でコンパイルしていることを確認しています(default.propertiesにtargetを設定してくださいアンドロイド13に)」 – Jakar

+0

はい。現在のバージョンは4.3.1です。しかし、私はあなたがサポートされていないオプションを除外することによってそれを動作させることができると確信しています。 – Frohnzie

+0

私のアプリでそれをやろうとしましたが、広告を表示するのではなくテストデバイスでテストを実行したとき、私に必要なマニフェストオプションについて何かを伝えるメッセージが表示されました。 – Jakar

0

ここで私は適切な組み合わせを見つけたようですが、明らかにadMobはいくつかの設定が必要です。 3.2 SDKを使用してビルドしていますが、これをテストしてFYIの2.3.3で動作します。

のAndroidManifest.xml

<uses-sdk 
    android:minSdkVersion="10" 
    android:maxSdkVersion="16" 
    android:targetSdkVersion="13"/> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 

<activity android:name="com.google.ads.AdActivity" 
    android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/> 

その後、私のdefault.propertiesはproject.propertiesは、その後、あなたの<com.google.ads.AdView .../>あなたのXMLに追加

target=android-13 

を持っていた。また

target=android-10 

ている必要がありますレイアウトやコードから呼び出すと、ビジネスになるはずです。

0

あなたが最新の変更を無視し、代わりに

configChanges = 1古いを使用することができ、「キーボード| keyboardHidden |オリエンテーション」