Optimize Your Earning Power with iad



Similar documents
AT&T Global Network Client for Windows Product Support Matrix January 29, 2015

COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) CHARTERED BANK ADMINISTERED INTEREST RATES - PRIME BUSINESS*

COMPARISON OF FIXED & VARIABLE RATES (25 YEARS) CHARTERED BANK ADMINISTERED INTEREST RATES - PRIME BUSINESS*

Going Social with ReplayKit and Game Center

MOBILE MEDIA KIT. Premium Mobile Display & Video Ad Solutions

Analysis One Code Desc. Transaction Amount. Fiscal Period

Case 2:08-cv ABC-E Document 1-4 Filed 04/15/2008 Page 1 of 138. Exhibit 8

With Massive Reach, Precise Targeting, and Stellar Customer Support, PlayHaven Ads Outperform All Other Mobile Game Ad Networks

MOBILE ADVERTISING. Mobile Advertising Opportunities. We deliver predicted results for a fixed budget.

CUSTOMER STORY: TOP 5 U.S. CABLE OPERATOR SCALING AD IMPRESSIONS AND CONVERSIONS WHILE LOWERING COST PER ORDER

The study was conducted through a 15-minute online survey and was undertaken by 350 people.

Universal Mobile Ads is a plugin for Unreal Engine 4 that enables the MoPub ad mediation system for ios & Android.

Enhanced Vessel Traffic Management System Booking Slots Available and Vessels Booked per Day From 12-JAN-2016 To 30-JUN-2017

News. Ad Specifications July 2016

Building the next generation of Mobile Apps with Facebook. Bo Zhang Head of Platform Partner Engineering, APAC

Creating Effective Mobile Advertising Campaigns

Ad Specifications and Guidelines

ADITION ios Ad SDK Integration Guide for App Developers

Best Practices for Maximizing Revenue with MoPub. Publisher Playbook

Self Testing with MoPub SDK

Proposal to Reduce Opening Hours at the Revenues & Benefits Coventry Call Centre

Retargeting: Why Your Mobile Marketing Strategy is Incomplete Without It. Data fueled mobile marketing powered by miq.

ADTECH Mobile for App Developers

Sizmek Formats. IAB Mobile Pull. Build Guide

APP ANALYTICS PLUGIN

Using INZight for Time series analysis. A step-by-step guide.

GETTING STARTED GUIDE TAPJOY S PERSONALIZED MONETIZATION PLATFORM

2. About iphone ios 5 Development Essentials. 5. Joining the Apple ios Developer Program

Mobile Advertising Survey of existing mobile ad networks

ACCESS Nursing Programs Session 1 Center Valley Campus Only 8 Weeks Academic Calendar 8 Weeks

ACCESS Nursing Programs Session 1 Center Valley Campus Only 8 Weeks Academic Calendar 8 Weeks

Advertising Specifications V2.0

2015 Media Pack Delivering the latest contact centre and customer service community news and insight

A leading player in the German price comparison market

Social Intelligence Report ADOBE DIGITAL INDEX Q4 2013

ClickView app for iphone and ipad User manual for admins/teachers

Computing & Telecommunications Services Monthly Report March 2015

Axxon Monitor. User Manual

The Social Intelligence Report ADOBE DIGITAL INDEX Q3 2013

Mobile App Framework For any Website

Connect for iphone. Aug, 2012 Ver 5.3b AWest. 1 P age

Rhythm Q Mobile Video Advertising Report

Prevailing Mobile In-Application Advertising Formats

MEDIA INFO 2009 (short version)

General Ad Guidelines and Specs

Tapping into Mobile App Installs. Building a Valuable User Base for Your App

1. Introduction. 2. User Instructions. 2.1 Set-up

Unprecedented Exposure January 2014

UMENG insight report. Linda Jiang VP Business Development & Marketing Lindajiang@umeng.com

Mobile App Engagement Index

As much fun as spectacle is, no one is impressed anymore. No one flinches. It is easy to get caught up in spectacle, but story is timeless.

Direct Response Marketing on Facebook

