Admob Unity插件簡介
Admob Unity插件提供了一種將admob廣告集成到Unity3D Game和u3d應(yīng)用中的方法。您可以將其用于具有相同c?;騤s代碼的Unity iOS和Android App。
是Unity3d的Admob SDK插件,此插件使js和c#開發(fā)人員更容易在Unity3d游戲中添加Google廣告,支持iOS和Android,支持admob插頁式廣告和橫幅
Admob Unity插件說明
Google移動廣告SDK是Google移動廣告中最新一代的產(chǎn)品,具有完善的廣告格式和簡化的API,可訪問移動廣告網(wǎng)絡(luò)和廣告解決方案。該SDK使Unity移動應(yīng)用程序開發(fā)人員能夠最大程度地利用本機(jī)移動應(yīng)用程序獲利。
該存儲庫包含Google Mobile Ads Unity插件的源代碼。該插件使Unity開發(fā)人員可以輕松地在Android和iOS應(yīng)用上投放Google移動廣告,而無需編寫Java或Objective-C代碼。該插件提供了一個C#接口,用于請求Unity項(xiàng)目中C#腳本使用的廣告。
Unity Admob插件功能
一個插件支持的平臺:
·Android,通過SDK v18.3.0(Google Play服務(wù)平臺的一部分)
·iOS,通過SDK v7.53
·支持所有本地事件
·AdRequest定位方法,例如子級定位,測試模式
·不需要更改Android包名稱
·非常簡單的API
·支持非個性化廣告
廣告類型:
·標(biāo)語(所有標(biāo)語類型和自定義標(biāo)語尺寸)
·插頁式廣告(文字,圖片,視頻)
·獎勵視頻
·進(jìn)階原生廣告
下載Admob Unity插件
需要AdmobPluginRes/GoogleMobileAds.framework和admob_unity_plugin.unitypackage。請
從Admob Unity3d插件項(xiàng)目主頁https://github.com/unity-plugins/Unity-Admob下載這些文件,
或者下載所有Unity的admob插件項(xiàng)目https://github.com/unity-plugins/Unity-Admob/archive/master.zip
安裝Admob Unity
1.在Unity編輯器中打開您的項(xiàng)目。
2.導(dǎo)航到Assets->Import Package->Custom Package。
3.選擇admob_unity_plugin.unitypackage文件。
4.通過選擇Import導(dǎo)入admobdemo.cs(示例腳本)以外的所有文件。確保檢查與文件的任何沖突。
您可以通過下載文件安裝并將文件夾插件中的文件直接復(fù)制到Unity3d項(xiàng)目中,
Unity插件Wiki和文檔
·講解(https://github.com/unity-plugins/Unity-Admob/wiki/How-to-Use-Admob-Plugin-for-Unity)
·API(https://github.com/unity-plugins/Unity-Admob/wiki/Admob-Unity-Plugin-API)
·文獻(xiàn)(https://github.com/unity-plugins/Unity-Admob/wiki/Admob-Unity-Plugin-Document)
快速開始
編輯AndroidManifest.xml并配置Admob APP ID
admob從17.0版開始要求此配置,如果未配置,APP將會崩潰。在應(yīng)用中添加元數(shù)據(jù)標(biāo)記并將值設(shè)置為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>
配置導(dǎo)出的Xcode項(xiàng)目,構(gòu)建設(shè)置->其他鏈接器標(biāo)志,添加標(biāo)志-ObjC
1.Init Admob Unity插件
創(chuàng)建AC#腳本,將腳本拖放到場景中的對象上,在腳本文件中添加以下代碼
using admob;Admob.Instance().initSDK(new AdProperties());//admob id configed in meta,not support in code any more
您可以按如下設(shè)置admob屬性,您需要設(shè)置要設(shè)置的屬性
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標(biāo)語所需的最少代碼。
Admob.Instance().showBannerRelative("your admob banner unit id",AdSize.BANNER,AdPosition.BOTTOM_CENTER,0);
或者您可以通過設(shè)置橫幅名稱來創(chuàng)建另一個橫幅
Admob.Instance().showBannerAbsolute("ca-app-pub-3940256099942544/6300978111",AdSize.BANNER,20,220,"mybanner");
AdPosition類指定放置橫幅的位置。AdSize指定要顯示的女巫尺寸橫幅
3.刪除橫幅
默認(rèn)情況下,橫幅是可見的。要隱藏橫幅,請致電:
Admob.Instance().removeBanner();
4.如何將非頁內(nèi)廣告整合到Unity 3d應(yīng)用中?
這是創(chuàng)建插頁式廣告的最少代碼。
Admob.Instance().loadInterstitial("Your admob interstitial unit id");
與橫幅廣告不同,插頁式廣告需要明確顯示。在應(yīng)用程序的適當(dāng)停止點(diǎn),在顯示插頁式廣告之前檢查其是否準(zhǔn)備就緒:
if(Admob.Instance().isInterstitialReady()){Admob.Instance().showInterstitial();}
5.自定義Admob標(biāo)語廣告尺寸
除了AdSize上的常量之外,您還可以創(chuàng)建自定義尺寸:
//Create a 250x250 banner.AdSize adSize=new AdSize(250,250);Admob.Instance().showBannerAbsolute("Your admob banner id",adSize,0,30,"bannerName");
6.如何將Admob獎勵視頻集成到Unity3d應(yīng)用中?
這是創(chuàng)建admob視頻的最少代碼。
Admob.Instance().loadRewardedVideo("ca-app-pub-3940256099942544/1712485313");
與插頁式視頻類似的視頻需要在您應(yīng)用中的適當(dāng)停止點(diǎn)明確顯示,請?jiān)陲@示視頻之前檢查視頻是否已準(zhǔn)備就緒:
if(Admob.Instance().isRewardedVideoReady()){Admob.Instance().showRewardedVideo();}
7.在iOS和Android App中顯示Admob原生高級廣告
這是顯示admob標(biāo)語所需的最少代碼。這是通過Admob原生廣告高級版(統(tǒng)一)實(shí)現(xiàn)的
Admob.Instance().showNativeBannerRelative("Your native banner id",new AdSize(360,100),AdPosition.BOTTOM_CENTER);
8.廣告活動
這兩個橫幅和間質(zhì)性包含您可以注冊相同的廣告活動。在這里,我們將演示在插頁式廣告上設(shè)置廣告事件,并在加載成功時顯示插頁式廣告:
Admob.Instance().interstitialEventHandler+=onInterstitialEvent;void onInterstitialEvent(string eventName,string msg){Debug.Log("handler onAdmobEvent---"+eventName+""+msg);if(eventName==AdmobEvent.onAdLoaded){Admob.Instance().showInterstitial();}}
您只需要注冊您關(guān)心的事件。
Unity Admob演示用法
1.將AdmobUnityPlugin.unitypackage導(dǎo)入到您的Unity項(xiàng)目中
2.將Admobdemo.cs從AdmobPluginRes復(fù)制到您的統(tǒng)一項(xiàng)目/資產(chǎn)dic
3.將admobdemo.cs附加到主攝像頭
4.在admobdemo.cs中編輯admob ID
5.在您的設(shè)備中構(gòu)建并運(yùn)行
6.在xcode中添加-ObjC標(biāo)志其他鏈接器標(biāo)志7在Xcode Info.plist中添加meta應(yīng)用程序密鑰
GADApplicationIdentifier ca-app-pub-xxxxxxxxxxxxxxxxxx?xxxxxxxxxx
重要提示
1.如果您未配置AndroidManifest.xml,則應(yīng)用將崩潰
2.如果不添加-ObjC標(biāo)志,應(yīng)用程序?qū)⒈罎?/span>
3.如果您未在Info.plist中添加GADApplicationIdentifier,則應(yīng)用程序?qū)⒈罎?/span>
4.將admob附加到場景中的對象,在調(diào)用admob fun之前初始化admob
屏幕截圖