Android Studio Chipmunk 2021.2.1 (tháng 5 năm 2022)

Sau đây là các tính năng mới trong Android Studio Chipmunk.

Hỗ trợ tạo ứng dụng bằng Jetpack Compose

Tính năng xem trước ảnh động hỗ trợ animatedVisibility

Android Studio Chipmunk hỗ trợ API animatedVisibility trong Tính năng xem trước ảnh động. Để sử dụng tính năng Xem trước ảnh động bằng animatedVisibility, hãy sử dụng phiên bản Compose 1.1.0 trở lên. Để tìm hiểu thêm về tính năng Xem trước ảnh động, hãy xem phần Ảnh động.

Hỗ trợ triển khai bản xem trước từ Mô-đun thư viện

Các bản xem trước cho phép bạn xem giao diện người dùng trong Android Studio mà không cần phải chạy ứng dụng trên một thiết bị thực. Trong Android Studio Chipmunk, bạn có thể triển khai @Preview cụ thể cho một trình mô phỏng hoặc thiết bị thực từ Mô-đun thư viện. Để tìm hiểu thêm, hãy xem phần Triển khai bản xem trước.

Hỗ trợ lập hồ sơ ứng dụng

Phát hiện hiện tượng giật trên Android 12 trở lên

Đối với các thiết bị chạy Android 12 trở lên, một dấu vết được lưu lại sẽ hiển thị trong thành phần Janky frames (Khung hình bị giật) bên trong ngăn Display (Hiển thị) của Trình phân tích CPU.

Để phát hiện hiện tượng giật:

  1. Khởi động ứng dụng trên trình mô phỏng hoặc thiết bị phát triển.
  2. Trong Android Studio, chọn View > Tool Windows > Profiler (Xem > Công cụ trong Windows > Trình phân tích tài nguyên) hoặc nhấp vào Profile (Hồ sơ) trên thanh công cụ.

    Nếu hộp thoại Select Deployment Target (Chọn đối tượng triển khai) cho thấy lời nhắc, hãy chọn thiết bị bạn muốn triển khai ứng dụng để phân tích. Nếu bạn đã kết nối thiết bị qua USB nhưng không thấy thiết bị đó trong danh sách, hãy đảm bảo rằng bạn đã bật tính năng gỡ lỗi USB.

  3. Nhấp vào nơi bất kỳ trong tiến trình CPU để mở Trình phân tích CPU (CPU Profiler).

  4. Bạn sẽ thấy thành phần Janky frames (Khung hình bị giật) trong Display (Hiển thị). Theo mặc định, Trình phân tích tài nguyên chỉ hiển thị các khung hình bị giật dưới dạng mục tiêu để điều tra. Trong mỗi khung hình bị giật, phần được tô màu đỏ hiển thị thời lượng khung hình vượt quá thời hạn kết xuất.Ảnh chụp màn hình thành phần khung hình bị giật

  5. Sau khi bạn phát hiện ra một khung hình bị giật, hãy nhấp vào nó. Bạn cũng có thể điều chỉnh mức thu phóng bằng cách nhấn M để tập trung vào khung đã chọn. Các sự kiện liên quan sẽ được làm nổi bật trong các luồng chính: RenderThreadGPU completion.Ảnh chụp màn hình Trình phân tích tài nguyên hiển thị các Khung hình bị giật và luồng chính

  6. Bạn có thể tuỳ ý xem tất cả khung hình hoặc bảng phân tích thời gian kết xuất chi tiết bằng cách chọn/không chọn các hộp đánh dấu All Frames (Tất cả các khung hình) và Lifecycle (Vòng đời) tương ứng.Ảnh chụp màn hình của Trình phân tích tài nguyên như trên, nhưng hộp đánh dấu All Frames (Tất cả khung hình) và Lifecycle (Vòng đời) đã được chọn

Để biết thêm thông tin, hãy xem Phát hiện giao diện người dùng bị giật.

Bản vá đã phát hành

Sau đây là các bản vá đã phát hành trong Android Studio Chipmunk.

Android Studio Chipmunk | 1.2.2021 Bản vá 2 (tháng 8 năm 2022)

Bản cập nhật nhỏ này bao gồm bản cập nhật và các bản sửa lỗi sau:

Hỗ trợ nền tảng Android

Với Bản vá 2 của Android Studio Chipmunk và Android Gradle 7.2.2, bạn có thể biên dịch dựa trên các API Android 13 bằng cách đặt compileSdk=33. Phiên bản SDK tối thiểu được hỗ trợ cao nhất là 32. minSdk = 33 chỉ được hỗ trợ trên Trình bổ trợ Android cho Gradle phiên bản 7.3.0-beta05 trở lên.

Vấn đề đã khắc phục
Trình gỡ lỗi C++
Phiên bản phát hành của một thư viện gốc từ một dự án phụ thuộc được đóng gói ngay cả đối với một biến thể bản dựng gỡ lỗi
Công cụ thiết kế
Tổ hợp phím Ctrl + D hoặc nút “show diff” không hiển thị git diff
Dexer (D8)
Ghi lại phiên bản trình biên dịch cần thiết cho từng phiên bản thư viện đã đơn giản hoá
Gradle
Tìm lỗi mã nguồn unusedResources Nhận dạng Sai với Bí danh Nhập
Nhập/Đồng bộ hoá
Sự cố bản dựng với nhiều phiên bản sản phẩm (product flavour) trong phiên bản mới
Trình rút gọn (R8)
ArrayIndexOutOfBoundsException trong IntSwitch
R8 3.1.7-dev trở lên đã tối ưu hoá Enum không đúng cách, dẫn đến lỗi NoSuchFieldError
R8 gây ra lỗi VerifyError trên thư viện Scala
Gradle 7.2.0 gây ra lỗi bản dựng APK com.android.tools.r8.CompilationFailedException
NPE trong trình thu gọn, R8 phiên bản 3.2.60
[R8 3.3.57] NoClassDefFound do giao diện được thay thế bằng lớp trừu tượng có yêu cầu SDK cao hơn
NullPointerException trong FieldAssignmentTracker sử dụng 3.3.35

Android Studio Chipmunk | 2021.2.1 Bản vá 1 (tháng 5 năm 2022)

Bản cập nhật nhỏ này bao gồm các bản sửa lỗi sau:

Vấn đề đã khắc phục
Dexer (D8)
Máy ảo Art/Dalvik trước phiên bản 8 không hỗ trợ bản sửa lỗi cho JDK-8272564
IntelliJ
Trình theo dõi tệp không khởi động được trên Ubuntu 20.04
MBP 15" 2018 bị thiếu trình đơn trên Touch Bar.
Chạy
Tuỳ chọn thiết bị không hiển thị và không thể chạy ứng dụng mặc dù có mô-đun ứng dụng.
Trình rút gọn (R8)
Tại sao R8 không điều chỉnh được các phương thức giao diện mặc định cho phiên bản cũ nhưng D8 thì có?
THAM CHIẾU VÒNG TRÒN: com.android.tools.r8.internal.R10: Loại chuyển đổi không mong muốn vào lượt chuyển đổi gốc: OBJECT