Stock Market Indicators: Historical Monthly & Annual Returns

Adobe Digital Publishing Suite, Analytics Service

Ashley Institute of Training Schedule of VET Tuition Fees 2015

AMPIFY YOUR BRAND ON SNAP MOBILE S MOBILE WEB NETWORK. Dec 2013

The Definitive Guide to Mobile Monetization

Gathering customer information from a mobile application James Adams, SAS Institute Inc.

Managing Apple Devices

GOOGLE MOBILE ANALYTICS INTEGRATION. JANUARY 2013 (App version onwards)

Videoplaza Creative Specification 12 th of March 2012

Infographics in the Classroom: Using Data Visualization to Engage in Scientific Practices

Banner Employee Self-Service Web Time Entry. Student Workers User s Guide

Shazam In App Advertising TECHNICAL SPECIFICATIONS

The Coast to Coast AM Podcast for itunes 11

PlayTime Media is the Best Way to Deliver Your Brand Message

Mobile Application Development

South Dakota Board of Regents. Web Time Entry. Student. Training Manual & User s Guide

BCOE Payroll Calendar. Monday Tuesday Wednesday Thursday Friday Jun Jul Full Force Calc

Leading Edge: Mobile Advertising

Annex A to the MPEG Audio Patent License Agreement Essential Philips, France Telecom and IRT Patents relevant to DVD-Video Player - MPEG Audio

JW Focus: Gaming. Epic Win with In-Game Advertising White Paper January 2014

Introduction. Ad formats and buying models MOBILE AD FORMATS EXPLAINED. Ad format CPI CPC CPM CPA CPV. Display

The Rush 24/7 Podcast for itunes 11

IAB Full page flex Mobile Rising Star Ad Unit

CENTERPOINT ENERGY TEXARKANA SERVICE AREA GAS SUPPLY RATE (GSR) JULY Small Commercial Service (SCS-1) GSR

Welcome! Bienvenido! Bem-vindo!

Roles: Scrum Master & Project Manager

Beyond Search Engines: The Brave New World of Retargeting Data

Platform Overview! 8 November 2013

The New itunes Connect

agency capabilities Digital Media Services Medical Parkway # 201 Austin, TX 78756

The mobile opportunity: How to capture upwards of 200% in lost traffic

Event Kit Programming Guide

KWeye Mobile Software for Dual Streaming Multiplex H.264 4CH/8CH/16CH Network DVR

Assignment 4 CPSC 217 L02 Purpose. Important Note. Data visualization

PowerSteering Product Roadmap Your Success Is Our Bottom Line

Tag Specification Document

How to monetize your Triton Player

START HERE THE BASICS TIPS + TRICKS ADDITIONAL HELP. quick start THREE SIMPLE STEPS TO SET UP IN UNDER 5 MINUTES

Bb Upgrade Timeline. Oct Nov Dec Jan 2011 Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan PDFmyURL.com

Ed2go Online Courses FAQs and Staff Manual

Transcription:

Frameworks #WWDC14 Optimize Your Earning Power with iad Revenue and promotion Session 222 David Wilson ios Apps and Frameworks 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from Apple.

Apple's Digital Advertising Platform

Monetize Generate revenue with rich media Ads Promote Drive downloads with iad Workbench

Monetize Generate revenue with rich media Ads Promote Drive downloads with iad Workbench

iad Integration for Monetization Developer benefits Core concepts Improving performance App integration Testing

iad Integration for Monetization Developer benefits Core concepts Improving performance App integration Testing

Developer Benefits Engaging ads

Developer Benefits Engaging ads High production values

Developer Benefits Engaging ads High production values Rich media

Developer Benefits Engaging ads High production values Rich media Immersive

Developer Benefits Engaging ads High production values Rich media Immersive Award winning

Developer Benefits Power and privacy conscious

Developer Benefits Power and privacy conscious Privacy-aware Power efficient

Developer Benefits Quick and easy integration

Developer Benefits Quick and easy integration No additional SDKs

Developer Benefits Quick and easy integration No additional SDKs Up and running with minimal code

