Я пытался внедрить функциональность AdMob в свой проект и продолжал сталкиваться с кирпичной стеной. Я исследовал в Интернете и принял к сведению аналогичные проблемы, с которыми сталкиваются другие пользователи, вместе с их решениями, но я, кажется, зашел так далеко, а потом не могу вполне заставить его работать. Я надеюсь, что кто-то сможет указать на какую-то глупую ошибку с моей стороны!
Кстати, я тестирую HTC Desire (Bravo) под управлением Android 2.3.3 и использую последнюю версию AdMob SDK (4.3.1).
Я могу видеть из своей учетной записи AdMob, что сервер видит запросы на рекламу, но объект Ad в моем приложении продолжает указывать, что мне нужно объявить AdActivity в моем манифесте вместе с параметрами configChange. Оба из которых есть!
Любая помощь будет высоко ценится. Ниже приведены связанные (разложенные) части моего кода;
=================== AndroidManifest.xml ===================== ===========
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="<my package name>"
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:debuggable="false">
<activity
android:label="@string/app_name"
android:name=".MainActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- AdMob stuff -->
<activity android:name="com.google.ads.AdActivity"
android:configChanges="orientation|keyboard|keyboardHidden"/>
</application>
</manifest>
====================== MainActivity.java =================== ==============
package my.package.name;
import com.google.ads.AdRequest;
import com.google.ads.AdView;
public class MainActivity extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.choice_layout_main);
AdView adView = (AdView) this.findViewById(R.id.adView);
AdRequest adRequest = new AdRequest();
adView.loadAd(adRequest);
}
}
================ choice_layout_main.xml ======================== =====
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/background_main"
android:gravity="top"
android:orientation="vertical"
android:scrollbarStyle="insideOverlay"
android:scrollbars="vertical"
android:textColor="#FFFFFFFF">
<RelativeLayout
android:id="@+id/MainLayout"
android:padding="50sp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:backgroundColor="#000000"
ads:primaryTextColor="#FFFFFF"
ads:secondaryTextColor="#CCCCCC"
ads:adSize="BANNER"
ads:refreshInterval="30"
ads:adUnitId="<my id>"
ads:loadAdOnCreate="true"
/>
</RelativeLayout>
</ScrollView>
Кажется, что все другие решения, показанные другими разработчиками, не совсем подходят для меня, поэтому я считаю, что это какая-то глупость, которую я упускаю из виду !!
Любая помощь будет полезна для моего здравомыслия!
Ура,
Lee