日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IOS开发广告接入iAD框架_InMobi框架

發布時間:2024/1/18 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IOS开发广告接入iAD框架_InMobi框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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"];
    • [[UIApplication sharedApplication] openURL:landingPageURL];
    • 用于跳轉到safari脫離了你本身的app然后到app store 去下載廣告內容。
    • 2、[self.native reportAdClickAndOpenLandingURL:"這里傳入你加載到的廣告內容self.native.adContent"];
    • 用于自身app頁面上加載廣告內容,直接在自己app頁面中顯示廣告內容,有相應的代理方法,顯示加載到的內容。
    • InMobi 強烈建議在 dealloc 方法中將代理設置為 nil,或者設置為原生廣告發布的任何其他時間。 textpop-up <ul class="snippet-no-num" style="margin:0px; padding:0.6em 1em; list-style:none"><li style="margin:5px 0px; padding:0px; line-height:20px; list-style:none"><span class="sh_symbol" style="color:#ff080;margin:0px; padding:0px; font-weight:bold">-(</span>void<span class="sh_symbol" style="color:#ff080;margin:0px; padding:0px; font-weight:bold">)</span>dealloc <span class="sh_cbracket" style="color:#ff080;margin:0px; padding:0px; font-weight:bold">{</span></li><li style="margin:5px 0px; padding:0px; line-height:20px; list-style:none">nativeAd<span class="sh_symbol" style="color:#ff080;margin:0px; padding:0px; font-weight:bold">.</span>delegate <span class="sh_symbol" style="color:#ff080;margin:0px; padding:0px; font-weight:bold">=</span> nil<span class="sh_symbol" style="color:#ff080;margin:0px; padding:0px; font-weight:bold">;</span></li><li style="margin:5px 0px; padding:0px; line-height:20px; list-style:none"><span class="sh_cbracket" style="color:#ff080;margin:0px; padding:0px; font-weight:bold">}</span></li></ul> 我覺得這個廣告平臺最好的地方就是,可以通過傳入不同的關鍵字進行一系列的廣告加載,滿足各種用戶的期待
    • 收入水平、國家、消費水平等等一些信息的設置。
官方InMobi廣告的SDK文檔鏈接:https://support.inmobi.com/monetize/integration/ios/ios-sdk-integration-guide/

總結

以上是生活随笔為你收集整理的IOS开发广告接入iAD框架_InMobi框架的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。