我总共有三个活动,我正在为每个活动实施admob,每个活动都有自己的横幅,当活动发生变化时,由于背景中的广告加载,其他活动有点挂起,是否有任何方式出现一个横幅在切换时的所有活动,以避免延误.
解决方法
你可以只在应用程序类中加载广告
@H_502_6@在任何活动中使用它.
你可以下载demo
就像我一样
App类
import android.app.Application; import android.view.ViewGroup; import android.widget.LinearLayout; import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdSize; import com.google.android.gms.ads.AdView; public class App extends Application { AdView adView; @Override public void onCreate() { // TODO Auto-generated method stub super.onCreate(); adView = new AdView(this); adView.setAdSize(AdSize.SMART_BANNER); adView.setAdUnitId("ca-app-pub-1267746788642565/8418489933"); // Request for Ads AdRequest adRequest = new AdRequest.Builder().build(); // Load ads into Banner Ads adView.loadAd(adRequest); } public void loadAd(LinearLayout layAd) { // Locate the Banner Ad in activity xml if (adView.getParent() != null) { ViewGroup tempVg = (ViewGroup) adView.getParent(); tempVg.removeView(adView); } layAd.addView(adView); } }
主要活动
public class MainActivity extends Activity { App app; LinearLayout layAd; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); layAd = (LinearLayout) findViewById(R.id.layad); app = (App) getApplication(); app.loadAd(layAd); Button btnNext = (Button) findViewById(R.id.next); btnNext.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent iNext = new Intent(MainActivity.this,SecondActivity.class); startActivity(iNext); } }); } @Override protected void onResume() { // TODO Auto-generated method stub app.loadAd(layAd); super.onResume(); } }
第二项活动
public class SecondActivity extends Activity { App app; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); LinearLayout layAd = (LinearLayout) findViewById(R.id.layad); app = (App) getApplication(); app.loadAd(layAd); } }
清单xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.admobdemo" android:versionCode="1" android:versionName="1.0" > <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="21" /> <application android:name="com.example.admobdemo.App" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.admobdemo.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.admobdemo.SecondActivity" android:label="@string/app_name" > </activity> <Meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" /> </application> </manifest>
主要活动布局xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="${relativePackage}.${activityClass}" > <LinearLayout android:id="@+id/layad" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > </LinearLayout> <Button android:id="@+id/next" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>
和第二个活动布局xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="${relativePackage}.${activityClass}" > <LinearLayout android:id="@+id/layad" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > </LinearLayout> </LinearLayout>