12/08/2018, 16:34

Android Studio build quá chậm, hãy thử ngay những cách sau nhé

Việc chuyển sang Android Studio với hệ thống build mới: Gradle hứa hẹn một tương lai tươi sáng khi Gradle chỉ build những phần thay đổi, do đó sẽ build nhanh hơn Ant trên Eclipse. Tuy nhiên, đời không như là mơ. Một ngày bạn nhận ra rằng bạn phải chờ rất lâu trong mỗi lần build app. Bạn quyết định ...

Việc chuyển sang Android Studio với hệ thống build mới: Gradle hứa hẹn một tương lai tươi sáng khi Gradle chỉ build những phần thay đổi, do đó sẽ build nhanh hơn Ant trên Eclipse. Tuy nhiên, đời không như là mơ. Một ngày bạn nhận ra rằng bạn phải chờ rất lâu trong mỗi lần build app. Bạn quyết định Google tìm giải pháp, và bạn tìm được bài viết này.Với 2 tùy chỉnh dưới đây, mình đã giảm được ~6 lần thời gian build

hông thường, khi build project của bạn, gradle sẽ cập nhật những thư viện cũ và thêm những thư viện mới (bạn chỉ định trong mục dependencies của file build.gradle). Việc truy cập mạng và kiểm tra cập nhật này cũng tốn kha khá thời gian, ngay cả khi bạn có một đường truyền vũ bão đi chăng nữa =)) Nên bạn có thể tắt chức năng này đi bằng cách: Trong Android Studio, vào File -> Settings -> Build, Execution, Deployment -> Build tool -> Gradle và tick vào tùy chọn Offline work. Việc làm này sẽ thêm tùy chọn --ofline trong gradle build, thông tin chi tiết bạn có thể xem tại gradle documentation LƯU Ý: Mỗi lần bạn thêm một thư viện mới trong dependencies, thì bạn bỏ tùy chọn Offline work đi để Gradle tải và cài đặt thư viện mới, xong rồi lần sau lại tiếp tục offline

Có thể bạn thừa biết, Android giới hạn dự án của bạn (bao gồm code hệ thống, code thư viện bên thứ 3, code của chính bạn) là 65536 phương thức và bạn phải nhờ đến sự trợ giúp của thư viện Multidex. Việc build với Multidex cũng ngốn thêm khoảng 40s cuộc đời bạn. Nguyên nhân chủ yếu dẫn đến sự vượt quá 65536 phương thức là do thư viện Google Play Service: compile 'com.google.android.gms:play-services:x.y.z' (thường bạn dùng trong việc Push notification, quảng cáo Admod, Login, Analytics…). May sao, từ phiên bản 6.5 trở đi, Google xẻ nhỏ các thư viện ra và bạn chỉ cần compile những thư viện nào mình dùng, nên bạn hãy xóa compile 'com.google.android.gms:play-services:x.y.z' và thay vào đó là thư viện mà mình cần dùng, ví dụ: com.google.android.gms:play-services-gcm:8.3.0 cho Push notification. Vậy là bạn đã giảm được kha khá phương thức không cần thiết (thằng Google Play Service ban đầu nó gần 30k phương thức lận             </div>
            
            <div class=

0