我正在使用Google DFP(DFP广告管理系统)广告 和iPhone设备,我想在特定的屏幕尺寸上显示广告 在LANDSCAPE模式中的ios和android中的应用程序。我已经创建了一个订单 为该订单创建了一个订单项,在该订单项中,我 创造了"广告素材"根据物理尺寸的各种尺寸 ios和android的屏幕。然后我去了库存和 获得了所有广告素材的广告代码,并将其整合到我的应用中 通过尺寸检查分开。
现在我面临的问题是在代码中,虽然广告正确 访问了代码但我为该代码指定的广告素材(图片)是 随机挑选。这个问题在Android和iPhone中都存在。
我想知道为什么不只选择指定尺寸的广告素材(图片)? 是否有必要分离iPhone和Android库存(广告素材)?
我也尝试过智能横幅尺寸和cutom横幅尺寸 指定的广告素材未显示。
参考智能横幅:https://developers.google.com/mobile-ads- SDK /文档/ DFP /机器人/横幅#智能
参考自定义横幅:https://developers.google.com/mobile-ads- SDK /文档/ DFP /机器人/横幅#custom_size
此外,当我打开测试广告时,它们会显示在任何设备的整个宽度上,但我的广告不会显示在整个宽度上。虽然测试广告距离设备的宽度较小,但它会自动在广告的两侧添加一些背景以填充整个宽度。但是在我的广告素材显示时不会出现这种情况。
Android和iPhone的代码: Android:选择相应的屏幕尺寸广告
Fragment frag=new AdBannerFragment();
ArrayList<Integer> screenSize=Globals.getScreenSize
(getActivity());
Integer width=screenSize.get(0);
if (width==120) {
frag = new AdBannerFragment
("/235389899/Clubfitting-Update-15_320x50-120dpi");
} else if (width==160) {
frag = new AdBannerFragment
("/235389899/Clubfitting-Update-15_320x50-160dpi");
} else if (width==240) {
frag = new AdBannerFragment
("/235389899/Clubfitting-Update-15_320x50-240dpi");
}
else if (width==320) {
// frag = new AdBannerFragment
("/235389899/Clubfitting_4-14_320x50");
frag = new AdBannerFragment
("/235389899/Clubfitting-Update-15_320x50-320dpi");
} else if (width==480) {
// frag = new AdBannerFragment
("/235389899/Clubfitting_4-14_480x50");
frag = new AdBannerFragment
("/235389899/Clubfitting-Update-15_320x50-480dpi");
} else if (width==640){
// frag = new AdBannerFragment
("/235389899/Clubfitting_4-14_640x100");
frag = new AdBannerFragment
("/235389899/Clubfitting-Update-15_320x50-640dpi");
}else{
frag = new AdBannerFragment
("/235389899/Clubfitting-Update-15_320x50-640dpi");
}
AdBanner片段代码(设置和加载横幅):
AdSize customAdSize = new AdSize(AdSize.FULL_WIDTH, 50);
adView = new PublisherAdView(activity2);
//I have also tried smart banners.
adView.setAdSizes(customAdSize);
mAdContainer.addView(adView);
adView.setAdUnitId(mTag);
adView.loadAd(new PublisherAdRequest.Builder
().build());
iPhone:选择相应的屏幕尺寸广告
CGSize screenSize;
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0"))
{
screenSize = [UIScreen mainScreen].nativeBounds.size;
}
else
{
screenSize = [UIScreen mainScreen].bounds.size;
}
NSLog(@"screen size: %@ banner frame: %@",NSStringFromCGSize(screenSize),NSStringFromCGSize(self.bannerVw.frame.size));
if (screenSize.width== 1920)
{
self.bannerVw.adUnitID = @"/235389899/Clubfitting-Update-15_736x90";
self.bannerVw.adSize = GADAdSizeFromCGSize(CGSizeMake(736, 90));
}
else if (screenSize.width== 1334)
{
self.bannerVw.adUnitID = @"/235389899/Clubfitting-Update-15_667x50";
self.bannerVw.adSize = GADAdSizeFromCGSize(CGSizeMake(667, 50));
}
else if (screenSize.width== 1136)
{
self.bannerVw.adUnitID = @"/235389899/Clubfitting-Update-15_568x50";
self.bannerVw.adSize = GADAdSizeFromCGSize(CGSizeMake(568, 50));
}
else if (screenSize.width== 960)
{
self.bannerVw.adUnitID = @"/235389899/Clubfitting-Update-15_480x50";
self.bannerVw.adSize = GADAdSizeFromCGSize(CGSizeMake(480, 50));
}
else //default
{
self.bannerVw.adUnitID = @"/235389899/Clubfitting-Update-15_736x90";
self.bannerVw.adSize = GADAdSizeFromCGSize(CGSizeMake(736, 90));
}
AdBanner片段代码(设置和加载横幅):
self.bannerVw.rootViewController = self;
//I am currently using custom sizes and check smart anners also.
// self.bannerVw.adSize = kGADAdSizeSmartBannerLandscape;
[self.bannerVw setDelegate:self];
GADRequest *request = [GADRequest request];
// request.testDevices = @[ GAD_SIMULATOR_ID ];
[self.bannerVw loadRequest:request];