Admob Unity外掛介紹及接入教程

meiziao發表於2020-03-18

Admob Unity外掛簡介

Admob Unity外掛提供了一種將admob廣告整合到Unity3D Game和u3d應用中的方法。您可以將其用於具有相同c#或js程式碼的Unity iOS和Android App。

是Unity3d的Admob SDK外掛,此外掛使js和c#開發人員更容易在Unity3d遊戲中新增Google廣告,支援iOS和Android,支援admob插頁式廣告和橫幅

Admob Unity外掛說明

Google移動廣告SDK是Google移動廣告中最新一代的產品,具有完善的廣告格式和簡化的API,可訪問移動廣告網路和廣告解決方案。該SDK使Unity移動應用程式開發人員能夠最大程度地利用本機移動應用程式獲利。

該儲存庫包含Google Mobile Ads Unity外掛的原始碼。該外掛使Unity開發人員可以輕鬆地在Android和iOS應用上投放Google移動廣告,而無需編寫Java或Objective-C程式碼。該外掛提供了一個C#介面,用於請求Unity專案中C#指令碼使用的廣告。

Unity Admob外掛功能

一個外掛支援的平臺:

  •  Android,透過SDK v18.3.0(Google Play服務平臺的一部分)
  •  iOS,透過SDK v7.53
  •  支援所有本地事件
  •  AdRequest定位方法,例如子級定位,測試模式
  •  不需要更改Android包名稱
  •  非常簡單的API
  •  支援非個性化廣告

廣告型別:

  •  標語(所有標語型別和自定義標語尺寸)
  •  插頁式廣告(文字,圖片,影片)
  •  獎勵影片
  •  進階原生廣告

下載Admob Unity外掛

需要AdmobPluginRes / GoogleMobileAds.framework和admob_unity_plugin.unitypackage。請
從Admob Unity3d外掛專案主頁  下載這些檔案,
或者下載所有Unity的admob外掛專案

安裝Admob Unity

  1. 在Unity編輯器中開啟您的專案。
  2. 導航到 Assets-> Import Package-> Custom Package
  3. 選擇admob_unity_plugin.unitypackage檔案。
  4. 透過選擇 Import匯入 admobdemo.cs(示例指令碼)以外的所有檔案。確保檢查與檔案的任何衝突。

您可以透過下載檔案安裝並將資料夾 外掛中的檔案直接複製到Unity3d專案中,

Unity外掛Wiki和文件

快速開始

編輯AndroidManifest.xml並配置Admob APP ID

admob從17.0版開始要求此配置,如果未配置, APP將會崩潰。在應用中新增後設資料標記並將值設定為admob appid

 <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxxxx~xxxxxxxxxxxx"/>

樣例程式碼

 <application android:theme="@style/UnityThemeSelector" android:icon="@drawable/app_icon" android:label="@string/app_name" > <activity android:name="com.unity3d.player.UnityPlayerActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-3940256099942544~3347511713"/> </application>

編輯Info.plist,新增appid

<key>GADApplicationIdentifier</key> <string>ca-app-pub-xxxxxxxxxxxxxxxxxxxxxx~xxxxxxxxxxxxxx</string>

配置匯出的Xcode專案,構建設定->其他連結器標誌,新增標誌-ObjC 

1.Init Admob Unity外掛

建立AC#指令碼,將指令碼拖放到場景中的物件上,在指令碼檔案中新增以下程式碼

using admob; Admob.Instance().initSDK(new AdProperties());//admob id configed in meta,not support in code any more

您可以按如下設定admob屬性,您需要設定要設定的屬性

 AdProperties adProperties = new AdProperties(); adProperties.isTesting(true);//true for test ads adProperties.isAppMuted(true); adProperties.isUnderAgeOfConsent(false); adProperties.appVolume(100); adProperties.maxAdContentRating(AdProperties.maxAdContentRating_G); string[] keywords = { "key1", "key2", "key3" }; adProperties.keyworks(keywords);

