[Unity] Admob 使用教學 (Android + iOS)



Environment

Unity: 5.2.2f1
Admob: 2.3.1

Android Overview

1. 申請 Admob 帳號
2. 建立新的廣告
3. 下載 Admob Plugins 並匯入專案
4. 複製 Google Play Service Library
5. Code Implement: AdmobManager
6. Code Details

iOS Overview

1. 下載 Admob iOS SDK
2. 確認 Frameworks
3. Enable Modules

Reference

Google Developers
Github: Google Mobile Ads SDK Plugins
Admob iOS 指南


Android Workflow

1. 申請 Admob 帳號

帳號只要選一個自己的 Gmail 即可

[Unity] Admob

接著要申請 AdWords,告訴 Google 你要透過何種方式收錢
如果有使用過 AdSense 的朋友,可以使用同一個帳號

[Unity] Admob

2. 建立新的廣告

大部份廣告的設定目前都差不多
如果已經上架的就可以直接搜尋您的 App 綁定
否則在測試階段就先給他一個名稱即可

[Unity] Admob

Admob 的廣告有橫幅和插頁式兩種
所謂插頁式就是全畫面的廣告

橫幅通常是常駐在畫面頂端或底部
插頁式則常應用於小遊戲進行數次後會跳出

[Unity] Admob

3. 下載 Admob Plugins
4. 複製 Google Play Service Library

照理講開發 Android 的應該都已經裝過 SDK 了
沒有的話,請先下載Android SDK Tools

有裝過 SDK 但沒下載 GPGS package的話
就打開 SDK Manager 去下載

GPGS Library

下載好後,將 Android\sdk\extras\google\google_play_services\libproject 的
google-play-services_lib 資料夾複製到專案的 Assets/Plugins/Android 下

5. Code Implement: AdmobManager

剪刀有寫了一個 AdmobManager 在 Github 上
歡迎直接下載取用或參考

/// Example:
m_admobManager = new AdmobManager();
m_admobManager.RequestInterstitial( ADMOB_ID, isTest );
m_admobManager.RequestBanner( ADMOB_ID, AdSize.Banner, AdPosition.Top, isTest );
6. Code Details

Admob 測試時需要提供 Device ID
否則他會當作正式處理,會有被停權的風險
但 Unity 中取得 Device ID 需要進行額外處理
因此有建立一個 AdmobHelper 來做這件事情

Admob 核心廣告元件只有兩個
使用上的 Api 大致都相同,只有建立時的參數不同而已
橫幅廣告:BannerView
插頁式廣告:InterstitialAd

// Test Device
AdRequest.Builder builder = new AdRequest.Builder();
builder.AddTestDevice( AdmobHelper.DeviceId );

// Create
m_banner = new BannerView( id, size, position );
m_banner.LoadAd( builder.Build() );

m_interstitial = new InterstitialAd( id );
m_interstitial.LoadAd( builder.Build() );

// Visibility
m_banner.Show();
m_interstitial.Hide();

// Events
m_interstitial.AdLoaded += OnInterstitalLoaded;

// Destroy
m_banner.Destroy();
m_interstitial.Destroy();

iOS Workflow

1. 下載 Admob iOS SDK
2. 確認 Frameworks

除了 GoogleMobileAds.framework 要加入之外
還有以下 Frameworks 需要確認

AdSupport
AudioToolbox
AVFoundation
CoreGraphics
CoreTelephony
EventKit
EventKitUI
MessageUI
StoreKit
SystemConfiguration

3. Enable Modules

若遇到 Use of '@import' when modules are disabled
需要到 Build Settings 下將它開啟

[Unity] Admob

[Unity] Admob


Test




歡迎您留言與分享!(Welcome for comments or sharing!)

Related Post:

Tagged on: