在Unity中啟用Google廣告游戲,你需要做到如下所示:
要求
–Unity 4或者更高(鏈接:https://github.com/)
–谷歌移動(dòng)廣告SDK(鏈接:https://github.com/)
安裝
1.通過(guò)訪問(wèn)以下網(wǎng)址轉(zhuǎn)到谷歌的游戲開(kāi)發(fā)者頁(yè)面:https://github.com/。
2.導(dǎo)航到頁(yè)面上的“Unity”部分。
3.在本節(jié)將有兩個(gè)按鈕(如“下載插件”和“查看源代碼”)。點(diǎn)擊“下載插件”按鈕。這將帶給你一個(gè)GitHub的頁(yè)面,你可以下載“谷歌移動(dòng)廣告'Unity包。查找并下載“GoogleMobileAds.unitypackage'文件。
4.導(dǎo)入“GoogleMobileAds.unitypackage”文件到Unity項(xiàng)目。例如在Unity,選擇資源>導(dǎo)入包>自定義包并找到GoogleMobileAdsPlugin.unitypackage。
5.點(diǎn)擊“導(dǎo)入”按鈕彈出。
6.重要提示:導(dǎo)入后,需要編輯“資源/插件/Android/AndroidManifest.xml”文件夾內(nèi)的“AndroidManifest.xml”文件。
例如更改以下行
<meta-data android:name="com.google.android.gms.version"
android:value="7327000"/>
改為
android:name="com.google.android.gms.ads.AdActivity"
在你的計(jì)算機(jī)上Android SDK文件夾中找到正確的正確的值,我的是以下幾點(diǎn):
C:ProgramFiles(x86)Androidandroid-sdkextrasgooglegoogle_play_serviceslibprojectgoogle-play-services_libresvaluesversion.xml
7.編輯默認(rèn)AndroidManifest.xml文件
<android_sdk>/extras/google/google_play_services/libproject/google-play-services_lib/有相同的值在AndroidManifest.xml文件中,否則,你會(huì)得到一個(gè)錯(cuò)誤。
8.從您的計(jì)算機(jī)添加了“谷歌播放服務(wù)庫(kù)”到項(xiàng)目中。你可以從你的電腦中拖動(dòng)下面的文件夾到Unity的Assets/Plugins/Android文件夾。
例如拖動(dòng)
<android_sdk>/extras/google/google_play_services/libproject/google-play-services_lib/到Unity的Assets/Plugins/Android文件夾。
9.現(xiàn)在嘗試構(gòu)建,如果做得正確,構(gòu)建應(yīng)該沒(méi)有任何錯(cuò)誤。
添加廣告
10.回到谷歌游戲開(kāi)發(fā)者頁(yè)面,你可以按照“Unity Plugin API”部分的說(shuō)明,請(qǐng)求創(chuàng)建一個(gè)新的腳本和一些基本的橫幅。添加主相機(jī)到你的Unity。
11.你可以從Google HelloWorld的例子使用GoogleMobileAdsDemoScript.cs演示腳本。
注意:一旦確保替換和Id而不是添加你的谷歌AdMob單元。所有三個(gè)地方
如:查找和替換你的AdMob單位Id
#if UNITY_ANDROID
string adUnitId=“ca-app-pub-9044402088937556/1721466523”;
#elif UNITY_IPHONE
string adUnitId=“ca-app-pub-9044402088937556/1721466523”;
#else
string adUnitId=“ca-app-pub-9044402088937556/1721466523”;
#endif
12.如果你使用的是“GoogleMobileAdsDemoScript.cs”示例文件,不打算使用testAds或者測(cè)試你的設(shè)備ID,你需要從如下示例中的谷歌源代碼進(jìn)行改變。
如:在“GoogleMobileAdsDemoScript.cs”——RequestBanner部分,
將bannerView.LoadAd(createAdRequest);改變?yōu)锳dRequest request=new AdRequest.Builder().Build();
bannerView.LoadAd(request);
13.如果您打算添加插播式廣告,那么你就需要做一樣的橫幅廣告。
14.打造你的游戲,你應(yīng)該可以看到現(xiàn)在的廣告。
注:如果你只是簽署了AdMob賬戶,可能需要一些時(shí)間來(lái)增加顯示。
你也可以使用這個(gè)adUnitId進(jìn)行測(cè)試:
ca-app-pub-9044402088937556/1721466523.這是我們的測(cè)試adUnitId之一。
下面是我遇到的一些錯(cuò)誤:
錯(cuò)誤1
–Error building Player:CommandInvokationFailure:Failed to re-package resources
AndroidManifest.xml:9:error:Error:No resource found that matches the given name(at‘value’with value‘integer/google_play_services_version’).
Fix:Go to your Goolge SDK folder and copy the value to manually add to to the AndroidManifest.xml file in your Unity3d AssetsPluginsAndroid folder
C:ProgramFiles(x86)Androidandroid-sdkextrasgooglegoogle_play_serviceslibprojectgoogle-play-services_libresvaluesversion.xml
例如:
將<activity android:name="com.inmobi.androidsdk.IMBrowserActivity"
android:configChanges="keyboardHidden|orientation|keyboard|smallestScreenSize|screenSize"
改為<activity android:name="com.baidu.mobads.AppActivity"android:configChanges="keyboard|keyboardHidden|orientation"/>
錯(cuò)誤2
–Error building Player:CommandInvokationFailure:Unable to merge android manifests
試著合并不兼容
/manifest/application/meta-data[name=com.google.android.gms.version]元素:
<元數(shù)據(jù)
android:NAME=“com.google.android.gms.version”
android:值=“6587000”>
<元數(shù)據(jù)
android:NAME=“com.google.android.gms.version”
++android:值=“整數(shù)/google_play_services_version”>
修復(fù):確保相同的值添加到Unity Assets文件夾下默認(rèn)的AndroidManifest.xml文件。
例如:
Assets->Plugins->Android->google-play-services_libAndroidManifest.xml