[英]Prevent reaching 65k methods in Android
外部庫的每一次未考慮使用都會導致Gradle錯誤,導致達到65k方法。 因此,我想知道什么是最好的解決方案,而我不想考慮使用Proguard自定義設置。
我想到的(當然,如果我們使用的是開放源代碼庫)只是下載代碼並將其手動放入我們的項目中。 然后,我們可以刪除未使用的類和方法。 看起來我們在扮演Proguard的角色,而且很耗時。
題
對於創建帶有許多庫的項目的最佳實踐,我將深表感謝。
注意:我現在想停止考慮Proguard自定義設置,因為它經常產生警告,而忽略它們,例如-dontwarn
對我來說-dontwarn
。 另外,我有點擔心使用MultiDex支持,因此不建議使用。
gradle可以做的一件事是非常明確地說明要包含的代碼模塊。
例如:
compile 'com.google.android.gms:play-services:8.4.0'
不僅會包含更多內容...
compile 'com.google.android.gms:play-services-location:8.4.0'
通常,最好讓gradle管理外部依賴項。 最大的原因是,您可以放心,您可以獲得與特定版本相關聯的代碼的快照。 如果您只是手動導入代碼,則很容易忘記正在使用哪個版本的代碼。 修改(或有選擇地包含)來自第三方的代碼的最大風險是,當第三方更新其代碼時,可能是要修復由新版本的Android引起的主要錯誤,並且其中包含的一些更改會破壞您的手動調整。 現在,與將其作為gradle依賴項包括在內相比,您面臨的問題更加復雜。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.