پیش نیازها
این راهنمای پیاده سازی فرض می کند که شما با موارد زیر آشنا هستید:
- توسعه اپلیکیشن iOS
- مرتبط کردن Google Mobile Ads SDK با یک پروژه iOS. آخرین نسخه SDK را دانلود کنید .
نمای کلی
این سند روند ادغام تبلیغات AFS برای برنامه های موبایل (AFSMA) را در برنامه موبایل iOS شما شرح می دهد. تبلیغات AFSMA گاهی اوقات به عنوان تبلیغات جستجوی ارتفاع پویا نیز شناخته می شود. برای درخواست و ارائه تبلیغات AFSMA در iOS، باید موارد زیر را اجرا کنید:
- این کلاس از کلاس UIView iOS به ارث می رسد و تبلیغات AFSMA را نمایش می دهد.
GADSearchBannerView
درخواست یک آگهی را باGADDynamicHeightSearchRequest
می کند و تبلیغات برگشتی را ارائه می دهد.GADSearchBannerView
باید به هر یک از نماهای موجود برنامه اضافه شود. معمولاً این کنترلکننده نمای والد است که نمایی را نگه میدارد کهGADSearchBannerView
به آن اضافه شده است. نمایندگان مناسب باید درGADSearchBannerView
تنظیم شوند. - برای درخواست تبلیغات AFSMA
GADSearchBannerView
باید باinitWithAdSize:kGADAdSizeFluid
نمونه سازی شود. نمونه سازیGADSearchBannerView
باinitWithAdSize:kGADAdSizeBanner
آگهی های قدیمی AFSMA را درخواست می کند. - ویژگی
adUnitID
در این شی باید روی کد ویژگی شما تنظیم شود.
- این شیء پارامترهای درخواست آگهی را کپسوله می کند. این مشابه با تنظیم پارامترها در اشیاء درخواست آگهی جاوا اسکریپت (گزینههای صفحه، گزینههای واحد) برای وب دسکتاپ و موبایل AFS است.
(void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)size
- این تماس برگشتی زمانی فراخوانی می شود که درخواست آگهی بازگردد. از آنجایی که واحد تبلیغاتی بازگردانده شده میتواند حاوی تعدادی آگهی با پسوندهای مختلف باشد، اندازه دقیق واحد تبلیغات در هنگام درخواست آگهی ناشناخته است. پس از بازگرداندن آگهی، نمای بنر باید به روز شود تا اندازه جدید واحد تبلیغات را در خود جای دهد. کد تغییر اندازه
GADSearchBannerView
در نمای والد آن باید در اینجا پیاده سازی شود.
اجرای نمونه
مثال زیر استفاده از GBannerViewController
را برای ایجاد یک GADSearchBannerView
به عنوان نمای فرعی UIScrollView
نشان می دهد. برای درخواست صحیح تبلیغات AFSMA، شی GADSearchBannerView
باید با initWithAdSize:kGADAdSizeFluid
نمونه سازی شود.
// GBannerViewController.m implementation
@interface GBannerViewController () <GADAdSizeDelegate,
GADBannerViewDelegate>
@property(nonatomic, strong) GADSearchBannerView *searchBannerView;
@property(nonatomic, strong) UIScrollView *scrollView;
@end
@implementation GBannerViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Create the scroll view.
....
....
// Create the banner.
self.searchBannerView = [[GADSearchBannerView alloc] initWithAdSize:kGADAdSizeFluid];
// Replace with your pub ID (e.g. ms-app-pub-9616389000213823).
self.searchBannerView.adUnitID = @"ms-app-pub-################";
// Set the initial location and size of the banner. The initial height
// is set to 0 since we might not get an ad back.
self.searchBannerView.frame = CGRectMake(0,
0,
CGRectGetWidth(self.view.bounds),
0);
self.searchBannerView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
// Set the delegate properties.
self.searchBannerView.adSizeDelegate = self;
self.searchBannerView.delegate = self;
// Add the new search banner into the parent scrollView.
[self.scrollView addSubview:self.searchBannerView];
}
در همان GBannerViewController
، یک GADDynamicHeightSearchRequest
ایجاد کنید که پارامترهای تبلیغی را که در GADSearchView
ارائه میشوند، دیکته میکند.
// Create a search request and load the banner. GADDynamicHeightSearchRequest *searchRequest = [[GADDynamicHeightSearchRequest alloc] init]; // Ad request options (set using GADDynamicHeightSearchRequest properties). searchRequest.query = @"flowers"; searchRequest.numberOfAds = 2; // Replace with the ID of a style from your custom search styles [searchRequest setAdvancedOptionValue:@"0000000001" forKey:@"styleId"];
سایر گزینه های سفارشی سازی با تنظیم ویژگی های اضافی در شی GADDynamicHeightSearchRequest
امکان پذیر است.
برای درخواست تبلیغ، loadRequest
با شی GADDynamicHeightSearchRequest
از شی GADSearchBannerView
فراخوانی کنید:
[self.searchBannerView loadRequest:searchRequest];
برای اینکه نمای والد به درستی GADSearchBannerView
پس از بازگشت تبلیغات تطبیق دهد، پاسخ تماس زیر باید اجرا شود.
// Callback to update the parent view height.
- (void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)size {
// Update the banner view based on the ad size.
CGRect newFrame = self.searchBannerView.frame;
newFrame.size.height = size.size.height;
self.searchBannerView.frame = newFrame;
// Perform any additional logic needed due to banner view size change.
...
}
گزینه های پیشرفته
بیشتر پارامترهای درخواست آگهی را می توان از طریق ویژگی های شی GADDynamicHeightSearchRequest
( searchRequest
بالا) تنظیم کرد. سایر پارامترها باید با استفاده از جفت های کلید-مقدار با متد setAdvancedOptionValue
تنظیم شوند:
// Advanced customization options (set using key-value pair).
// Set a parameter (parameter_name) and its value (parameter_value).
[searchRequest setAdvancedOptionValue:@"parameter_value"
forKey:@"parameter_name"];
// Example: Show visible URL below description (domainLinkAboveDescription: false).
[searchRequest setAdvancedOptionValue:@"false"
forKey:@"domainLinkAboveDescription"];
لیست کامل پارامترهای موجود را ببینید .
بررسی خطاها
GADBannerViewDelegate
حاوی یک فراخوان است تا به شما در بررسی خطاها کمک کند:
- (void)adView:(GADBannerView *)bannerView didFailToReceiveAdWithError:(GADRequestError *)error {
// This callback is triggered when the ad request fails.
// Add code here to debug the error object to discover causes of failure
NSLog(@"Ad call failed due to %@", error.userInfo[@"NSUnderlyingError"]);
}
اگر درخواست تبلیغ با شکست مواجه شد، میتوانید از این فراخوان برای رسیدگی صحیح به خطا و بررسی خطا از طریق شی خطا استفاده کنید.