Developer Benefits Quick and easy integration No additional SDKs Up and running with minimal code Great documentation and sample code

Developer Benefits Global reach US UK FR DE IT MX HK ES JP CA AU NZ IE TW

Developer Benefits Revenue from your app

Developer Benefits Revenue from your app Your Share 70%

Developer Benefits As easy as Complete iad contract Integrate the iad framework Submit your app for review http://itunesconnect.apple.com/

iad Integration for Monetization Developer benefits Core concepts Improving performance App integration Testing

Core Concepts Ad requests Sent to the iad Network Fulfilled based on inventory

Core Concepts Ad requests Sent to the iad Network Fulfilled based on inventory iad Framework

Core Concepts Ad requests Sent to the iad Network Fulfilled based on inventory Ad Request iad Framework

Core Concepts Ad requests Sent to the iad Network Fulfilled based on inventory Ad Request iad Framework Ads

Core Concepts Fill rate Ads Delivered Ad Requests = Fill Rate

Core Concepts Tap-through rate Ads Tapped Ads Displayed = Tap-through Rate

Core Concepts Ad engagement

Core Concepts Ad engagement Display the ad

Core Concepts Ad engagement Display the ad Ensure it s visible

Core Concepts Ad engagement Display the ad Ensure it s visible Leave on screen

Core Concepts Ad engagement Display the ad Ensure it s visible Leave on screen Allow interaction

iad Integration for Monetization Developer benefits Core concepts Improving performance App integration Testing

Optimizing Ad Performance Revenue starts with a great app

Optimizing Ad Performance Revenue starts with a great app App engagement time

Optimizing Ad Performance Revenue starts with a great app App engagement time Careful ad placement

Optimizing Ad Performance Revenue starts with a great app App engagement time Careful ad placement User loyalty

Optimizing Ad Performance Going global US UK FR DE IT MX HK ES JP CA AU NZ IE TW

Optimizing Ad Performance Going global Market to countries where iad is available US UK FR DE IT MX HK ES JP CA AU NZ IE TW

Optimizing Ad Performance Going global Market to countries where iad is available Localize your apps US UK FR DE IT MX HK ES JP CA AU NZ IE TW

Optimizing Ad Performance Ad placement is important

Optimizing Ad Performance Ad placement is important Recognize high-use areas

Optimizing Ad Performance Ad placement is important Recognize high-use areas Avoid accidental taps

Optimizing Ad Performance Ad placement is important Recognize high-use areas Avoid accidental taps User context is important

Optimizing Ad Performance Why does my revenue fluctuate?

Optimizing Ad Performance Why does my revenue fluctuate? Consumer spending is seasonal Consumer spending Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Optimizing Ad Performance Why does my revenue fluctuate? Consumer spending is seasonal Advertising spending tracks consumer spending Consumer spending Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Optimizing Ad Performance Why does my revenue fluctuate? Consumer spending is seasonal Advertising spending tracks consumer spending Market accordingly: Start of summer Back to school Holiday seasons Consumer spending Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Optimizing Ad Performance Virtuous cycle Impressions Ads Tap-Throughs Fill-Rate

Optimizing Ad Performance Virtuous cycle Impressions Ads Tap-Throughs Fill-Rate

iad Integration for Monetization Developer benefits Core concepts Improving performance App integration Testing

Ad Formats Four options for integration Banner Interstitial Medium Rect Pre-Roll

Banner Banner Interstitial Medium Rect Pre-Roll

Banner

Banner Slim device width view

Banner Slim device width view Placed at bottom of content

Banner Slim device width view Placed at bottom of content Continuous ad loading

Banner Slim device width view Placed at bottom of content Continuous ad loading Fullscreen on tap

Banner Slim device width view Placed at bottom of content Continuous ad loading Fullscreen on tap iphone and ipad support

Banner Basic integration Link iad framework #import <iad/iad.h>! MyViewController *myviewcontroller =... myviewcontroller.candisplaybannerads = YES;

Banner Basic integration Link iad framework Import iad header Configure view controllers #import <iad/iad.h>! MyViewController *myviewcontroller =... myviewcontroller.candisplaybannerads = YES;

