我正在尝试将InterstitialAd添加到我的项目中。我添加了必要的库
从sdk manager下载Google服务
将项目导入为Android代码
在属性>库中添加
这是我的代码:
import com.google.android.gms.ads.*;
public class MainActivity extends FragmentActivity implements
ActionBar.TabListener {
...
private InterstitialAd interstitial;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
...
// Create the interstitial.
interstitial = new InterstitialAd(this);
interstitial.setAdUnitId("a152caa4c3be05b");
// Create ad request.
AdRequest adRequest = new AdRequest.Builder().build();
// Begin loading your interstitial.
interstitial.loadAd(adRequest);
...
displayInterstitial();
}
...
public void displayInterstitial() {
if (interstitial.isLoaded()) {
interstitial.show();
}
}
}
这里是logcat
01-08 08:30:00.615: D/dalvikvm(669): DexOpt: --- BEGIN 'ads-1769811527.jar' (bootstrap=0) ---
01-08 08:30:00.705: D/dalvikvm(669): DexOpt: --- END 'ads-1769811527.jar' (success) ---
01-08 08:30:00.705: D/dalvikvm(669): DEX prep '/data/data/info.androidhive.tabsswipe/cache/ads-1769811527.jar': unzip in 0ms, rewrite 88ms
01-08 08:30:00.745: I/Ads(669): Use AdRequest.Builder.addTestDevice("5CEAF7E172F8B76E72193FA048D8DCB1") to get test ads on this device.
01-08 08:30:00.755: I/Ads(669): Starting ad request.
01-08 08:30:00.945: W/ResourceType(669): getEntry failing because entryIndex 13 is beyond type entryCount 1
01-08 08:30:00.945: W/ResourceType(669): Failure getting entry for 0x7f0b000d (t=10 e=13) in package 0 (error -2147483647)
01-08 08:30:00.945: E/GooglePlayServicesUtil(669): The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.
01-08 08:30:01.275: W/ResourceType(669): getEntry failing because entryIndex 13 is beyond type entryCount 1
01-08 08:30:01.275: W/ResourceType(669): Failure getting entry for 0x7f0b000d (t=10 e=13) in package 0 (error -2147483647)
01-08 08:30:01.275: E/GooglePlayServicesUtil(669): The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.
01-08 08:30:01.280: W/ResourceType(669): getEntry failing because entryIndex 13 is beyond type entryCount 1
01-08 08:30:01.280: W/ResourceType(669): Failure getting entry for 0x7f0b000d (t=10 e=13) in package 0 (error -2147483647)
01-08 08:30:01.280: E/GooglePlayServicesUtil(669): The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.
01-08 08:30:01.505: W/InputMethodManager(669): Ignoring onBind: cur seq=1831, given seq=1830
01-08 08:30:01.505: W/IInputConnectionWrapper(669): getTextBeforeCursor on inactive InputConnection
01-08 08:30:01.565: W/IInputConnectionWrapper(669): getTextAfterCursor on inactive InputConnection
01-08 08:30:01.565: W/IInputConnectionWrapper(669): finishComposingText on inactive InputConnection
01-08 08:30:01.620: W/IInputConnectionWrapper(669): finishComposingText on inactive InputConnection
01-08 08:30:02.625: I/Ads(669): Ad finished loading.
看起来广告加载效果不错,但屏幕上没有显示任何内容。 我没有使用任何其他谷歌api(因为我已经阅读了所有关于此的主题,人们在使用adMob和任何其他谷歌api时总是有问题)
您对如何解决这个问题有所了解吗?
答案 0 :(得分:1)
转到admob页面并创建新的插页式广告(MY_AD_UNIT_ID)。不要使用旧的横幅ID。
也许这有助于您:https://support.google.com/admob/v2/answer/3052638?hl=en
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.player);
// Create the interstitial.
interstitial = new InterstitialAd(this);
interstitial.setAdUnitId(MY_AD_UNIT_ID);
// Create ad request.
AdRequest adRequest = new AdRequest.Builder().build();
interstitial.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
displayInterstitial();
}
@Override
public void onAdClosed() {
}
});
// Begin loading your interstitial.
interstitial.loadAd(adRequest);
}
// Invoke displayInterstitial() when you are ready to display an interstitial.
public void displayInterstitial() {
if (interstitial.isLoaded()) {
interstitial.show();
}
}
答案 1 :(得分:0)
快速搜索似乎证实了这个
01-08 08:30:00.945: E/GooglePlayServicesUtil(669): The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.
是带GPS的常见日志消息。但它似乎没有影响。即它是良性的。
答案 2 :(得分:0)
我的回答有点晚,但我想原因可能是您的广告在展示之前没有时间加载。
在您的代码中,您希望在加载后立即显示广告,但不会留下足够的时间。
您应该稍后在您的代码中拨打电话displayInterstitial();
。