Android 如何在单击后但在新意图之前加载间隙?
我的主页有大约10个按钮,每个按钮都加载一个新的意图Android 如何在单击后但在新意图之前加载间隙?,android,android-intent,admob,interstitial,Android,Android Intent,Admob,Interstitial,我的主页有大约10个按钮,每个按钮都加载一个新的意图 @Override public void onClick(View v) { // TODO Auto-generated method stub if (mInterstitialAd.isLoaded()) { mInterstitialAd.show(); } switch(v.getId()) {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
switch(v.getId())
{
case R.id.troop_button:
gotoTroopScreen();
break;
}
}
public void gotoTroopScreen()
{
Intent intent = new Intent(this, troop.class);
startActivity(intent);
}
我希望用户单击按钮,查看间隙,然后查看部队屏幕。现在,它首先加载队伍屏幕,然后在用户退出队伍屏幕后显示间隙。有没有办法先进行间隙显示?在创建时加载外接程序
,如下所示
interstitial = new InterstitialAd(this);
interstitial.setAdUnitId("YOUR_AD_UNIT_IT");
AdRequest adRequest = new AdRequest.Builder()
.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
.build();
interstitial.loadAd(adRequest);
然后单击按钮,调用以下函数:
public void displayInterstitial() {
if (interstitial.isLoaded()) {
interstitial.show();
}
}
当用户关闭广告时,转到下一个活动:
// Set an AdListener.
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
//Here set a flag to know that your
}
@Override
public void onAdClosed() {
// Proceed to the next activity.
goToNextActivity();
}
});
注意:有一种可能性,用户可能会在
Interstitual
ad加载之前单击按钮。在外部创建一个单独的方法来显示ad函数,并在调用GoToRoopScreen()方法调用ad方法之前调用开关盒内的方法,它应该首先显示您的广告单元。我已经完成了前两个步骤。goToNextActivity()
究竟是如何工作的?用户可以单击10个按钮中的任意一个,每个按钮都会加载不同的活动。您必须设置标志,才能知道用户单击了哪个按钮,然后可以在onAdClosed()Callback中使用switch()。谢谢!唯一不同的是,我在public void onClick(View v)
中为按钮id设置了一个全局变量,然后将switch语句放入onAdClosed()
onadloadded()
在这里似乎没有必要,因为从技术上讲,应用程序应该在按下后立即记录点击,而不是在广告加载时记录。