Banner Loading an ad Root View

Banner Loading an ad.view becomes.originalcontentview Wrapped Root original View content view

Banner Loading an ad.view becomes.originalcontentview Ad requests sent Unloaded Loaded Ad Ad Request Wrapped Root original View content view

Banner Loading an ad.view becomes.originalcontentview Ad requests sent Banner loads Loaded Ad Ad Request Wrapped Root original View content view

Banner Loading an ad.view becomes.originalcontentview Ad requests sent Banner loads Banner moves on-screen and Resized originalcontentview resizes Ad Ad Request original content Root View view Loaded

Banner Handling interaction Loaded

Banner Handling interaction Fullscreen ad on tap Loaded

Banner Handling interaction Fullscreen ad on tap Pause activity in -viewwilldisappear: Loaded

Banner Handling interaction Fullscreen ad on tap Pause activity in -viewwilldisappear: Resume activity in -viewdidappear: Loaded

Banner Unloading an ad Wrapped original content Root View view Loaded

Banner Unloading an ad Banner moves off-screen Unloaded Loaded Wrapped original content Root View view

Banner Unloading an ad Banner moves off-screen.originalcontentview resized Unloaded Loaded Wrapped Wrapped original content Root original View view content view

Banner Controlling display Control ad visibility based on app state // Game started viewcontroller.candisplaybannerads = NO;! // Game paused, menu showing viewcontroller.candisplaybannerads = YES;

Banner Controlling display Control ad visibility based on app state Hide when necessary // Game started viewcontroller.candisplaybannerads = NO;! // Game paused, menu showing viewcontroller.candisplaybannerads = YES;

Banner Controlling display Control ad visibility based on app state Hide when needed Remember to re-enable! // Game started viewcontroller.candisplaybannerads = NO;! // Game paused, menu showing viewcontroller.candisplaybannerads = YES;

Interstitial Banner Interstitial Medium Rect Pre-Roll

Interstitial

Interstitial Immediate fullscreen display

Interstitial Immediate fullscreen display ipad since ios 4.3

Interstitial Immediate fullscreen display ipad since ios 4.3 iphone in ios 7

Interstitial Automatic presentation nextcontroller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyAutomatic;! [navigationcontroller pushviewcontroller:nextcontroller animated:yes]; Current View Controller Next View Controller

Interstitial Automatic presentation nextcontroller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyAutomatic;! [navigationcontroller pushviewcontroller:nextcontroller animated:yes]; Current View Controller Next View Controller

Interstitial Automatic presentation nextcontroller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyAutomatic;! [navigationcontroller pushviewcontroller:nextcontroller animated:yes]; Current View Controller Next View Controller

Interstitial Automatic presentation nextcontroller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyAutomatic;! [navigationcontroller pushviewcontroller:nextcontroller animated:yes]; Current Next View Controller

Interstitial Manual presentation controller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyManual;! [controller requestinterstitialadpresentation]; Single View Controller App

Interstitial Manual presentation controller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyManual;! [controller requestinterstitialadpresentation]; Single View Controller App

Interstitial Manual presentation controller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyManual;! [controller requestinterstitialadpresentation]; Single View Controller App

Interstitial Manual presentation controller.interstitialpresentationpolicy = ADInterstitialPresentationPolicyManual;! [controller requestinterstitialadpresentation]; Single View Controller App

Interstitial Preparing for presentation

Interstitial Preparing for presentation Don t miss early impressions! - (BOOL)application:(UIApplication *)application didfinishlaunchingwithoptions:(nsdictionary *)launchoptions {... [UIViewController prepareinterstitialads];... }

Demo David Wilson ios Apps and Frameworks

Best Practices Banners and interstitials

Best Practices Banners and interstitials Set.canDisplayBannerAds and.interstitialpresentationpolicy on your controllers

Best Practices Banners and interstitials Set.canDisplayBannerAds and.interstitialpresentationpolicy on your controllers Remember to use.originalcontentview

Best Practices Banners and interstitials Set.canDisplayBannerAds and.interstitialpresentationpolicy on your controllers Remember to use.originalcontentview Pick the right transitions for Interstitials

