在Unity中啟用Google廣告游戲,你需要做到如下所示:
要求
–Unity 4或者更高(鏈接:https://github.com/)
–谷歌移動廣告SDK(鏈接:https://github.com/)
安裝
1.通過訪問以下網(wǎng)址轉(zhuǎn)到谷歌的游戲開發(fā)者頁面:https://github.com/。
2.導航到頁面上的“Unity”部分。
3.在本節(jié)將有兩個按鈕(如“下載插件”和“查看源代碼”)。點擊“下載插件”按鈕。這將帶給你一個GitHub的頁面,你可以下載“谷歌移動廣告'Unity包。查找并下載“GoogleMobileAds.unitypackage'文件。
4.導入“GoogleMobileAds.unitypackage”文件到Unity項目。例如在Unity,選擇資源>導入包>自定義包并找到GoogleMobileAdsPlugin.unitypackage。
5.點擊“導入”按鈕彈出。
6.重要提示:導入后,需要編輯“資源/插件/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"
在你的計算機上Android SDK文件夾中找到正確的正確的值,我的是以下幾點:
C:ProgramFiles(x86)Androidandroid-sdkextrasgooglegoogle_play_serviceslibprojectgoogle-play-services_libresvaluesversion.xml
7.編輯默認AndroidManifest.xml文件
<android_sdk>/extras/google/google_play_services/libproject/google-play-services_lib/有相同的值在AndroidManifest.xml文件中,否則,你會得到一個錯誤。
8.從您的計算機添加了“谷歌播放服務庫”到項目中。你可以從你的電腦中拖動下面的文件夾到Unity的Assets/Plugins/Android文件夾。
例如拖動
<android_sdk>/extras/google/google_play_services/libproject/google-play-services_lib/到Unity的Assets/Plugins/Android文件夾。
9.現(xiàn)在嘗試構(gòu)建,如果做得正確,構(gòu)建應該沒有任何錯誤。
添加廣告
10.回到谷歌游戲開發(fā)者頁面,你可以按照“Unity Plugin API”部分的說明,請求創(chuàng)建一個新的腳本和一些基本的橫幅。添加主相機到你的Unity。
11.你可以從Google HelloWorld的例子使用GoogleMobileAdsDemoScript.cs演示腳本。
注意:一旦確保替換和Id而不是添加你的谷歌AdMob單元。所有三個地方
如:查找和替換你的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或者測試你的設備ID,你需要從如下示例中的谷歌源代碼進行改變。
如:在“GoogleMobileAdsDemoScript.cs”——RequestBanner部分,
將bannerView.LoadAd(createAdRequest);改變?yōu)锳dRequest request=new AdRequest.Builder().Build();
bannerView.LoadAd(request);
13.如果您打算添加插播式廣告,那么你就需要做一樣的橫幅廣告。
14.打造你的游戲,你應該可以看到現(xiàn)在的廣告。
注:如果你只是簽署了AdMob賬戶,可能需要一些時間來增加顯示。
你也可以使用這個adUnitId進行測試:
ca-app-pub-9044402088937556/1721466523.這是我們的測試adUnitId之一。
下面是我遇到的一些錯誤:
錯誤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"/>
錯誤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”>
修復:確保相同的值添加到Unity Assets文件夾下默認的AndroidManifest.xml文件。
例如:
Assets->Plugins->Android->google-play-services_libAndroidManifest.xml