2.在Unity App中新增Admob Banner

這是顯示admob標語所需的最少程式碼。

Admob.Instance().showBannerRelative("your admob banner unit id",AdSize.BANNER, AdPosition.BOTTOM_CENTER, 0);

或者您可以透過設定橫幅名稱來建立另一個橫幅

Admob.Instance().showBannerAbsolute("ca-app-pub-3940256099942544/6300978111",AdSize.BANNER, 20, 220,"mybanner");

AdPosition類指定放置橫幅的位置。AdSize指定要顯示的女巫尺寸橫幅

3.刪除橫幅

預設情況下,橫幅是可見的。要隱藏橫幅,請致電:

Admob.Instance().removeBanner();

4.如何將非頁內廣告整合到Unity 3d應用中?

這是建立插頁式廣告的最少程式碼。

Admob.Instance().loadInterstitial("Your admob interstitial unit id");

與橫幅廣告不同,插頁式廣告需要明確顯示。在應用程式的適當停止點,在顯示插頁式廣告之前檢查其是否準備就緒:

if (Admob.Instance().isInterstitialReady()) { Admob.Instance().showInterstitial(); }

5,自定義Admob標語廣告尺寸

除了 AdSize上的常量 之外,您還可以建立自定義尺寸:

//Create a 250x250 banner. AdSize adSize = new AdSize(250, 250); Admob.Instance().showBannerAbsolute("Your admob banner id",adSize,0,30,"bannerName");

6.如何將Admob獎勵影片整合到Unity3d應用中?

這是建立admob影片的最少程式碼。

Admob.Instance().loadRewardedVideo("ca-app-pub-3940256099942544/1712485313");

與插頁式影片類似的影片需要在您應用中的適當停止點明確顯示,請在顯示影片之前檢查影片是否已準備就緒:

if (Admob.Instance().isRewardedVideoReady()) { Admob.Instance().showRewardedVideo(); }

7,在iOS和Android App中顯示Admob原生高階廣告

這是顯示admob標語所需的最少程式碼。這是透過Admob原生廣告高階版(統一)實現的

Admob.Instance().showNativeBannerRelative("Your native banner id",new AdSize(360,100), AdPosition.BOTTOM_CENTER);

8.廣告活動

這兩個 橫幅間質性包含您可以註冊相同的廣告活動。在這裡,我們將演示在插頁式廣告上設定廣告事件,並在載入成功時顯示插頁式廣告:

Admob.Instance().interstitialEventHandler += onInterstitialEvent; void onInterstitialEvent(string eventName, string msg) { Debug.Log("handler onAdmobEvent---" + eventName + " " + msg); if (eventName == AdmobEvent.onAdLoaded) { Admob.Instance().showInterstitial(); } }

您只需要註冊您關心的事件。

Unity Admob演示用法

  1. 將AdmobUnityPlugin.unitypackage匯入到您的Unity專案中

  2. 將Admobdemo.cs從AdmobPluginRes複製到您的統一專案/資產dic

  3. 將admobdemo.cs附加到主攝像頭

  4. 在admobdemo.cs中編輯admob ID

  5. 在您的裝置中構建並執行

  6. 在xcode中新增-ObjC標誌其他連結器標誌7在Xcode Info.plist中新增meta應用程式金鑰

    GADApplicationIdentifier ca-app-pub-xxxxxxxxxxxxxxxxxx〜xxxxxxxxxx

重要提示

  1. 如果您未配置AndroidManifest.xml,則應用將崩潰
  2. 如果不新增-ObjC標誌,應用程式將崩潰
  3. 如果您未在Info.plist中新增GADApplicationIdentifier,則應用程式將崩潰
  4. 將admob附加到場景中的物件,在呼叫admob fun之前初始化admob

螢幕截圖


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69966880/viewspace-2681229/,如需轉載,請註明出處,否則將追究法律責任。

相關文章