Best Practices Banners and interstitials Set.canDisplayBannerAds and.interstitialpresentationpolicy on your controllers Remember to use.originalcontentview Pick the right transitions for Interstitials Be consistent throughout your navigation stack

IAB Medium Rectangle Banner Interstitial Medium Rect Pre-Roll

IAB Medium Rectangle aaaa=== aaaaaaaa=aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa===== aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaa

IAB Medium Rectangle Positioned inline baaa=== aaaaaaaa=aaaaaaaa aaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa===== aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaa

IAB Medium Rectangle Positioned inline Standardized IAB size baaa=== aaaaaaaa=aaaaaaaa aaaaaaaaa 250px aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaa 300px aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa===== aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaa

IAB Medium Rectangle Positioned inline Standardized IAB size Automatic cycling baaa=== aaaaaaaa=aaaaaaaa aaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa===== aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaa

IAB Medium Rectangle Positioned inline Standardized IAB size Automatic cycling Fullscreen ad on tap baaa=== aaaaaaaa=aaaaaaaa aaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa===== aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaa

IAB Medium Rectangle Positioned inline Standardized IAB size Automatic cycling Fullscreen ad on tap Introduced in ios 6 baaa=== aaaaaaaa=aaaaaaaa aaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa===== aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaa

IAB Medium Rectangle Positioned inline Standardized IAB size Automatic cycling Fullscreen ad on tap Introduced in ios 6 iphone in ios 8

IAB Medium Rectangle Positioned inline Standardized IAB size Automatic cycling Fullscreen ad on tap Introduced in ios 6 iphone in ios 8

Medium Rectangle Lifecycle

Medium Rectangle Lifecycle Create a banner

Medium Rectangle Lifecycle Create a banner Configure a delegate

Medium Rectangle Lifecycle Create a banner Configure a delegate Implement the delegate protocol

Medium Rectangle Lifecycle Create a banner Configure a delegate Implement the delegate protocol Show in -bannerviewdidloadad:

Medium Rectangle Lifecycle Create a banner Configure a delegate Implement the delegate protocol Show in -bannerviewdidloadad: Pause activity in -bannerviewactionshouldbegin:willleaveapplication:

Medium Rectangle Lifecycle Create a banner Configure a delegate Implement the delegate protocol Show in -bannerviewdidloadad: Pause activity in -bannerviewactionshouldbegin:willleaveapplication: Resume activity in -bannerviewactiondidfinish:

Medium Rectangle Lifecycle Create a banner Configure a delegate Implement the delegate protocol Show in -bannerviewdidloadad: Pause activity in -bannerviewactionshouldbegin:willleaveapplication: Resume activity in -bannerviewactiondidfinish: Hide in -bannerview:didfailtoreceiveadwitherror:

Medium Rectangle Creation #import <iad/iad.h>! @interface MyViewController : UIViewController <ADBannerViewDelegate> @end!! adview = [[ADBannerView alloc] initwithadtype:adadtypemediumrectangle];! adview.delegate = self;

Medium Rectangle Creation #import <iad/iad.h>! @interface MyViewController : UIViewController <ADBannerViewDelegate> @end!! adview = [[ADBannerView alloc] initwithadtype:adadtypemediumrectangle];! adview.delegate = self;

Medium Rectangle Creation #import <iad/iad.h>! @interface MyViewController : UIViewController <ADBannerViewDelegate> @end!! adview = [[ADBannerView alloc] initwithadtype:adadtypemediumrectangle];! adview.delegate = self;

Medium Rectangle Creation #import <iad/iad.h>! @interface MyViewController : UIViewController <ADBannerViewDelegate> @end!! adview = [[ADBannerView alloc] initwithadtype:adadtypemediumrectangle];! adview.delegate = self;

Medium Rectangle Loading and unloading Banner starts out unloaded Unloaded

Medium Rectangle Loading and unloading Banner starts out unloaded Move banner onscreen in -bannerviewdidloadad: Unloaded

