我已经创建了Facebook广告演示应用程序,但是无法加载任何版本sdk中的任何广告(非页内广告,本机广告,横幅广告。
如果我使用sdk版本5.3.0,则facebook广告返回错误。
错误:新捆绑包必须使用最新的Audience Network SDK。
如果我使用的是sdk版本5.5.0,5.6.0,那么facebook广告返回错误。
错误:没有填充
我还尝试了实时广告ID(264476213973610_264482430639655)和测试广告ID(YOUR_PLACEMENT_ID),但不起作用
AudienceNetworkAds.initialize(this);
final InterstitialAd interstitialAd = new InterstitialAd(MainActivity.this, "YOUR_PLACEMENT_ID");
AdSettings.addTestDevice("6f2e675e-05b0-46d8-b3d6-032ef6a25fdb");
interstitialAd.destroy();
interstitialAd.setAdListener(new InterstitialAdListener() {
@Override
public void onInterstitialDisplayed(Ad ad) {
Log.e(TAG, "Interstitial ad displayed.");
}
@Override
public void onInterstitialDismissed(Ad ad) {
Log.e(TAG, "Interstitial ad dismissed.");
}
@Override
public void onError(Ad ad, AdError adError) {
Toast.makeText(MainActivity.this, "Error: " + adError.getErrorMessage(), Toast.LENGTH_LONG).show();
}
@Override
public void onAdLoaded(Ad ad) {
Toast.makeText(MainActivity.this, "Loaded: " + ad.getPlacementId(), Toast.LENGTH_LONG).show();
interstitialAd.show();
}
@Override
public void onAdClicked(Ad ad) {
Log.d(TAG, "Interstitial ad clicked!");
}
@Override
public void onLoggingImpression(Ad ad) {
Log.d(TAG, "Interstitial ad impression logged!");
}
});
interstitialAd.loadAd();
我也遇到过类似的问题。因此,我将解释如何解决。
要在设备上正确测试,除了问题中提到的以外,您还需要执行其他一些步骤。
步骤:
添加测试设备以获取测试广告(或用于测试的实时广告,这不会给您带来收入)。要添加设备:
i)登录到您的受众网络帐户
ii)转到获利管理器>集成>测试
iii)使用Android的AAID或iOS的IDFA添加测试设备。您可以检查其他SO的线程以查找设备的AAID或IDFA,以防万一。
iv)您现在可以在设备中对其进行测试,并且您必须正在获得广告。如果仍然没有广告,请选择使用真实的广告客户内容选项。现在可以测试不同类型的广告,例如HD Video,Simple Image等;在同一屏幕上点击选择广告类型
[注意:请记住查看FAN's ad Caching in Android 9+中的文章,因为高清视频或任何类型的视频广告都不会在Android 9+上显示,并且您可能会出现空白屏幕,无法使用您的应用程序的所有功能。