打包報錯Errors while building APK. You can find the errors in the 'Messages' view 問題解決

本來今天想打個包(之前也沒事 )做一下加固功能,遇見這樣一個問題
在這裏插入圖片描述
網上有一些博客,需要defaultConfig下添加multiDexEnabled true,這句話是幹什麼用的呢,就是分包,爲什麼需要分包呢,因爲工程的方法數超過了64k,詳見另外一篇文章Android工程方法數超過64K。這就說明我是有這句話的,而且看看報錯異常中確實有multi的字樣。而這個確實也是後來轉爲Android Studio後加的,所以基本問題就定位到這裏了。
所以去掉了這個分包功能(我知道去掉肯定會無法運行,只是想看看打包apk的時候會不會報這個error),事實證明,直接提示方法數超過64k,編譯不過,我尷尬了。

去看了看添加的gradle配置 已經有了丫
defaultConfig {

multiDexEnabled true
}
在這裏插入圖片描述

我又一次重新打包試試
出現新問題了
在這裏插入圖片描述
俗話說出現問題是好事,就怕 不出現問題就不好搞了

哎,仔細看看異常。 注意到了這句話

Error:java.lang.OutOfMemoryError: GC overhead limit exceeded

媽呀 OOM 內存泄露了,說明程序的內存不夠出現問題,或者系統給程序分配的內存太低。
然後 我就一頓百度

dexOptions {
    javaMaxHeapSize "4g"
}

啥意思呢 又是一頓百度丫
指定的最大大小,以字節爲單位的內存分配池。該值必須是1024的倍數大於2MB。追加字母k或K來表示千字節,m或M來表示兆字節。默認值是根據系統配置選擇在運行時。

加上
在這裏插入圖片描述
那就在打包試試吧
在這裏插入圖片描述
OK 成了

我的另一篇文章
Android 創建證書 或加固後更新簽名

發佈了45 篇原創文章 · 獲贊 38 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章