Medium Rectangle Loading and unloading Banner starts out unloaded Move banner onscreen in -bannerviewdidloadad: Loaded

Medium Rectangle Loading and unloading Banner starts out unloaded Move banner onscreen in -bannerviewdidloadad: Loaded

Medium Rectangle Loading and unloading Banner starts out unloaded Move banner onscreen in -bannerviewdidloadad: Leave banner onscreen as long as it has an ad Loaded

Medium Rectangle Loading and unloading Banner starts out unloaded Move banner onscreen in -bannerviewdidloadad: Leave banner onscreen as long as it has an ad Unloaded Move banner offscreen in - bannerview:didfailtoreceiveadwitherror:

Medium Rectangle Loading and unloading Banner starts out unloaded Move banner onscreen in -bannerviewdidloadad: Leave banner onscreen as long as it has an ad Move banner offscreen in - bannerview:didfailtoreceiveadwitherror: Unloaded

Medium Rectangle Loading and unloading - (void)bannerviewdidloadad:(adbannerview *)banner { [self.view addsubview:banner]; [self.view layoutifneeded]; }! - (void)bannerview:(adbannerview *)banner didfailtoreceiveadwitherror:(nserror *)error { [banner removefromsuperview]; [self.view layoutifneeded]; }

Best Practice for Medium Rectangle

Best Practice for Medium Rectangle Great for reflowable content

Best Practice for Medium Rectangle Great for reflowable content Fullscreen ad on tap

Best Practice for Medium Rectangle Great for reflowable content Fullscreen ad on tap Pause activity in -bannerviewactionshouldbegin:willleaveapplication:

Best Practice for Medium Rectangle Great for reflowable content Fullscreen ad on tap Pause activity in -bannerviewactionshouldbegin:willleaveapplication: Resume activity in -bannerviewactiondidfinish:

Video Pre-Roll Subtitle Banner Interstitial Medium Rect Pre-Roll

Video Pre-Roll

Video Pre-Roll Short video plays before content

Video Pre-Roll Short video plays before content Fullscreen ad on tap

Video Pre-Roll Short video plays before content Fullscreen ad on tap Added in ios 7

Video Pre-Roll Short video plays before content Fullscreen ad on tap Added in ios 7 ios 7: MPMoviePlayerController

Video Pre-Roll Short video plays before content Fullscreen ad on tap Added in ios 7 ios 7: MPMoviePlayerController ios 8: AVPlayerViewController

Video Pre-Roll Short video plays before content Fullscreen ad on tap Added in ios 7 ios 7: MPMoviePlayerController ios 8: AVPlayerViewController iphone and ipad

Video Pre-Roll Setup and playback Link MediaPlayer and iad frameworks Import MediaPlayer and iad headers Create a player Play pre-roll video Play content video

Video Pre-Roll Setup and playback #import <MediaPlayer/MediaPlayer.h> #import <iad/iad.h>

Video Pre-Roll Setup and playback #import <MediaPlayer/MediaPlayer.h> #import <iad/iad.h>! movieplayer = [MPMoviePlayerController initwithcontenturl:contenturl];! [self.view addsubview:movieplayer.view]; [self.view layoutifneeded];

Video Pre-Roll Setup and playback #import <MediaPlayer/MediaPlayer.h> #import <iad/iad.h>! movieplayer = [MPMoviePlayerController initwithcontenturl:contenturl];! [self.view addsubview:movieplayer.view]; [self.view layoutifneeded];! [movieplayer playprerolladwithcompletionhandler:^(nserror *error) { // Check if error is non-nil during development [movieplayer play]; }];

Video Pre-Roll AVKit #import <AVKit/AVKit> #import <iad/iad.h>! moviecontroller = [AVPlayerViewController new]; [moviecontroller setplayer:player]; [self addchildviewcontroller:moviecontroller]; [self.view addsubview:moviecontroller.view]; [self.view layoutifneeded];! [moviecontroller playprerolladwithcompletionhandler:^(nserror *error) { // Check if error is non-nil during development [player play]; }];

Video Pre-Roll Preparing for playback

Video Pre-Roll Preparing for playback Don t miss early impressions!

