在Unity中啓用Google廣告遊戲,你須要作到以下所示:
要求
– Unity 4或者更高(連接:https://github.com/)
– 谷歌移動廣告SDK(連接:https://github.com/)
安裝
1.經過訪問如下網址轉到谷歌的遊戲開發者頁面:https://github.com/。
2.導航到頁面上的「Unity」部分。
3.在本節將有兩個按鈕(如「下載插件」和「查看源代碼」)。點擊「下載插件」按鈕。這將帶給你一個GitHub的頁面,你能夠下載「谷歌移動廣告'Unity包。查找並下載「GoogleMobileAds.unitypackage'文件。
4.導入「GoogleMobileAds.unitypackage」文件到Unity項目。例如在Unity,選擇資源>導入包>自定義包並找到GoogleMobileAdsPlugin.unitypackage。
5.點擊「導入」按鈕彈出。
6.重要提示:導入後,須要編輯「資源/插件/Android/ AndroidManifest.xml」文件夾內的「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)\Android\android-sdk\extras\google\google_play_services\libproject\google-play-services_lib\res\values\version.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.如今嘗試構建,若是作得正確,構建應該沒有任何錯誤。
添加廣告
10.回到谷歌遊戲開發者頁面,你能夠按照「Unity Plugin API」部分的說明, 請求建立一個新的腳本和一些基本的橫幅。添加主相機到你的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); 改變爲AdRequest request = new AdRequest.Builder().Build();
bannerView.LoadAd(request);
13.若是您打算添加插播式廣告,那麼你就須要作同樣的橫幅廣告。
14.打造你的遊戲,你應該能夠看到如今的廣告。
注:若是你只是簽署了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 Assets\Plugins\Android folder
C:\ProgramFiles(x86)\Android\android-sdk\extras\google\google_play_services\libproject\google-play-services_lib\res\values\version.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]元素:
<元數據
@android:NAME =「com.google.android.gms.version」
@android:值=「6587000」>
<元數據
@android:NAME =「com.google.android.gms.version」
++@android:值=「@整數/ google_play_services_version」>
修復:確保相同的值添加到Unity Assets文件夾下默認的AndroidManifest.xml文件。
例如:
Assets->Plugins->Android->google-play-services_lib\AndroidManifest.xmlandroid