Как разместить рекламный баннер на экране предварительного просмотра для живых обоев?
Как и в случае с живыми обоями Fireflies ( http://www.livewallpapers.org/fireflies-free-1543/), я не знаю, как разместить рекламный баннер на экране предварительного просмотра (а не на экране настроек).
Дополнительная информация: когда я устанавливаю обои Fireflies на свой HTC, который находится на Android 2.2.1, баннер появляется на экранах предварительного просмотра и настроек, но на двух других моих Sony Ericsson (на 2.3.3) я вижу только баннер в Настройка экранов. Это как-то связано с Sony Ericsson или версией Android?
Спасибо.
PS Я посмотрел эту ссылку, но не нашел ответа на свой вопрос:
Как поместить AdMob AdWord на экране настроек для живых обоев?
1 ответ
Создайте новый класс AdPreference.java и включите этот код:
public class AdPreference extends Preference {
public AdPreference(Context context, AttributeSet attrs, int defStyle) {super (context, attrs, defStyle);}
public AdPreference(Context context, AttributeSet attrs) {super(context, attrs);}
public AdPreference(Context context) {super(context);}
@Override
protected View onCreateView(ViewGroup parent) {
// this will create the linear layout defined in ads_layout.xml
View view = super.onCreateView(parent);
// the context is a PreferenceActivity
Activity activity = (Activity)getContext();
// Create the adView
AdView adView = new AdView(activity, AdSize.BANNER, "YOUR_ADMOB_ID_HERE");
((LinearLayout)view).addView(adView);
// Initiate a generic request to load it with an ad
AdRequest request = new AdRequest();
adView.loadAd(request);
return view;
}
}
В папке res/layout создайте новый макет xml под названием ad_layout.xml, который должен быть точным. Затем включите этот код:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</LinearLayout>
Затем в ваших "настройках" xml добавьте это сразу после строки xmlns:
<com.yourpackagename.AdPreference android:layout="@layout/ad_layout"/>
В вашем AndroidManifest.xml добавьте это раньше
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
<meta-data android:name="ADMOB_ALLOW_LOCATION_FOR_ADS" android:value="false" />
Также добавьте это в свой манифест:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
И это все. Это будет отлично работать.