2017-06-16 106 views
0

我在尝试添加插页式广告时遇到了一些问题。尝试添加Admob插页式广告时出错

Android Studio似乎没有任何错误地接受我的代码,但是当我打开我的应用程序时 - 只有一个空白页面和广告条(使用FireBase工具安装)。如果我删除了代码,一切都会恢复正常。如果你能帮助我,我将不胜感激。

代码:

package test.com.myapplication; 

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import com.google.android.gms.ads.AdListener; 
import com.google.android.gms.ads.AdRequest; 
import com.google.android.gms.ads.InterstitialAd; 

public class MainActivity extends AppCompatActivity { 
InterstitialAd mInterstitialAd; 
private InterstitialAd interstitial; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    AdRequest adRequest=new AdRequest.Builder().build(); 
    //Prepare the interstitial Ad 
    interstitial=new InterstitialAd(MainActivity.this); 
    //Insert the add unit id 
    interstitial.setAdUnitId(getString(R.string.admob_interstitial_id)); 
    interstitial.loadAd(adRequest); 
    //prepare an interstitial ad listeners 
    interstitial.setAdListener(new AdListener() { 


     @Override 
     public void onAdClosed() { 
      //Call displayfunction 
      displayInterstitial(); 
     } 
    }); 

} 
public void displayInterstitial(){ 
    //if ads are loaded, show interstitial ads 
    if (interstitial.isLoaded()) 
    { 
     interstitial.show(); 
    } 
} 

附:字符串和互联网权限都被添加。

+0

检查你的日志,并在你的问题上传 –

+0

显示你的横幅视图添加的XML文件?并确保您已经在非页内广告的清单文件中输入了活动条目 – Aryan

回答

0

看起来您正尝试显示您的插页式广告,以响应插页式广告本身的onAdClosed事件。当用户关闭广告时,会触发该事件,这意味着您的代码现在处于停用状态,永远不会有机会执行(为了让插页式广告被关闭,必须先显示该广告,并且您的代码有相反的方式)。

请尝试调用您的displayInterstitial方法来响应某些UI事件,例如按下按钮,或者在活动之间进行切换或类似操作。

此外,我建议在loadAd之前拨打setListener。部分AdListener事件与加载有关,因此最好在发出加载广告的电话之前将其加入。

+0

我改变了一下我的项目并重新开始。导入完整项目后,我添加了“Google AdMob Ads Activity”,并将所有代码复制到我的主要活动中。但现在有另一个问题: 当我把: //膨胀菜单;这会将项目添加到操作栏(如果存在)。 getMenuInflater()。inflate(R.menu.menu_main,menu); 返回true; 我在“菜单”上出现错误 - 它告诉我表达式是预期的。我该怎么办? –

+0

如果您将代码从Android Studio生成的Ads Activity移动到您的Activity中,它可能需要一些您还未包含的资源。如果您对有菜单不感兴趣,您可以随时删除该代码。否则,请尝试在代码中发布新问题,并且有人可能会发现问题。 :) – RedBrogdon

相关问题