IOS開發廣告接入iAD架構_InMobi架構__IOS

來源:互聯網
上載者:User
IOS開發植入廣告的話,常用廣告架構來實現,一般常用的有蘋果官方的:iAd以及三方的像:InMobi等 以下分別介紹:

iAd架構

iOS 4.0引入了iAd架構(iAd.framework)支援程式中顯示banner廣告。廣告由標準的view構成,你可以把它們插入到你的使用者介面中,恰當的時候顯示。View本身和蘋果的廣告服務通訊,處理一切載入和展現廣告內容以及響應點擊等工作。

更多關於在程式中使用iAd的資訊,參見iAd編程指南以及iAd架構參考手冊。

一、iAD架構 簡介

IAD是蘋果推出的廣告平台,它可以協助開發人員從應用程式中擷取收入。 執行個體步驟

1. 建立一個簡單的View based application

2. 選擇專案檔,然後選擇目標,然後選擇架構並添加 iAd.framework。

3. 更新 ViewController.h 如下所示

#import <UIKit/UIKit.h>#import <iAd/iAd.h>@interface ViewController : UIViewController<ADBannerViewDelegate>{    ADBannerView *bannerView;}@end

4. 更新ViewController.m ,如下所示

#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad{    [super viewDidLoad];    bannerView = [[ADBannerView alloc]initWithFrame:    CGRectMake(0, 0, 320, 50)];    // Optional to set background color to clear color    [bannerView setBackgroundColor:[UIColor clearColor]];    [self.view addSubview: bannerView];}- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}#pragma mark - AdViewDelegates-(void)bannerView:(ADBannerView *)banner  didFailToReceiveAdWithError:(NSError *)error{    NSLog(@"Error loading");}-(void)bannerViewDidLoadAd:(ADBannerView *)banner{    NSLog(@"Ad loaded");}-(void)bannerViewWillLoadAd:(ADBannerView *)banner{    NSLog(@"Ad will load");}-(void)bannerViewActionDidFinish:(ADBannerView *)banner{    NSLog(@"Ad did finish");}@end
輸出

運行該應用程式,得到如下輸出結果:


二、InMobi架構 一、註冊InMobi帳號,建立廣告單元,等待審核。

1)註冊帳號,登入位址是:http://www.inmobi.com/,註冊完成之後需要你填寫聯絡資訊以及收款資訊,你就正常填寫就可以,inmobi支援paypal和電匯,筆者試過,使用工行儲蓄卡(雙幣卡,一般新辦的卡都支援)和paypal都可以正常收到款項,美金哦,呵呵。

2)建立廣告單元,如下圖,如果你的APP已經上線,直接輸入APP的url;反之如果app正在開發,可以選擇“No”,輸入app名稱即可。 完成後會產生一個ID,如“4028cbff36f39ce201dfsdfsdfsdf2642”,這個ID在下面會用上。

3)建立的廣告,當你的APP通過蘋果審核後,要把APP的URL錄入進來,讓inmobi審核,否則不能正常顯示廣告的。


二、接入InMobi廣告SDK到項目當中

從下載的 SDK 捆綁包中,將以下標題檔案和二進位檔案複製到項目。 libInMobi-5.x.x.a IMSdk.h IMBanner.h IMBannerDelegate.h IMInterstitial.h IMInterstitialDelegate.h IMNative.h IMNativeDelegate.h IMCustomNative.h IMRequestStatus.h IMCommonConstants.h
添加架構

將下列架構添加到您的 Xcode 項目: AdSupport.framework AudioToolbox.framework AVFoundation.framework CoreLocation.framework CoreTelephony.framework EventKit.framework EventKitUI.framework MediaPlayer.framework MessageUI.framework Security.framework Social.framework StoreKit.framework SystemConfiguration.framework UIKit.framework UIKit.framework libsqlite3.0.dylib libc++.dylib

注:將info.plist檔案中的   NSLocationWhenInUseUsageDescription標記設定為"YES" ;

添加其他版本設定
將 標記添加到其他連結器標記,以在使用類別時載入所有類。要完成此操作,請完成下列步驟:

1. 在Xcode中開啟項目。
2. 選擇應用程式目標>版本設定。
3. 在搜尋欄位中,搜尋“其他連結器標記”。

4. 添加-ObjC標記。 
針對iOS應用程式9應用程式傳輸安全性(ATS)是一種新的iOS9預設設定。它要求應用使網路連接只在TLS版本。1.2及以上。確保所有展示廣告正確顯示在您的應用程式,我們目前正與我們所有的夥伴的需求,確保100%符合ATS的要求。重要:在這個過渡階段,然而,請禁用ATS為iOS 9確保展示廣告在構建deisplay正確。這將減少美國胸科協會對應用程式的影響的貨幣化。點擊這裡瞭解更多資訊。禁用ATS,請將下面的程式碼片段添加到您的應用程式的plist。

<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict> 開始接入到項目中初始化SDK AppDelegate.h中匯入標頭檔

#import "IMSdk.h"
#import "IMCommonConstants.h" 


在AppDelegate.m 中添加初始化方法。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {//Initialize InMobi SDK with your account ID
[IMSdk initWithAccountID:@"這裡填入你申請的ID 注意是類似"sfhsjahs2fhsjkhfks2dfhkj3f2"這種的。不是那個數字ID"];

// Do your stuff.

return YES;

}

在這裡要普及一個小知識點

IMBanner屬於一個橫幅廣告

IMInterstitial屬於一個插頁廣告

IMNative屬於原生廣告

每一個對應的方法官方文檔中都會有相應的方法去建立

我接入的是一個IMnative這個廣告方式。 self.nativeAd=[[IMNative alloc] initWithPlacementId:@"Insert native Placement ID Here"]; self.nativeAd.delegate= self; [self.nativeAd load]; 裡面有一個重要的屬性就是,adContent 這個代表著廣告的內容,是一個JSON格式的字串。裡面的ImageURL是你要顯示的廣告內容,loadURL是廣告的連結,這些對於你處理廣告的邏輯很重要哦 [IMNative bindNative:self.nativeView toView:cell]; 這個方法是用來綁定你的廣告和對應的視圖的 一定要在廣告完全顯示之後再運行這個方法,這樣才不會有錯誤的曝光。 還有就是廣告跳轉的兩種方式、 1、[self.native reportAdClick:"這裡傳入你載入到的廣告內容self.native.adContent"];

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.