我正在尝试将Admob广告放入我的应用中,并且我按照所有说明进行操作,但它无效。
AdView adView = new AdView(this, AdSize.BANNER, "My_ID");
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE);
flashCardPage.addView(adView, lp);
adView.loadAd(new AdRequest());
我的清单文件包含activty标记和两个权限,就像教程一样,但横幅未显示在屏幕上。有趣的是,当我从清单文件中取出所有Admob内容并运行应用程序时,屏幕底部会显示一条横幅,说我需要允许互联网和网络状态访问。有谁知道我做错了什么?我知道关于这个话题已经有很多问题,但是没有一个问题有帮助。我尝试将我的Admob帐户更改为测试模式并将模拟器添加为测试项目,但这不起作用。
我应该尝试使用其他广告方法吗?已经过了一个星期,Admob广告仍然没有出现。
当我今天(8月10日)在手机上运行应用程序时,我被迫关闭了,所以我想如果Admob导致这种情况,即使只有1%-5%的时间,我也不会使用它
答案 0 :(得分:4)
Ii可能就是AdMob根本无法投放广告的情况,您可以尝试在adView声明之后添加该段代码,以查看其未能接收广告的内容。
// Set AdListener
adView.setAdListener(new AdListener() {
@Override
public void onFailedToReceiveAd(Ad ad, ErrorCode error) {
System.err.println("Ad failed: " + ad.toString() + error.toString());
}
@Override
public void onReceiveAd(Ad ad) {
System.out.println("Ad received: " + ad.toString());
}
});
答案 1 :(得分:2)
您是否返回到您的admob帐户注册特定的广告应用,并使用“ca-app-pub-”前言而不是“pub-”前言获得新的更长的发布商编号?
Google Admob“Google移动广告SDK”开发网站上的“横幅广告1”说明中没有提到必须返回您的admob帐户才能执行此操作。
这个愚蠢的错误让我忍受了好几天。
答案 2 :(得分:0)
检查日志cat输出以获取来自admob的任何调试消息。它应该说明何时请求广告或未加载广告。老实说,当我第一次开始我的时候几乎不会展示广告。最终他们才开始表现出来。没有真正的解释。
答案 3 :(得分:0)
我会先尝试添加广告xml。此外,请确保您已设置为通过admob接收广告。
请参阅定义com.google.ads.AdView。
通过admob,登录,然后转到Sites&应用(您可以在此处查看广告是否真正发送到您的应用),向下滚动到您的应用。当您将鼠标悬停在应用程序上时,您会看到一个显示“管理设置”的按钮。单击它,然后转到“应用程序设置”。这有助于您控制广告的展示方式和刷新率等。
答案 4 :(得分:0)
您还必须打电话给我,对我来说,这是增加的问题,以便可以帮助其他人。
mInterstitialAd.loadAd(new AdRequest.Builder().build());
没有此功能将无法正常工作,请确保也将其命名。
完整的示例代码
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.InterstitialAd;
public class MainActivity extends Activity {
private InterstitialAd mInterstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MobileAds.initialize(this,
"ca-app-pub-3940256099942544~3347511713");
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
mInterstitialAd.loadAd(new AdRequest.Builder().build());
}
}
答案 5 :(得分:-1)
通过手动卸载应用程序并重新安装而不进行任何更改来解决此问题!!