在給項(xiàng)目接入廣告的過程中,碰到了一些問題
在接入AdMob時(shí),單獨(dú)的打包是沒有問題的,但一將facebook的資源和AdMob的資源同時(shí)導(dǎo)入到工程內(nèi),那問題就來了
遇到的第一個(gè)問題:jar包沖突
因?yàn)閷?dǎo)入進(jìn)來的資源都是aar文件你不知道他里面裝了哪些東西又和其他的哪些文件沖突,只有再打包過程中查看報(bào)錯(cuò)信息,去看編輯器的log才能看到到底是那個(gè)jar包沖突最簡單的方法當(dāng)然是del刪除掉,但是你會(huì)發(fā)現(xiàn)當(dāng)你刪除了其中一個(gè)文件之后,facebook和admob的所有資源都會(huì)被自動(dòng)刪除然后重新下載一份(不要去嘗試把a(bǔ)ar文件解壓然后把里邊文件刪除這樣操作打包同樣會(huì)報(bào)錯(cuò))
解決方法:找到?jīng)_突的aar文件然后在編輯器中選擇它然后去掉Android的那個(gè)勾這樣就可以了,就不會(huì)把這個(gè)打進(jìn)去了
第二個(gè)問題:Unity超過64k
trouble writing output:Too many method references to fit in one dex file:85969;max is 65536.You may try using multi-dex.If multi-dex is enabled then the list of classes for the main dex list is too large.
打包時(shí)候除了這樣一個(gè)錯(cuò)誤,超過65k的限制,Unity也提示讓我開啟Multi-dex
然后我就各種嘗試,
大概的思路都是:
復(fù)制unity安裝目錄下的mainTemplate.gradle文件到自己工程Assets/Plugins/Android目錄下,然后修改文件中的一些設(shè)置
然而這樣嘗試后并無什么反應(yīng),還是同樣的錯(cuò)誤
trouble writing output:Too many method references to fit in one dex file:85969;max is 65536.You may try using multi-dex.If multi-dex is enabled then the list of classes for the main dex list is too large.
前邊的設(shè)置基本相同都是復(fù)制mainTemplate.gradle文件,不同的是多修改了一個(gè)設(shè)置就是選擇Gradle打包方式
這樣打包確實(shí)沒有超出限制這樣的錯(cuò)誤了,但是更多的錯(cuò)誤卻跌然而來,解決一個(gè)又報(bào)一個(gè)。
當(dāng)我快要絕望的時(shí)候,突然看到了一篇文章說,只要選擇Gradle打包方式即可,我試了一下,果然是這樣,根本不用前邊哪些花里胡哨的配置這個(gè)文件那個(gè)文件的。驚喜來的太突然了吧