http://www.apptite.be/tutorial_mixing_ads.php 의 링크에서 iAd/Admob 디스플레이 코드를 통합했으며 이상한 결과가있었습니다. admob에서 클릭률은 40 % 하락했지만 노출 수는 동일하게 유지되었습니다. 마치 두 광고가 동시에 표시되는 것처럼 AdAd 광고 상단에 iAd가 표시됩니다. 누군가 그 사이트의 코드에 문제를 일으킬 가능성이 있습니까?iAd 및 Admob 통합
도움을 주셔서 감사합니다.
http://www.apptite.be/tutorial_mixing_ads.php 의 링크에서 iAd/Admob 디스플레이 코드를 통합했으며 이상한 결과가있었습니다. admob에서 클릭률은 40 % 하락했지만 노출 수는 동일하게 유지되었습니다. 마치 두 광고가 동시에 표시되는 것처럼 AdAd 광고 상단에 iAd가 표시됩니다. 누군가 그 사이트의 코드에 문제를 일으킬 가능성이 있습니까?iAd 및 Admob 통합
도움을 주셔서 감사합니다.
먼저 Google에서 Admob Sdk를 다운로드해야합니다. 그 파일은 구글의 AdMob API에서 필요합니다 -
GADAdSize.h
GADBannerView.h
GADBannerViewDelegate.h
GADInterstitial.h
GADInterstitial.h
GADRequest.h
GADRequestError.h
libGoogleAdMobAds
#import <UIKit/UIKit.h>
#import "GADBannerViewDelegate.h"
@class GADBannerView, GADRequest;
@interface BannerExampleViewController : UIViewController
<GADBannerViewDelegate> {
GADBannerView *adBanner_;
}
@property (nonatomic, retain) GADBannerView *adBanner;
- (GADRequest *)createRequest;
@end
#import "BannerViewController.h"
#import "GADBannerView.h"
#import "GADRequest.h"
@implementation BannerExampleViewController
@synthesize adBanner = adBanner_;
#pragma mark init/dealloc
// Implement viewDidLoad to do additional setup after loading the view,
// typically from a nib.
- (void)viewDidLoad
{
[super viewDidLoad];
CGPoint origin = CGPointMake(0.0,
self.view.frame.size.height -
CGSizeFromGADAdSize(kGADAdSizeBanner).height);
self.adBanner = [[[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner
origin:origin]
autorelease];
self.adBanner.adUnitID = AdMob key;
self.adBanner.delegate = self;
[self.adBanner setRootViewController:self];
[self.view addSubview:self.adBanner];
[self.adBanner loadRequest:[self createRequest]];
}
- (void)dealloc {
adBanner_.delegate = nil;
[adBanner_ release];
[super dealloc];
}
#pragma mark GADRequest generation
- (GADRequest *)createRequest {
GADRequest *request = [GADRequest request];
request.testing = YES;
return request;
}
#pragma mark GADBannerViewDelegate impl
- (void)adViewDidReceiveAd:(GADBannerView *)adView {
NSLog(@"Received ad successfully");
}
- (void)adView:(GADBannerView *)view
didFailToReceiveAdWithError:(GADRequestError *)error {
NSLog(@"Failed to receive ad with error: %@", [error localizedFailureReason]);
}
@end
흠, 내가 말하는 코드를 찾고 있어요 :
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
NSLog(@"iAdBanner failed");
// Only request adMob when iAd did fail
[self adMobRequest];
그리고 애플의 사이트를, 그것은 "오류가 대리자로 전송 후에도, 배너보기하려고 계속 말한다 따라서 이러한 위임 메서드를 모두 구현하면 응용 프로그램이 광고가로드 될 때만 배너를 표시 할 수 있습니다. " (link)
iAd가 실패하면 AdMob 광고를 표시하지만 iAd도 다시 시도하므로 다시 실패하면 다시 다른 AdMob 광고를 요청하는 것입니다 사람이 이미 보여주고 있다는 사실에도 불구하고?
중재 솔루션을 사용하여 자신의 가정용 양조 솔루션을 사용하는 대신 여러 광고 네트워크를 구현하십시오. AdMob의 최신 SDK에는 [광고 네트워크 조정] (https://developers.google.com/mobile-ads-sdk/docs/ios/mediation/)이 있으며 iAd는 지원되는 광고 네트워크 중 하나입니다. –