Video Pre-Roll Preparing for playback Don t miss early impressions! Start ad requests early - (BOOL)application:(UIApplication *)application didfinishlaunchingwithoptions:(nsdictionary *)launchoptions {... [MPMoviePlayerController prepareprerollads];... }

Video Pre-Roll Preparing for playback Don t miss early impressions! Start ad requests early - (BOOL)application:(UIApplication *)application didfinishlaunchingwithoptions:(nsdictionary *)launchoptions {... [AVPlayerViewController prepareprerollads];... }

Video Pre-Roll Best practices

Video Pre-Roll Best practices Don t play content video until ad completes

Video Pre-Roll Best practices Don t play content video until ad completes Defer notification handling MPMoviePlayerReadyForDisplayDidChangeNotification MPMoviePlayerLoadStateDidChangeNotification

Video Pre-Roll Best practices Don t play content video until ad completes Defer notification handling MPMoviePlayerReadyForDisplayDidChangeNotification MPMoviePlayerLoadStateDidChangeNotification Defer UI customization

Demo Video Pre-roll

iad Integration for Monetization Developer benefits Core concepts Improving performance App integration Testing

Testing Loading and unloading

Testing Loading and unloading Adjust fill rate

Testing Loading and unloading Adjust fill rate Adjust ad refresh rate

Testing Banner clipping Adjust fill rate Adjust ad refresh rate Ensure there s no clipping

Testing Banner clipping Adjust fill rate Adjust ad refresh rate Ensure there s no clipping

Testing Developer apps only Adjust fill rate Adjust ad refresh rate Ensure there s no clipping Only affects your apps

Testing Developer apps only Adjust fill rate Adjust ad refresh rate Ensure there s no clipping Only affects your apps

Monetize Generate revenue with rich media Ads Promote Drive downloads with iad Workbench

Monetize Generate revenue with rich media Ads Promote Drive downloads with iad Workbench

iad Integration for Monetization iad Workbench App Attribution App Audience Retargeting

iad Integration for Monetization iad Workbench App Attribution App Audience Retargeting

Quick Intro to iad Workbench iad s self-service advertising platform

Quick Intro to iad Workbench iad s self-service advertising platform http://iadworkbench.apple.com

Quick Intro to iad Workbench iad s self-service advertising platform http://iadworkbench.apple.com Create mobile ads by uploading your own banners or using built-in templates

Quick Intro to iad Workbench iad s self-service advertising platform http://iadworkbench.apple.com Create mobile ads by uploading your own banners or using built-in templates Reach users who are most likely to download your app

Quick Intro to iad Workbench iad s self-service advertising platform http://iadworkbench.apple.com Create mobile ads by uploading your own banners or using built-in templates Reach users who are most likely to download your app Manage campaign performance

iad Integration for Monetization iad Workbench App Attribution App Audience Retargeting

iad App Attribution Overview

iad App Attribution Overview Track app downloads that originate from iad

iad App Attribution Overview Track app downloads that originate from iad Measure effectiveness of campaigns

iad App Attribution Overview Track app downloads that originate from iad Measure effectiveness of campaigns Available with ios 7.1

iad App Attribution Overview Track app downloads that originate from iad Measure effectiveness of campaigns Available with ios 7.1 Enhanced in ios 8

iad App Attribution #include <iad/iad.h>! [[ADClient sharedclient] lookupadconversiondetails: ^(NSDate *apppurchasedate, NSDate *iadimpressiondate) {! }]; BOOL iadoriginatedinstallation = (iadimpressiondate!= nil);

iad App Attribution #include <iad/iad.h>! [[ADClient sharedclient] lookupadconversiondetails: ^(NSDate *apppurchasedate, NSDate *iadimpressiondate) {! }]; BOOL iadoriginatedinstallation = (iadimpressiondate!= nil);

iad App Attribution #include <iad/iad.h>! [[ADClient sharedclient] lookupadconversiondetails: ^(NSDate *apppurchasedate, NSDate *iadimpressiondate) {! }]; BOOL iadoriginatedinstallation = (iadimpressiondate!= nil);

