要解决Admob横幅广告加载两次导致同一位置出现两个Admob广告的问题,可以使用以下代码示例来处理:
activity_main.xml
:
MainActivity.java
:import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
public class MainActivity extends AppCompatActivity {
private AdView adView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
adView = findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
}
@Override
protected void onDestroy() {
if (adView != null) {
adView.destroy();
}
super.onDestroy();
}
}
onResume()
方法中加载广告,并在onPause()
方法中停止广告的加载,例如:@Override
protected void onResume() {
super.onResume();
if (adView != null) {
adView.resume();
}
}
@Override
protected void onPause() {
if (adView != null) {
adView.pause();
}
super.onPause();
}
这样,每次Activity重新进入前台时,广告将重新加载一次,而当Activity进入后台时,广告加载将暂停,避免出现重复的广告。