溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android開發導入項目報錯Ignoring InnerClasses attribute for an anonymous inner class怎么辦

發布時間:2021-07-12 11:36:52 來源:億速云 閱讀:218 作者:小新 欄目:移動開發

小編給大家分享一下Android開發導入項目報錯Ignoring InnerClasses attribute for an anonymous inner class怎么辦,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在安卓開發導入項目過程中,出現錯誤再所難免。最近導入項目就遇到如下錯誤,具體如下圖所示。

Android開發導入項目報錯Ignoring InnerClasses attribute for an anonymous inner class怎么辦

出現如上錯誤,最初設想先看下項目能不能運行。經嘗試可以完美的在windows系統上運行(雖然會出現如上的錯誤警告)。項目雖然在報警告的情況下,能在windows系統上運行,但一般Android項目都是基于Windows和OS X系統開發。于是猜想項目能不能同樣在OS X系統上運行呢?結果發現不能,必須要把這些錯誤警告解決才行。

最初根據上圖提示認為可能是對應的第三方jar包的問題。于是,分別替換了對應的第三方jar包。替換后,發現還是出現相同的問題。由此jar包問題被排除。經查找相應的資料說添加如下代碼能解決這個錯誤警告,報著半信半疑的態度開始試試。

找到項目下對應的proguard-rules.pro文件。如下圖所示。

Android開發導入項目報錯Ignoring InnerClasses attribute for an anonymous inner class怎么辦

在proguard-rules.pro文件中添加如下代碼(解釋:忽略內部類的一些屬性)。

-keepattributes EnclosingMethod

再次重新構建項目,運行發現然并卵。再次查找相關資料,資料顯示每個項目的Dex都有方法數的限制(上限65536,超過上限號稱應用爆棚),由此猜想會不會是Dex的方法數超過上限呢?同樣報著試試的態度,在項目的build.gradle文件中添加multiDexEnabled true代碼(解釋:設置多Dex可用)。

其具體情況如下圖所示

Android開發導入項目報錯Ignoring InnerClasses attribute for an anonymous inner class怎么辦

再次重構項目,運行,出現如下結果

Android開發導入項目報錯Ignoring InnerClasses attribute for an anonymous inner class怎么辦

由此項目可以在Windows上無錯誤運行,再次將項目導入Mac上,完美運行。Ignoring InnerClasses attribute for an anonymous inner class問題解決就介紹到此。

下面做下簡單的小結:

(1) 第一考慮是不是可以直接忽略第三方的屬性的錯誤警告,由此層層遞進發現問題。

(2) 出現Ignoring InnerClasses attribute for an anonymous inner class問題一般是第三方jar的問題引起的可能性很小,首先考慮是不是Dex越界問題。

(3) 將keepattributes EnclosingMethod去除,再次重構發現也不會出現Ignoring InnerClasses attribute for an anonymous inner class問題,由此進一步推斷主要是Dex越界問題引起Ignoring InnerClasses attribute for an anonymous inner class問題。如果導入項目遇到類似問題首先判斷是否是Dex越界引起。

以上是“Android開發導入項目報錯Ignoring InnerClasses attribute for an anonymous inner class怎么辦”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女