iad App Attribution

iad App Attribution Dates will be nil when not attributed to iad or Limit Ad Tracking is enabled

iad App Attribution Dates will be nil when not attributed to iad or Limit Ad Tracking is enabled Avoid lookups on every launch

iad Integration for Monetization iad Workbench App Attribution App Audience Retargeting

App Audience Retargeting Overview

App Audience Retargeting Overview Group your users according to their activity

App Audience Retargeting Overview Group your users according to their activity Frequent in-app purchases

App Audience Retargeting Overview Group your users according to their activity Frequent in-app purchases High usage rate

App Audience Retargeting Overview Group your users according to their activity Frequent in-app purchases High usage rate Dormant users

App Audience Retargeting Overview Group your users according to their activity Frequent in-app purchases High usage rate Dormant users Target users with new ads based on these groups

App Audience Retargeting Overview Group your users according to their activity Frequent in-app purchases High usage rate Dormant users Target users with new ads based on these groups Each group describes a specific segment of users

App Audience Retargeting Game app developer examples

App Audience Retargeting Game app developer examples Promote the new ipad version of your app to all iphone users

App Audience Retargeting Game app developer examples Promote the new ipad version of your app to all iphone users Inform users of new features based on levels they ve reached

App Audience Retargeting Game app developer examples Promote the new ipad version of your app to all iphone users Inform users of new features based on levels they ve reached Re-engage dormant users based on when they last opened your app

App Audience Retargeting Retail app developer examples

App Audience Retargeting Retail app developer examples Remind users who have abandoned their shopping cart in your app

App Audience Retargeting Retail app developer examples Remind users who have abandoned their shopping cart in your app Send an offer to your loyal, most valuable customers

App Audience Retargeting Retail app developer examples Remind users who have abandoned their shopping cart in your app Send an offer to your loyal, most valuable customers Promote sales based on previous purchases

App Audience Retargeting How does it work?

App Audience Retargeting How does it work? Create Segments Identify and create segments on iad Workbench

App Audience Retargeting How does it work? Create Segments Update App Identify and create segments on iad Workbench Tag users in your app based on behavior

App Audience Retargeting How does it work? Create Segments Update App Retarget Customers Identify and create segments on iad Workbench Tag users in your app based on behavior Deliver customized ad messages

App Audience Retargeting #include <iad/iad.h>

App Audience Retargeting #include <iad/iad.h>! NSArray *segmentarray = @[ loyalusersegment, frequentpurchasessegment ];

App Audience Retargeting #include <iad/iad.h>! NSArray *segmentarray = @[ loyalusersegment, frequentpurchasessegment ];! [[ADClient sharedclient] addclienttosegments:segmentarray replaceexisting:no];

App Audience Retargeting #include <iad/iad.h>! NSArray *segmentarray = @[ loyalusersegment, frequentpurchasessegment ];! [[ADClient sharedclient] addclienttosegments:segmentarray replaceexisting:yes];

Summary

Best Practices Banner Interstitial Medium Rect Pre-Roll

Best Practices Take advantage of the different ad formats Banner Interstitial Medium Rect Pre-Roll

Best Practices Take advantage of the different ad formats Consider the user when placing ads Banner Interstitial Medium Rect Pre-Roll

Best Practices

Best Practices Optimize your app s ad performance

Best Practices Optimize your app s ad performance Take advantage of iad Workbench

Best Practices Optimize your app s ad performance Take advantage of iad Workbench

More Information Mark Malone iad Technologies Evangelist mgm@apple.com Documentation iad Programming Guide https://developer.apple.com/library/ios/documentation/ Apple Developer Forums Integrating iad Banners https://devforums.apple.com/community/ios/connected/iadint

Related Sessions The New itunes Connect Presidio Wednesday 10:15AM What s New in iad Workbench Nob Hill Thursday 9:00AM

Labs iad Technologies Lab Media Lab A Wednesday 4:30PM iad Technologies Lab Media Lab B Thursday 10:15AM itunes Connect Lab Service Lab A Thursday 3:15PM