這幾天將Google Play上面的游戲更新一波,順便刷新下Admob SDK,結(jié)果當(dāng)接入GoogleMobileAds-v6.0.0版本的SDK后,打包會(huì)出現(xiàn)很多錯(cuò)誤,如下:

5個(gè)報(bào)錯(cuò).png
然后觀察這一段
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':launcher:processReleaseResources'.
> Android resource linking failed
D:\XXXX\項(xiàng)目名稱(chēng)\Temp\gradleOut\launcher\build\intermediates\merged_manifests\release\AndroidManifest.xml:39: AAPT: error: unexpected element <queries> found in <manifest>.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at [圖片上傳失敗...(image-7eb28f-1623034454970)]
https://help.gradle.org
BUILD FAILED in 2s
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
看這句
D:\XXXX\項(xiàng)目名稱(chēng)\Temp\gradleOut\launcher\build\intermediates\merged_manifests\release\AndroidManifest.xml:39: AAPT: error: unexpected element <queries> found in <manifest>.
說(shuō)這個(gè)路徑下的AndroidManifest有問(wèn)題,那就去看看吧,順藤摸瓜找到這個(gè)文件,找到這一行

manifest.png
看文件沒(méi)有問(wèn)題哈,實(shí)際上原因就是<queries>這個(gè)東東,因?yàn)楫?dāng)前版本的Gradle沒(méi)法識(shí)別這個(gè)清單元素,所以需要升級(jí)Gradle。

解決方案.png
那么怎么升級(jí)呢?只需要查看你Unity版本目前使用的gradle版本,將其版本修改為上述最近的補(bǔ)丁版本就可以啦!
首先,查找以下路徑,找到 C:\Unity安裝的位置\Editor\Data\PlaybackEngines\AndroidPlayer\Tools\GradleTemplates
找到baseProjectTemplate.gradle文件,將其打開(kāi),可以看到我當(dāng)前使用的版本為

改前版本號(hào).png
于是我修改為這個(gè)版本的補(bǔ)丁版本:3.4.3即可

改后版本號(hào).png
注意:此文件修改可能無(wú)法保存,可以另存為一份文件后再在此目錄上覆蓋當(dāng)前文件即可
然后再進(jìn)行打包測(cè)試就沒(méi)有問(wèn)題啦
額外一個(gè)小問(wèn)題:最新的admob SDK填寫(xiě)Admob ID后,當(dāng)你再次打開(kāi)項(xiàng)目時(shí),可能之前填寫(xiě)的Admob ID就不存在了,這是一個(gè)暫時(shí)發(fā)現(xiàn)的小bug,當(dāng)前版本SDK 沒(méi)有修復(fù)

admob id.png