Android Studio 3.0 (Tháng 10 năm 2017)
Android Studio 3.0.0 là một bản phát hành chính có nhiều tính năng và điểm cải tiến mới.
Người dùng macOS: Nếu đang cập nhật phiên bản Android Studio cũ, thì bạn có thể thấy hộp thoại lỗi cập nhật cho biết "Some conflicts were found in the installation area" (Đã phát hiện một số xung đột trong vùng cài đặt). Bạn chỉ cần bỏ qua lỗi này và nhấp vào Cancel (Huỷ) để tiếp tục quá trình cài đặt.
Phiên bản 3.0.1 (Tháng 11 năm 2017)
Đây là bản cập nhật nhỏ cho Android Studio 3.0, bao gồm các bản sửa lỗi chung cùng các điểm cải thiện hiệu suất.
Trình bổ trợ Android cho Gradle 3.0.0
Trình bổ trợ Android cho Gradle mới có nhiều điểm cải tiến và tính năng mới. Tuy nhiên, trình bổ trợ này chủ yếu cải thiện hiệu suất bản dựng cho các dự án có nhiều mô-đun. Khi sử dụng trình bổ trợ mới cùng với các dự án có quy mô lớn này, bạn sẽ có những trải nghiệm sau đây:
- Thời gian của cấu hình bản dựng sẽ nhanh hơn do đã có giải pháp mới cho phần phụ thuộc bị chậm trễ.
- Giải pháp cho phần phụ thuộc có thể nhận biết biến thể chỉ dành cho các dự án và biến thể mà bạn đang tạo.
- Thời gian tạo bản dựng tăng dần nhanh hơn khi áp dụng các thay đổi đơn giản cho mã hoặc tài nguyên.
Lưu ý: Những điểm cải tiến này đòi hỏi phải có những thay đổi lớn để dừng API, DSL và hành vi của một số trình bổ trợ. Việc nâng cấp lên phiên bản 3.0.0 có thể đòi hỏi bạn phải thay đổi các tệp bản dựng và trình bổ trợ cho Gradle.
Phiên bản này cũng bao gồm các tính năng sau đây:
- Hỗ trợ dành cho Android 8.0.
- Hỗ trợ xây dựng các APK riêng biệt dựa trên tài nguyên về ngôn ngữ.
- Hỗ trợ các tính năng về ngôn ngữ Java 8 và thư viện Java 8 (không có trình biên dịch Jack).
- Hỗ trợ cho Thư viện hỗ trợ kiểm thử Android 1.0 (Phần mềm tiện ích kiểm thử Android và Android Test Orchestrator).
- Cải thiện tốc độ tạo bản dựng của cmake và ndk-build.
- Cải thiện tốc độ đồng bộ hoá Gradle.
- AAPT2 hiện được bật theo mặc định.
- Việc sử dụng
ndkCompile
sẽ bị hạn chế hơn. Thay vào đó, bạn nên chuyển sang sử dụng CMake hoặc ndk-build để biên dịch mã gốc mà bạn muốn đóng gói vào APK. Để tìm hiểu thêm, hãy đọc bài viết Di chuyển từ ndkcompile.
Để biết thêm thông tin về những thay đổi, hãy xem ghi chú phát hành của trình bổ trợ Android cho Gradle.
Nếu bạn đã sẵn sàng nâng cấp lên trình bổ trợ phiên bản mới, hãy xem bài viết Di chuyển sang trình bổ trợ Android cho Gradle 3.0.0.
Hỗ trợ Kotlin
Như đã công bố tại Google I/O năm 2017, ngôn ngữ lập trình Kotlin giờ đây chính thức được hỗ trợ trên Android. Vì vậy, với bản phát hành này, Android Studio sẽ hỗ trợ cho ngôn ngữ Kotlin để phát triển Android.
Bạn có thể đưa Kotlin vào dự án của mình bằng cách chuyển đổi một tệp Java thành Kotlin (nhấp vào Code > Convert Java File to Kotlin File (Mã > Chuyển đổi tệp Java thành tệp Kotlin)) hoặc bằng cách tạo một dự án mới có hỗ trợ Kotlin thông qua trình hướng dẫn New Project (Dự án mới).
Để bắt đầu, hãy đọc cách thêm Kotlin vào dự án của bạn.
Hỗ trợ các tính năng ngôn ngữ Java 8
Giờ đây, bạn có thể sử dụng một số tính năng ngôn ngữ Java 8 và sử dụng các thư viện được xây dựng bằng Java 8. Jack không còn là yêu cầu bắt buộc. Do đó, trước tiên, bạn nên tắt Jack để dùng dịch vụ hỗ trợ Java 8 được cải tiến tích hợp trong chuỗi công cụ mặc định.
Để cập nhật dự án nhằm hỗ trợ cho chuỗi công cụ ngôn ngữ Java 8 mới, hãy cập nhật tuỳ chọn Source Compatibility (Khả năng tương thích nguồn) và Target Compatibility (Khả năng tương thích đích) lên phiên bản 1.8 trong hộp thoại Project Structure (Cấu trúc dự án) (nhấp vào File > Project Structure (Tệp > Cấu trúc dự án)). Để tìm hiểu thêm, hãy đọc cách sử dụng các tính năng ngôn ngữ Java 8.
Trình phân tích tài nguyên Android
Trình phân tích tài nguyên Android mới thay thế công cụ Android Monitor và cung cấp một bộ công cụ mới để đo lường mức sử dụng CPU, bộ nhớ và mạng của ứng dụng theo thời gian thực. Bạn có thể thực hiện hoạt động tìm dấu vết phương thức dựa trên mẫu để xác định thời điểm thực thi mã, ghi lại tệp báo lỗi, xem quá trình phân bổ bộ nhớ và kiểm tra thông tin chi tiết về các tệp được truyền qua mạng.
Để mở, hãy nhấp vào View > Tool Windows > Android Profiler (Xem > Cửa sổ công cụ > Trình phân tích tài nguyên Android) (hoặc nhấp vào biểu tượng Android Profiler (Trình phân tích tài nguyên Android) trên thanh công cụ).
Tiến trình của sự kiện ở đầu cửa sổ cho thấy các sự kiện nhấn, các lượt nhấn phím và các thay đổi về hoạt động để bạn có thêm ngữ cảnh nhằm mục đích hiểu được các sự kiện về hiệu suất khác trong tiến trình.
Lưu ý: Chế độ xem Logcat cũng được di chuyển sang một cửa sổ riêng (trước đây, chế độ này có trong Android Monitor nhưng đã bị xoá).
Trong tiến trình tổng quan của Trình phân tích tài nguyên Android, hãy nhấp vào tiến trình CPU (BỘ XỬ LÝ TRUNG TÂM), MEMORY (BỘ NHỚ) hoặc NETWORK (MẠNG) để truy cập vào các công cụ tương ứng của trình phân tích tài nguyên.
Trình phân tích CPU
Trình phân tích CPU giúp bạn phân tích mức sử dụng luồng CPU của ứng dụng bằng cách kích hoạt một mẫu hoặc một dấu vết CPU được đo lường. Sau đó, bạn có thể khắc phục các sự cố về hiệu suất của CPU bằng cách sử dụng nhiều bộ lọc và khung hiển thị dữ liệu.
Để biết thêm thông tin, hãy xem Hướng dẫn của Trình phân tích CPU.
Trình phân tích bộ nhớ
Trình phân tích bộ nhớ giúp bạn xác định tình trạng rò rỉ bộ nhớ hay nhồi nhét bộ nhớ có thể khiến ứng dụng của bạn bị gián đoạn, bị treo và thậm chí gặp sự cố. Trình phân tích này cho bạn thấy biểu đồ theo thời gian thực về mức sử dụng bộ nhớ của ứng dụng, đồng thời cho phép bạn ghi lại tệp báo lỗi, buộc thu thập rác và theo dõi hoạt động phân bổ bộ nhớ.
Để biết thêm thông tin, hãy xem Hướng dẫn của Trình phân tích bộ nhớ.
Trình phân tích mạng
Trình phân tích mạng cho phép bạn theo dõi hoạt động mạng của ứng dụng, kiểm tra tải trọng của từng yêu cầu mạng và liên kết ngược lại mã đã tạo yêu cầu mạng đó.
Để biết thêm thông tin, hãy xem hướng dẫn của Trình phân tích mạng.
Phân tích và gỡ lỗi APK
Android Studio giờ đây sẽ cho phép bạn phân tích và gỡ lỗi mọi APK mà không cần phải tạo APK từ dự án Android Studio, miễn là APK được tạo để bật tính năng gỡ lỗi và bạn có quyền truy cập vào các tệp nguồn và biểu tượng gỡ lỗi.
Để bắt đầu, hãy nhấp vào Profile or debug APK (Phân tích hoặc gỡ lỗi APK) trên màn hình Chào mừng của Android Studio. Hoặc nếu bạn đã mở dự án, hãy nhấp vào File > Profile or debug APK (Tệp > Phân tích hoặc gỡ lỗi APK) trên thanh trình đơn. Thao tác này sẽ hiển thị các tệp APK đã giải nén nhưng không biên dịch ngược mã đó. Vì vậy, để thêm các điểm ngắt và xem dấu vết ngăn xếp đúng cách, bạn cần đính kèm tệp nguồn Java và biểu tượng gỡ lỗi gốc.
Để biết thêm thông tin, hãy xem bài viết Phân tích và gỡ lỗi APK được tạo sẵn.
Trình khám phá tệp trên thiết bị (Device File Explorer)
Trình khám phá tệp trên thiết bị phiên bản mới cho phép bạn kiểm tra hệ thống tệp của thiết bị đã kết nối và chuyển tệp giữa thiết bị và máy tính. Thao tác này sẽ thay thế công cụ hệ thống tệp có trong DDMS.
Để mở, hãy nhấp vào View > Tool Windows > Device File Explorer (Xem > Cửa sổ công cụ > Trình khám phá tệp trên thiết bị).
Để biết thêm thông tin, hãy xem hướng dẫn của Trình khám phá tệp trên thiết bị.
Hỗ trợ Ứng dụng tức thì
Dịch vụ hỗ trợ mới cho Ứng dụng Android tức thì giúp bạn tạo Ứng dụng tức thì trong dự án của mình bằng cách sử dụng 2 loại mô-đun mới: Mô-đun ứng dụng tức thì và Mô-đun tính năng (các loại mô-đun này đòi hỏi bạn phải cài đặt SDK Phát triển ứng dụng tức thì).
Android Studio cũng bao gồm cả thao tác mới để tái cấu trúc mô-đun nhằm giúp bạn thêm dịch vụ hỗ trợ cho Ứng dụng tức thì trong dự án hiện có. Ví dụ: nếu bạn muốn tái cấu trúc cho dự án của mình để đặt một số lớp trong mô-đun tính năng Ứng dụng tức thì, hãy chọn các lớp trong cửa sổ Project (Dự án) rồi nhấp vào Refactor > Modularize (Tái cấu trúc > Mô-đun hoá). Trong hộp thoại xuất hiện, hãy chọn mô-đun mà các lớp sẽ chuyển đến rồi nhấp vào OK.
Và khi đã sẵn sàng kiểm thử Ứng dụng tức thì, bạn có thể xây dựng và chạy mô-đun Ứng dụng tức thì trên một thiết bị đã kết nối bằng cách chỉ định URL của Ứng dụng tức thì đó trong các tuỳ chọn khởi chạy cấu hình chạy: Chọn Run > Edit Configurations (Chạy > Chỉnh sửa cấu hình), chọn mô-đun Ứng dụng tức thì rồi đặt URL trong mục Launch Options (Tuỳ chọn khởi chạy).
Để biết thêm thông tin, hãy xem bài viết Ứng dụng Android tức thì.
Mô-đun Android Things
Các mẫu Android Things mới trong trình hướng dẫn Dự án mới (New Project) và Mô-đun mới (New Module) giúp bạn bắt đầu phát triển cho các thiết bị IOT chạy hệ điều hành Android.
Để biết thêm thông tin, hãy xem cách tạo dự án Android Things.
Trình hướng dẫn về biểu tượng thích ứng
Giờ đây, Image Asset Studio sẽ hỗ trợ vectơ vẽ được và cho phép bạn tạo các biểu tượng trình chạy thích ứng cho Android 8.0 trong khi đồng thời tạo biểu tượng truyền thống (biểu tượng "Cũ") cho các thiết bị chạy phiên bản cũ.
Để bắt đầu, hãy nhấp chuột phải vào thư mục res trong dự án của bạn, sau đó nhấp vào New > Image Asset (Mới > Thành phần hình ảnh). Trong cửa sổ Asset Studio, hãy chọn Launcher Icons (Adaptive and Legacy) (Biểu tượng trình chạy (Thích ứng và Cũ)) làm loại biểu tượng.
compileSdkVersion
Lưu ý: Bạn phải đặt thành cấp 26 trở lên để sử dụng biểu tượng trình chạy thích ứng.
Để biết thêm thông tin, hãy đọc bài viết về Biểu tượng thích ứng.
Hỗ trợ các tài nguyên về phông chữ
Để hỗ trợ các tài nguyên mới về phông chữ trong Android 8.0, Android Studio sẽ cung cấp font resources selector (bộ chọn tài nguyên phông chữ) để giúp đưa các phông chữ vào ứng dụng hoặc định cấu hình dự án để tải phông chữ trên thiết bị xuống (khi có sẵn). Layout Editor cũng có thể xem trước phông chữ trong bố cục của bạn.
Để dùng thử các phông chữ có thể tải xuống, hãy đảm bảo rằng thiết bị hoặc trình mô phỏng đang chạy Dịch vụ Google Play phiên bản 11.2.63 trở lên. Để biết thêm thông tin, hãy đọc bài viết về Phông chữ có thể tải xuống.
Trợ lý lập chỉ mục ứng dụng Firebase
Trợ lý Firebase đã được cập nhật với hướng dẫn mới nhằm kiểm thử tính năng Lập chỉ mục ứng dụng. Để mở Trợ lý, hãy chọn Tools > Firebase (Công cụ > Firebase). Sau đó, chọn App Indexing > Test App Indexing (Lập chỉ mục ứng dụng > Kiểm thử tính năng lập chỉ mục ứng dụng).
Phần hướng dẫn sẽ bao gồm các nút mới để kiểm thử việc lập chỉ mục nội dung cá nhân và nội dung công khai:
- Ở bước 2, hãy nhấp vào Preview search results (Xem trước kết quả tìm kiếm) để xác minh rằng URL của bạn đang xuất hiện trong kết quả của Google Tìm kiếm.
- Ở bước 3, hãy nhấp vào Kiểm tra lỗi (Check for errors) để xác minh rằng các đối tượng có thể lập chỉ mục trong ứng dụng của bạn đã được thêm vào chỉ mục nội dung cá nhân.
Trợ lý về đường liên kết trong ứng dụng Android
Trợ lý về đường liên kết trong ứng dụng đã được cập nhật với các tính năng mới sau đây:
-
Thêm hoạt động kiểm thử URL cho mỗi liên kết URL để đảm bảo bộ lọc ý định xử lý các URL trong thực tế.
Bạn cũng có thể tự xác định các hoạt động kiểm thử URL này bằng cách sử dụng thẻ
<tools:validation>
mô tả bên dưới. -
Tạo tệp Digital Asset Links (Đường liên kết đến tài sản kỹ thuật số) có mục đối tượng thích hợp để hỗ trợ Google Smart Lock và thêm thẻ
asset_statements
<meta-data>
tương ứng vào tệp kê khai của bạn.
Trình xác thực bộ lọc ý định URL
Android Studio hiện hỗ trợ một thẻ đặc biệt trong tệp kê khai, cho phép bạn kiểm thử URL của bộ lọc ý định. Đây cũng chính là các thẻ mà Trợ lý về đường liên kết trong ứng dụng có thể tạo cho bạn.
Để khai báo một URL của hoạt động kiểm thử cho một bộ lọc ý định, hãy thêm phần tử <tools:validation>
cùng với phần tử <intent-filter>
tương ứng. Ví dụ:
<activity ...>
<intent-filter>
...
</intent-filter>
<tools:validation testUrl="https://www.example.com/recipe/1138" />
</activity>
Hãy nhớ đưa cả xmlns:tools="http://schemas.android.com/tools"
vào thẻ <manifest>
.
Nếu có bất cứ URL nào của hoạt động kiểm thử không vượt qua được định nghĩa của bộ lọc ý định, thì lỗi tìm lỗi mã nguồn sẽ xuất hiện. Dù lỗi này có xuất hiện thì bạn vẫn tạo được các biến thể gỡ lỗi, nhưng sẽ làm hỏng bản phát hành.
Trình chỉnh sửa bố cục (Layout Editor)
Layout Editor đã được cập nhật với một số tính năng nâng cao sau đây:
- Biểu tượng và bố cục mới trên thanh công cụ.
- Cập nhật bố cục trong cây thành phần.
- Cải thiện tính năng chèn khung hiển thị kéo và thả.
- Bảng điều khiển mới về lỗi ở bên dưới trình chỉnh sửa, hiển thị mọi vấn đề kèm theo nội dung đề xuất để khắc phục (nếu có).
- Các tính năng nâng cao cho giao diện người dùng để xây dựng bằng
ConstraintLayout
, gồm có các tính năng sau:- Tính năng hỗ trợ mới để tạo rào cản.
- Tính năng hỗ trợ mới để tạo nhóm: Trong thanh công cụ, hãy chọn Guidelines > Add Group (Nguyên tắc > Thêm nhóm) (cần có ConstraintLayout phiên bản 1.1.0 beta 2 trở lên)
- Giao diện người dùng mới để tạo chuỗi: Chọn nhiều khung hiển thị, sau đó nhấp chuột phải và chọn Chain (Chuỗi).
Trình kiểm tra bố cục (Layout Inspector)
Layout Inspector bao gồm các tính năng nâng cao giúp bạn dễ dàng gỡ lỗi cho các vấn đề về bố cục ứng dụng hơn, bao gồm cả việc nhóm các thuộc tính vào danh mục phổ biến và chức năng tìm kiếm mới ở cả ngăn View Tree (Cây khung hiển thị) và ngăn Properties (Thuộc tính).
Công cụ phân tích APK
Giờ đây, bạn có thể sử dụng Công cụ phân tích APK trong dòng lệnh bằng công cụ apkanalyzer
.
Công cụ phân tích APK cũng được cập nhật với những điểm cải tiến sau đây:
- Đối với những APK được tạo bằng ProGuard, bạn có thể tải các tệp ánh xạ ProGuard để thêm các tính năng vào trình xem DEX, bao gồm:
- Các nút được in đậm để cho biết rằng bạn không nên xoá những nút này khi rút gọn mã.
- Nút cho thấy các nút đã bị xoá trong quá trình rút gọn.
- Nút khôi phục tên ban đầu của các nút trong khung hiển thị dạng cây đã bị ProGuard làm rối mã nguồn.
- Trình xem DEX giờ đây sẽ cho bạn biết tác động ước tính về kích thước của mỗi gói, lớp và phương thức.
- Các tuỳ chọn lọc mới ở trên cùng để hiện và ẩn các trường cũng như phương thức.
- Trong khung hiển thị dạng cây, các nút là tệp tham chiếu không được xác định trong tệp DEX sẽ xuất hiện bằng chữ in nghiêng.
Để biết thêm thông tin, hãy xem bài viết Phân tích bản dựng của bạn bằng Công cụ phân tích APK.
Bản xem trước trình biên dịch DEX D8
Android Studio 3.0 có một trình biên dịch DEX mới không bắt buộc có tên là D8. Cuối cùng, trình biên dịch này sẽ thay thế trình biên dịch DX, tuy nhiên, bạn có thể chọn sử dụng trình biên dịch D8 mới ngay bây giờ.
Quá trình biên dịch DEX có tác động trực tiếp đến thời gian tạo bản dựng, kích thước tệp .dex
và hiệu suất thời gian chạy của ứng dụng. Và khi so sánh trình biên dịch D8 mới với trình biên dịch DX hiện tại, D8 biên dịch nhanh hơn và tạo ra các tệp .dex
có kích thước nhỏ hơn, trong khi vẫn có cùng hiệu suất thời gian chạy ứng dụng hoặc có hiệu suất thời gian chạy ứng dụng tốt hơn.
Để dùng thử, hãy đặt giá trị trong tệp gradle.properties
của dự án như sau:
android.enableD8=true
Để biết thêm thông tin, hãy xem bài đăng trên blog về trình biên dịch D8.
Kho lưu trữ Maven của Google
Android Studio hiện sử dụng Kho lưu trữ Maven của Google theo mặc định thay vì phải dựa vào Trình quản lý SDK Android để tải bản cập nhật cho Thư viện hỗ trợ Android, Dịch vụ Google Play, Firebase và các phần phụ thuộc khác. Điều này giúp bạn dễ dàng cập nhật các thư viện của mình hơn, đặc biệt khi sử dụng hệ thống tích hợp liên tục (CI).
Tất cả các dự án mới giờ đây đều bao gồm kho lưu trữ Maven của Google theo mặc định. Để cập nhật dự án hiện có, hãy thêm google()
vào khối repositories
của tệp build.gradle
ở cấp cao nhất:
allprojects {
repositories {
google()
}
}
Hãy tìm hiểu thêm về kho lưu trữ Maven của Google tại đây.
Các thay đổi khác
- Tính năng gỡ lỗi gốc có trong Android Studio không hỗ trợ Windows 32 bit nữa. Chúng tôi đã chọn tập trung vào các nền tảng khác vì có rất ít nhà phát triển dùng nền tảng này. Nếu đang dùng Windows 32 bit và định gỡ lỗi mã gốc, thì bạn nên tiếp tục sử dụng Android Studio 2.3.
- Nâng cấp IDE cơ sở lên IntelliJ 2017.1.2, có bổ sung một số tính năng mới từ phiên bản 2016.3 và 2017.1, chẳng hạn như tái cấu trúc ngôn ngữ Java 8, gợi ý tham số, làm nổi bật ngữ nghĩa, điểm ngắt kéo được, kết quả tức thì trong tính năng tìm kiếm và nhiều tính năng khác.
- Thêm nhiều lượt kiểm tra tìm lỗi mã nguồn mới.
- Ngoài ra, hãy xem thông tin cập nhật mới nhất về Trình mô phỏng Android.