Android Studio Arctic Fox | 2020.3.1 (tháng 7 năm 2021)

Android Studio Arctic Fox 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.

Đánh số phiên bản mới

Cập nhật cách đánh số phiên bản cho Android Studio

Chúng tôi đã thay đổi hệ thống đánh số phiên bản cho Android Studio để phù hợp hơn với IntelliJ IDEA (IDE mà Android Studio dựa trên đó).

Trong hệ thống đánh số cũ, bản phát hành này sẽ được đánh số là Android Studio 4.3 hoặc phiên bản 4.3.0.1. Với hệ thống đánh số mới, bản phát hành này giờ đây sẽ là Android Studio – Arctic Fox | 2020.3.1 hoặc phiên bản 2020.3.1.

Phiên bản Intellij Tên cũ Cũ – Hệ thống số Mới – Hệ thống năm Tên phiên bản mới
2020.3 4.3 4.3.0 2020.3.1 Arctic Fox | 2020.3.1

Sau đây là cách xác định số phiên bản Android Studio:

<Year of IntelliJ Version>.<IntelliJ major version>.<Studio major version>.<Studio minor/patch version>

  • 2 nhóm số đầu tiên thể hiện phiên bản của nền tảng IntellIj mà một bản phát hành Android Studio cụ thể sẽ dựa vào đó. Đối với bản phát hành này, đây là phiên bản 2020.3.
  • Nhóm số thứ ba đại diện cho phiên bản chính của Studio, bắt đầu từ 1 và tăng dần từng phiên bản một cho mỗi bản phát hành chính.
  • Nhóm số thứ tư đại diện cho phiên bản phụ/bản vá của Studio, bắt đầu từ 1 và tăng thêm 1 cho từng bản phát hành nhỏ.
  • Chúng tôi cũng đặt tên phiên bản cho từng bản phát hành chính, tăng dần từ A đến Z dựa trên tên của các loài động vật. Bản phát hành này có tên là Arctic Fox.

Cập nhật cách đánh số phiên bản cho trình bổ trợ Android cho Gradle

Chúng tôi đã thay đổi cách đánh số phiên bản áp dụng với trình bổ trợ Android cho Gradle (AGP) để phù hợp hơn với công cụ xây dựng cơ bản của Gradle. Do đó, AGP 7.0 là bản phát hành tiếp theo sau AGP 4.2.

Để biết thêm thông tin chi tiết, hãy xem phần Các thay đổi liên quan đến việc tạo phiên bản trong ghi chú phát hành của AGP.

Trình bổ trợ Android cho Gradle 7.0.0

Phiên bản mới nhất của trình bổ trợ Android cho Gradle sẽ bao gồm nhiều bản cập nhật. Để tìm hiểu thêm, hãy đọc ghi chú phát hành đầy đủ của trình bổ trợ Android cho Gradle.

Hoạt động kiểm thử đơn vị hiện dùng trình chạy kiểm thử của Gradle

Để cải thiện tính nhất quán chung của các phiên chạy thử nghiệm, Android Studio hiện sử dụng Gradle để chạy mọi hoạt động kiểm thử đơn vị theo mặc định. Trong nhiều trường hợp, sự thay đổi này sẽ không ảnh hưởng đến quy trình kiểm thử của bạn trong IDE.

Ví dụ: Khi bạn nhấp vào lệnh Run (Chạy) trong trình đơn theo bối cảnh (hiển thị khi bạn nhấp chuột phải vào một lớp kiểm thử) hoặc thao tác định hướng tương ứng của lệnh đó, theo mặc định, Android Studio sẽ sử dụng cấu hình chaỵ của Gradle để chạy các hoạt động kiểm thử đơn vị.

Trình đơn theo bối cảnh để chạy hoạt động kiểm thử

Tuy nhiên, Android Studio không nhận dạng các cấu hình chạy JUnit hiện có của Android nữa. Vì vậy, bạn nên di chuyển các cấu hình chạy JUnit của Android mà bạn có thể lưu ở dạng tệp dự án sang cấu hình chạy của Gradle.

Để tạo một cấu hình kiểm thử của Gradle, hãy chọn mẫu Gradle trong khi làm theo các hướng dẫn trong bài viết Tạo một cấu hình chạy/gỡ lỗi mới. Khi bạn đã tạo một cấu hình mới, cấu hình đó sẽ xuất hiện trong hộp thoại Edit Configurations (Chỉnh sửa cấu hình) trong phần Gradle:

Chỉnh sửa cấu hình kiểm thử trong Android Studio

Nếu muốn kiểm tra các cấu hình JUnit của Android hiện không nhận dạng được nữa, thì bạn có thể làm một trong hai việc sau:

  • Mở cấu hình đã lưu thủ công trong trình chỉnh sửa văn bản. Vị trí của các tệp này do người dùng chỉ định, nhưng các tệp thường xuất hiện trong <my-app>/.idea/runConfigurations/.
  • Tìm các cấu hình tạm thời trong <my-app>/.idea/workspace.xml và tìm ở bên dưới nút <component name="RunManager" ...>. Ví dụ:

    <component name="RunManager" selected="Gradle.PlantTest">
    …
    <configuration name="PlantTest" type="AndroidJUnit" factoryName="Android JUnit" nameIsGenerated="true">
          <module name="Sunflower.app" />
          <useClassPathOnly />
          <extension name="coverage">
            <pattern>
              <option name="PATTERN" value="com.google.samples.apps.sunflower.data.*" />
              <option name="ENABLED" value="true" />
            </pattern>
          </extension>
          <option name="PACKAGE_NAME" value="com.google.samples.apps.sunflower.data" />
          <option name="MAIN_CLASS_NAME" value="com.google.samples.apps.sunflower.data.PlantTest" />
          <option name="METHOD_NAME" value="" />
          <option name="TEST_OBJECT" value="class" />
          <option name="PARAMETERS" value="" />
          <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
          <method v="2">
            <option name="Android.Gradle.BeforeRunTask" enabled="true" />
          </method>
        </configuration>
    

Cải thiện Trợ lý nâng cấp cho AGP

Giờ đây, Trợ lý nâng cấp của trình bổ trợ Android cho Gradle sẽ có một cửa sổ công cụ xuất hiện liên tục, trong đó hiện danh sách các bước cần được hoàn thành. Thông tin bổ sung cũng sẽ xuất hiện ở phía bên phải của cửa sổ công cụ. Nếu cần, bạn cũng có thể chọn một phiên bản AGP khác để nâng cấp lên. Thao tác nhấp vào nút Refresh (Làm mới) sẽ cập nhật các bước cập nhật tương ứng.

Cửa sổ công cụ mới xuất hiện liên tục trong trợ lý nâng cấp

Hoạt động tái cấu trúc đối với lớp R không mang tính chất bắc cầu

Bạn có thể sử dụng các lớp R không mang tính chất bắc cầu với trình bổ trợ Android cho Grade để tạo các bản dựng nhanh hơn cho các ứng dụng có nhiều mô-đun. Làm như vậy sẽ giúp ngăn chặn tình trạng trùng lặp tài nguyên bằng cách đảm bảo rằng lớp R của mỗi mô-đun chỉ chứa tệp tham chiếu đến tài nguyên riêng của mô-đun đó mà không cần lấy các tệp tham chiếu từ các phần phụ thuộc. Điều này giúp chúng ta có các bản dựng mới hơn cũng như nhận được các lợi ích tương ứng khi tránh hoạt động biên dịch.

Bạn có thể sử dụng tính năng này bằng cách chuyển đến Refactor > Migrate to Non-transitive R Classes (Tái cấu trúc > Di chuyển đến lớp R không mang tính chất bắc cầu).

Công cụ kiểm tra tác vụ trong nền mới

Bạn có thể minh hoạ trực quan, theo dõi và gỡ lỗi các trình chạy trong nền của ứng dụng bằng Công cụ kiểm tra tác vụ trong nền phiên bản mới. Để bắt đầu, hãy triển khai ứng dụng của bạn trên một thiết bị chạy thư viện WorkManager 2.5.0 trở lên rồi chọn View (Xem) > Tool Windows (Cửa sổ công cụ) > App Inspection (Kiểm tra ứng dụng) trên thanh trình đơn.

Trình chạy đang hoạt động trong Công cụ kiểm tra tác vụ trong nền

Bạn có thể xem thêm thông tin chi tiết bằng cách nhấp vào một trình chạy. Ví dụ: Bạn có thể xem nội dung mô tả về trình chạy này, cách thực thi trình chạy, thông tin chi tiết về chuỗi trình chạy và kết quả thực thi.

Thẻ Thông tin chi tiết về trình chạy

Bạn cũng có thể xem hình ảnh biểu diễn của một chuỗi trình chạy bằng cách chọn một trình chạy trong bảng rồi nhấp vào biểu tượng Show Graph View (Hiện chế độ hiển thị biểu đồ) trên thanh công cụ. Sau đó, bạn có thể chọn bất kỳ trình chạy nào trong chuỗi để xem thông tin chi tiết hoặc dừng trình chạy nếu nó đang ở trong hàng đợi hoặc đang chạy. Để quay lại bảng, hãy nhấp vào biểu tượng Show List View (Hiện chế độ hiển thị danh sách) .

Chuỗi trình chạy trong Công cụ kiểm tra tác vụ trong nền

Để giúp bạn điều tra vấn đề của các trình chạy không thực thi được, bạn có thể dừng một trình chạy đang chạy hoặc đang ở trong hàng đợi bằng cách chọn nó trong bảng rồi nhấp vào biểu tượng Cancel Selected Worker (Huỷ trình chạy đã chọn) trên thanh công cụ. Bạn cũng có thể lọc trình chạy trong bảng theo thẻ mà bạn đã chỉ định cho trình chạy đó bằng cách dùng trình đơn thả xuống All tags (Tất cả các thẻ).

Cập nhật Trình kiểm tra cơ sở dữ liệu

Database Inspector (Trình kiểm tra cơ sở dữ liệu) hiện đã có trong cửa sổ công cụ mới App Inspection (Kiểm tra ứng dụng). Bạn cũng có thể tìm thấy Background Task Inspector (Công cụ kiểm tra tác vụ trong nền) phiên bản mới ở đây. Mở cửa sổ công cụ App Inspection (Kiểm tra ứng dụng) trên thanh cửa sổ công cụ hoặc chọn View (Xem) > Tool Windows (Cửa sổ công cụ) > App Inspection (Kiểm tra ứng dụng) trên thanh trình đơn.

Xuất dữ liệu trên Trình kiểm tra cơ sở dữ liệu

Trong Arctic Fox, bạn có thể dễ dàng xuất cơ sở dữ liệu, bảng và kết quả truy vấn trên Database Inspector (Trình kiểm tra cơ sở dữ liệu) để lưu, chia sẻ hoặc tạo lại trên máy. Khi mở dự án ứng dụng trong Android Studio và kiểm tra ứng dụng của dự án đó trong Database Inspector (Trình kiểm tra cơ sở dữ liệu), bạn có thể bắt đầu xuất dữ liệu theo một trong những cách sau:

  • Chọn một cơ sở dữ liệu hoặc bảng trong bảng Databases (Cơ sở dữ liệu) rồi nhấp vào Export to file (Xuất sang tệp) ở gần đầu bảng.
  • Nhấp chuột phải vào một cơ sở dữ liệu hoặc bảng trong bảng Databases (Cơ sở dữ liệu), rồi chọn Export to file (Xuất sang tệp) trên trình đơn ngữ cảnh.
  • Khi kiểm tra một bảng hoặc kết quả truy vấn trong một thẻ, hãy nhấp vào Export to file (Xuất sang tệp) ở phía trên bảng hoặc kết quả truy vấn đó.

Sau khi chọn một hành động xuất, bạn sẽ sử dụng hộp thoại Xuất để giúp bạn thực hiện các bước cuối cùng, như hiển thị bên dưới. Tuỳ thuộc vào việc bạn đang cố gắng xuất cơ sở dữ liệu, bảng hay kết quả truy vấn, bạn có thể chọn xuất dữ liệu ở một hoặc nhiều định dạng sau: DB, SQL hoặc CSV.

Hộp thoại Xuất cơ sở dữ liệu

Cập nhật giao diện người dùng để ghi trong Trình phân tích bộ nhớ

Chúng tôi đã hợp nhất giao diện người dùng (UI) của Trình phân tích bộ nhớ cho nhiều hoạt động ghi, chẳng hạn như ghi tệp báo lỗi và ghi lại quá trình phân bổ cho Java, Kotlin, cũng như bộ nhớ gốc.

Quá trình phân bổ bộ nhớ hiển thị trong Trình phân tích bộ nhớ

Trình phân tích bộ nhớ cung cấp các tuỳ chọn sau:

  • Capture heap dump (Ghi tệp báo lỗi): Xem các đối tượng trong ứng dụng đang sử dụng bộ nhớ tại một thời điểm cụ thể.
  • Record native allocations (Ghi lại quá trình phân bổ gốc): Xem cách thức phân bổ đối với mỗi đối tượng C/C++ trong một khoảng thời gian.
  • Ghi lại quá trình phân bổ cho Java/Kotlin (Record Java/Kotlin allocations): Xem cách thức phân bổ đối với mỗi đối tượng Java/Kotlin trong một khoảng thời gian.

Dưới đây là cách sử dụng 3 tuỳ chọn này:

  • Để ghi tệp báo lỗi, hãy nhấp vào Capture heap dump (Ghi tệp báo lỗi), sau đó chọn Record (Ghi). Sau khi trình phân tích tài nguyên hoàn tất việc ghi tệp báo lỗi, giao diện người dùng của Trình phân tích bộ nhớ sẽ chuyển sang một màn hình riêng cho thấy tệp báo lỗi.

    Tệp báo lỗi mẫu trong Trình phân tích bộ nhớ

  • Để ghi lại các lượt phân bổ mã gốc trên thiết bị chạy Android 10 trở lên, hãy chọn Record native allocations (Ghi mức phân bổ cho mã gốc), sau đó chọn Record (Ghi). Quá trình ghi sẽ tiếp tục cho đến khi bạn nhấp vào nút Stop (Dừng) , sau đó, giao diện người dùng của Trình phân tích bộ nhớ sẽ chuyển sang một màn hình riêng hiển thị quá trình ghi gốc.

    Trên Android 9 trở xuống, bạn không sử dụng được tuỳ chọn Record native allocations (Ghi lại quá trình phân bổ gốc).

  • Để ghi lại mức phân bổ cho Java và Kotlin, hãy chọn Record Java / Kotlin allocations (Ghi lại mức phân bổ cho Java/Kotlin), sau đó chọn Record (Ghi). Nếu thiết bị đang chạy Android 8 trở lên, thì giao diện người dùng của Trình phân tích bộ nhớ sẽ chuyển sang một màn hình riêng cho thấy quá trình ghi đang diễn ra. Bạn có thể tương tác với tiến trình thu nhỏ ở phía trên bản ghi (ví dụ: để thay đổi phạm vi lựa chọn). Để hoàn tất quá trình ghi, hãy chọn biểu tượng Stop (Dừng) .

    Hình ảnh minh hoạ quá trình phân bổ cho Java trong Trình phân tích bộ nhớ

    Trên thiết bị chạy Android 7.1 trở xuống, trình phân tích bộ nhớ sử dụng tính năng ghi quá trình phân bổ cũ, cho thấy quá trình ghi trên tiến trình cho đến khi bạn nhấp vào Stop (Dừng).

Cập nhật tuỳ chọn Làm mới dự án C++ đã liên kết

Chúng tôi đã di chuyển các tệp không liên quan đến cấu hình từ thư mục .cxx/ vào thư mục build/. Các bản dựng CMake C++ cần có giai đoạn định cấu hình giúp tạo dự án Ninja dùng để thực thi các bước biên dịch và liên kết. Các dự án tạo bằng CMake rất tốn kém chi phí và dự kiến sẽ tiếp tục có hiệu lực khi không có Gradle. Vì lý do này, các dự án sẽ được lưu trữ trong thư mục có tên .cxx/, bên cạnh thư mục build/. Thông thường, trình bổ trợ Android cho Gradle sẽ nhận thấy các thay đổi về cấu hình và tự động tạo lại dự án Ninja. Tuy nhiên, không phải trường hợp nào cũng có thể được phát hiện. Khi điều này xảy ra, bạn có thể dùng chế độ "Refresh Linked C++ Project" (Làm mới dự án C++ đã liên kết) để tạo lại dự án Ninja theo cách thủ công.

Ma trận thử nghiệm mới cho quá trình kiểm thử nhiều thiết bị

Giờ đây, các hoạt động kiểm thử đo lường có thể chạy song song trên nhiều thiết bị và được điều tra thông qua một bảng điều khiển chuyên dụng về kết quả kiểm thử đo lường. Khi sử dụng bảng điều khiển này, bạn có thể xác định được rằng hoạt động kiểm thử có trạng thái không đạt là do cấp độ API hay do thuộc tính phần cứng.

Bảng điều khiển kiểm thử đo lường

Việc kiểm thử ứng dụng trên nhiều kiểu dáng và cấp độ API là một trong những cách tốt nhất giúp tất cả người dùng có trải nghiệm tuyệt vời khi dùng ứng dụng.

Để tận dụng tính năng này, hãy làm như sau:

  1. Chọn Select Multiple Devices (Chọn nhiều thiết bị) trong trình đơn thả xuống thiết bị mục tiêu ở trên cùng chính giữa của IDE.

    Hộp thoại sửa đổi chế độ thiết lập thiết bị

  2. Chọn thiết bị mục tiêu rồi nhấp vào OK.

    Hộp thoại sửa đổi chế độ thiết lập thiết bị

  3. Chạy hoạt động kiểm thử.

Để xem kết quả kiểm thử, trong bảng điều khiển Run (Chạy), hãy chuyển đến phần View > Tool Windows > Run (Xem > Cửa sổ công cụ > Chạy).

Bảng điều khiển mới về kết quả kiểm thử giúp bạn lọc kết quả kiểm thử theo trạng thái, thiết bị và cấp độ API. Ngoài ra, bạn có thể sắp xếp từng cột bằng cách nhấp vào tiêu đề. Khi nhấp vào một hoạt động kiểm thử riêng lẻ, bạn có thể xem riêng nhật ký và thông tin về thiết bị của từng thiết bị.

Hỗ trợ StateFlow trong liên kết dữ liệu

Giờ đây, đối với các ứng dụng Kotlin dùng coroutine, bạn có thể dùng các đối tượng StateFlow làm nguồn liên kết dữ liệu để tự động thông báo cho giao diện người dùng về các thay đổi trong dữ liệu. Các liên kết dữ liệu của bạn sẽ nhận biết được vòng đời và chỉ được kích hoạt khi giao diện người dùng hiển thị trên màn hình.

Để dùng một đối tượng StateFlow với lớp liên kết, bạn cần chỉ định một chủ sở hữu vòng đời để xác định phạm vi của đối tượng StateFlow. Đồng thời, trong bố cục của bạn, hãy chỉ định các thuộc tính và phương thức của thành phần ViewModel cho khung hiển thị tương ứng thông qua biểu thức liên kết, như minh hoạ trong ví dụ sau đây:

class ViewModel() {
   val username: StateFlow<String>
}
<TextView
    android:id="@+id/name"
    android:text="@{viewmodel.username}" />

Nếu bạn đang dùng ứng dụng Kotlin sử dụng AndroidX, thì chức năng hỗ trợ StateFlow sẽ tự động được đưa vào chức năng liên kết dữ liệu, bao gồm cả phần phụ thuộc của coroutine.

Để tìm hiểu thêm, hãy xem bài viết Làm việc với các đối tượng dữ liệu có thể quan sát.

Cải thiện thành phần nhập đề xuất

Chúng tôi đã cải thiện số lượng thư viện được tính năng thành phần nhập đề xuất hỗ trợ và cập nhật chỉ mục thường xuyên hơn. Tính năng thành phần nhập đề xuất giúp bạn dễ dàng và nhanh chóng nhập một số cấu phần phần mềm Maven của Google vào cả lớp và dự án Gradle. Khi Android Studio phát hiện thấy các biểu tượng chưa được giải quyết cho một số thư viện của Google, IDE sẽ đề xuất nhập thư viện vào cả lớp và dự án.

Hỗ trợ bộ nhớ đệm cấu hình trong Trình phân tích bản dựng

Trình phân tích bản dựng hiện xác định thời điểm một dự án không bật bộ nhớ đệm cấu hình và cung cấp dự án ở dạng tối ưu hoá. Trình phân tích bản dựng sẽ chạy quá trình đánh giá khả năng tương thích để thông báo cho bạn nếu có bất kỳ vấn đề nào với bộ nhớ đệm cấu hình trong dự án trước khi bộ nhớ này được bật.

Thông tin về bộ nhớ đệm cấu hình trong Trình phân tích bản dựng

Hỗ trợ công cụ Jetpack Compose

Chúng tôi hiện cung cấp chức năng hỗ trợ bổ sung cho các ứng dụng xem trước và kiểm thử sử dụng Jetpack Compose. Để có trải nghiệm tốt nhất khi phát triển bằng Jetpack Compose, bạn nên dùng Android Studio Arctic Fox phiên bản mới nhất để nhận được lợi ích từ các tính năng của trình chỉnh sửa thông minh, chẳng hạn như các mẫu New Project (Dự án mới) và khả năng xem trước ngay giao diện người dùng trong Compose.

Tính năng xem trước trong Compose

Hiện đã có các tham số sau đây cho phương thức @Preview:

  • showBackground: Bật và tắt một nền cho bản xem trước.
  • backgroundColor: Đặt một màu mà chỉ được dùng trong giao diện xem trước.
  • uiMode: Tham số mới này có thể lấy bất kỳ hằng số Configuration.UI_* nào và cho phép bạn thay đổi hành vi của bản xem trước để, chẳng hạn như đặt thành Chế độ ban đêm để xem phản ứng của giao diện này.

Giao diện người dùng của tính năng xem trước trong Compose

Bản xem trước tương tác

Bạn có thể sử dụng tính năng này để tương tác với các thành phần giao diện người dùng, nhấp vào các thành phần đó và xem trạng thái sẽ thay đổi như thế nào. Đây là một cách nhanh chóng để nhận được thông tin phản hồi về cách phản ứng của giao diện người dùng và để xem trước ảnh động. Để bật tính năng này, hãy nhấp vào biểu tượng Interactive (Tương tác) và bản xem trước sẽ chuyển đổi các chế độ.

Để dừng, hãy nhấp vào Stop Interactive Preview (Dừng bản xem trước tương tác) trên thanh công cụ ở trên cùng.

Giao diện người dùng của bản xem trước tương tác

Triển khai cho thiết bị

Bạn có thể sử dụng tính năng này để triển khai đoạn mã của giao diện người dùng cho một thiết bị. Việc này giúp bạn kiểm thử các phần nhỏ của mã trong thiết bị mà không phải khởi động toàn bộ ứng dụng.

Nhấp vào biểu tượng Deploy to Device (Triển khai cho thiết bị) bên cạnh chú thích @Preview hoặc ở trên cùng của bản xem trước, và Android Studio sẽ triển khai @Preview đó trên trình mô phỏng hoặc thiết bị đã được kết nối của bạn.

Chỉnh sửa trực tiếp giá trị cố định

Chúng tôi đã thêm tính năng Chỉnh sửa trực tiếp giá trị cố định để giúp nhà phát triển sử dụng Compose chỉnh sửa nhanh chóng giá trị cố định (chuỗi, số, boolean) trong mã của họ và xem ngay kết quả mà không cần chờ quá trình biên dịch. Mục tiêu của tính năng này là giúp tăng năng suất của bạn bằng cách làm cho các thay đổi về mã xuất hiện gần như ngay lập tức trong bản xem trước, trình mô phỏng hoặc thiết bị thực tế.

Việc chỉnh sửa số và chuỗi cập nhật ngay lập tức trong bản xem trước và trên thiết bị

Hỗ trợ Compose trong Layout Inspector

Layout Inspector cho phép bạn xem thông tin chi tiết phong phú về bố cục của ứng dụng đang chạy trên thiết bị đã kết nối của bạn. Bạn có thể tương tác với ứng dụng và xem thông tin cập nhật trực tiếp trong công cụ này để khắc phục nhanh các vấn đề có thể phát sinh.

Bạn có thể kiểm tra các bố cục đã viết bằng khung giao diện người dùng khai báo mới của Android, đó là Jetpack Compose. Cho dù ứng dụng của bạn dùng bố cục được viết đầy đủ trong Compose hay bố cục sử dụng cả Compose và Khung hiển thị, thì Layout Inspector vẫn sẽ giúp bạn hiểu được cách bố cục hiển thị trên thiết bị đang chạy.

Bắt đầu

Để bắt đầu, hãy triển khai ứng dụng của bạn cho một thiết bị đã kết nối, sau đó mở cửa sổ Layout Inspector bằng cách chọn View (Xem) > Tool Windows (Cửa sổ công cụ) > Layout Inspector. Nếu Layout Inspector không tự động kết nối với quy trình ứng dụng của bạn, hãy chọn quy trình ứng dụng mong muốn trong danh sách quy trình kéo xuống. Bạn sẽ sớm thấy bố cục của ứng dụng hiển thị trong cửa sổ công cụ. Để bắt đầu kiểm tra bố cục của Compose, hãy chọn thành phần bố cục xuất hiện trong quy trình hiển thị hoặc chọn thành phần có trong Component Tree (Cây thành phần).

Giao diện người dùng của Layout Inspector

Cửa sổ Attributes (Thuộc tính) hiển thị cho bạn thông tin chi tiết về hàm Compose hiện được chọn. Trong cửa sổ này, bạn có thể kiểm tra các tham số của hàm cũng như giá trị của các tham số đó, bao gồm cả các giá trị sửa đổi và biểu thức lambda. Đối với biểu thức lambda, công cụ kiểm tra sẽ cung cấp một lối tắt để giúp bạn chuyển đến biểu thức trong mã nguồn.

Layout Inspector hiển thị mọi hàm của Compose trong ngăn xếp lệnh gọi thực hiện việc gửi các thành phần cho bố cục của ứng dụng. Trong nhiều trường hợp, hàm này bao gồm các hàm của Compose được Thư viện của Compose gọi trong nội bộ. Nếu bạn chỉ muốn xem các hàm của Compose trong Cây thành phần (Component Tree) mà ứng dụng trực tiếp gọi, hãy nhấp vào biểu tượng thao tác bộ lọc . Lựa chọn này có thể giúp giảm số nút hiển thị trong cây xuống số nút mà bạn muốn kiểm tra.

Cải thiện trình đơn thả xuống về triển khai

Giờ đây, trình đơn thả xuống về thiết bị phân biệt các loại lỗi khác nhau trong cấu hình thiết bị mà bạn chọn. Các thay đổi về biểu tượng và văn phong hiện sẽ phân biệt giữa lỗi (lựa chọn thiết bị dẫn đến cấu hình bị hỏng) và cảnh báo (lựa chọn thiết bị có thể dẫn đến hành vi không mong muốn nhưng vẫn chạy được).

Ngoài ra, giờ đây, Android Studio cũng sẽ cảnh báo bạn nếu bạn cố gắng chạy dự án trên một thiết bị có lỗi hoặc có cảnh báo liên quan đến dự án đó.

Trợ lý ghép nối Wear OS mới

Trợ lý ghép nối Wear OS mới sẽ hướng dẫn nhà phát triển ghép nối trình mô phỏng Wear OS trực tiếp với điện thoại thực tế hoặc điện thoại ảo ngay trong Android Studio theo từng bước một. Trợ lý này có thể giúp bạn cài đặt đúng ứng dụng đồng hành Wear OS trên điện thoại rồi thiết lập kết nối giữa hai thiết bị đó. Bạn có thể bắt đầu bằng cách chuyển đến trình đơn thả xuống về thiết bị > Wear OS Emulator Pairing Assistant (Trợ lý ghép nối trình mô phỏng Wear OS).

Bản minh hoạ về trợ lý ghép nối Wear OS

Mẫu bố cục thích ứng

Android Studio Arctic Fox hiện có một mẫu bố cục mới thích ứng với nhiều kích thước hiển thị cũng như hoạt động đổi kích thước ứng dụng, chẳng hạn như điện thoại, thiết bị có thể gập lại, máy tính bảng và chế độ chia đôi màn hình. Khi tạo một dự án hoặc mô-đun mới, hãy chọn mẫu Hoạt động thích ứng để tạo bố cục có các thành phần tự động đổi kích thước.

Mẫu bố cục thích ứng trong màn hình nhỏ Mẫu bố cục thích ứng trong màn hình vừa Mẫu bố cục thích ứng trong màn hình lớn

Để bắt đầu, hãy chuyển đến File > New (Tệp > Mới), chọn New Project (Dự án mới) hoặc New Module (Mô-đun mới) rồi chọn mẫu Responsive Activity (Hoạt động thích ứng).

Mẫu bố cục thích ứng trong trình hướng dẫn dự án mới

Trình quét hỗ trợ tiếp cận cho Trình chỉnh sửa bố cục

Chúng tôi đã tích hợp Khung kiểm thử khả năng hỗ trợ tiếp cận của Android trong Android Studio để giúp bạn tìm các vấn đề về hỗ trợ tiếp cận trong bố cục. Công cụ này báo cáo các vấn đề liên quan đến hỗ trợ tiếp cận và đề xuất cách khắc phục cho một số vấn đề thường gặp (cụ thể là: thiếu nội dung mô tả hoặc độ tương phản thấp). Để khởi chạy bảng điều khiển, hãy nhấp vào nút báo cáo lỗi trong Trình chỉnh sửa bố cục.

Bản minh hoạ Trình quét hỗ trợ tiếp cận

Hỗ trợ Apple silicon

Android Studio và Trình mô phỏng Android hiện tích hợp tính năng hỗ trợ ban đầu cho quy trình làm việc cốt lõi của nhà phát triển khi chạy cấu trúc phần cứng Apple silicon (arm64) (bao gồm cả ảnh hệ thống tương ứng của trình mô phỏng).

Tính năng hỗ trợ chưa có sẵn đối với tất cả các công cụ dòng lệnh SDK và NDK. Bạn có thể phải chạy Rosetta 2 trên máy để chạy một số công cụ.

Hỗ trợ Apple silicon

Vấn đề đã biết về Arctic Fox

Phần này mô tả các vấn đề hiện đã biết trong Android Studio Arctic Fox.

Bản vá không hoạt động trên Windows đối với phiên bản 3.6-v4.1

Các bản vá trên nền tảng Windows cho phiên bản 3.6-4.1 đối với Android Studio Arctic Fox có thể không hoạt động.

Bản phát hành của bản vá

Sau đây là các bản phát hành của bản vá trong Android Studio Arctic Fox.

Android Studio Arctic Fox | 2020.3.1 Bản vá 4 (tháng 12 năm 2021)

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

  • Trình bổ trợ Android cho Gradle
    • Việc đặt Provider cho VariantOutput.version có thể gây lỗi cho bộ nhớ đệm cấu hình
    • gradeResValues.xml chưa được cập nhật khi ký để phát hành
  • D8/R8
    • java.lang.ClassCastException được tạo trong hàm khởi tạo của lớp trong bản dựng được rút gọn bằng R8
    • Không truy cập được vào hoạt động điều chỉnh loại khi hợp nhất định dạng dex
    • java.lang.VerifyError: Trình xác minh không xác minh được vì không thể truy cập vào trường thực thể từ đối tượng của loại Reference.java.lang.Object
  • Tìm lỗi mã nguồn
    • Tắt tính năng kiểm tra tìm lỗi mã nguồn MediaCapabilities
    • Công cụ tìm lỗi mã nguồn báo cáo lỗi dương tính giả [Có thể tạo phiên bản] khi shrinkResources được bật
  • Mẫu
    • Tuỳ chọn Nhập mô-đun đã chuyển sang màu xám

Để biết thêm thông tin, hãy xem bài đăng trên blog về phiên bản 2020.3.1 Bản vá 4.

Android Studio Arctic Fox | 2020.3.1 Bản vá 3 (Tháng 10/2021)

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

  • Trình bổ trợ Android cho Gradle
    • Trình bổ trợ độc lập tìm lỗi mã nguồn không xử lý phần phụ thuộc gradleApi() đúng cách
    • Bản dựng JPS được kích hoạt trong khi bản dựng Gradle chạy bên ngoài Studio
    • Bật cả KSP và Kapt trong một dự án có chứa cả hai bộ xử lý tạo ra hiện tượng ngắt nguồn BundleLibraryClassesInputs
  • Trình chỉnh sửa C++
    • Giao diện người dùng bị treo do tác vụ tính toán JniReferencesSearch dài trong nền
  • Trình kiểm tra cơ sở dữ liệu
    • Cho phép lưu các cơ sở dữ liệu
    • Không xuất được dữ liệu bằng cách sử dụng công cụ Kiểm tra ứng dụng/Trình kiểm tra cơ sở dữ liệu có không gian trống trong đường dẫn
  • Dexer (D8)
    • Giá trị lambda của Java gây ra hành vi không mong muốn khi phân lớp con
  • Trình rút gọn (R8)
    • Lỗi Cannot constrain type trong khi rút gọn r8
    • Vấn đề khi thực thi R8 3.0.69 (từ AGP 7.0.2) và 3.0.72

Để biết thêm thông tin, hãy xem bài đăng trên blog về phiên bản 2020.3.1 Bản vá 3.

Android Studio Arctic Fox | 2020.3.1 Bản vá 2 (Tháng 9/2021)

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

  • Trình bổ trợ Android cho Gradle
    • Tính năng đồng bộ hoá của Gradle đã phát hành 10 LẦN khi nâng cấp từ AS Arctic Fox Canary 7 lên Canary 8
    • Bản dựng đơn giản hoá và có thể mô phỏng
  • Bản dựng C++
    • Trình bổ trợ Android cho Gradle 7.0.0 không bao gồm jniLibs trong APK nếu phần kết thúc tasks.whenTaskAdded được sử dụng
  • Chức năng chỉnh sửa
    • MergedManifestRefreshListener bị kẹt trong một vòng lặp vô hạn trong Arctic Fox
  • Tìm lỗi mã nguồn
    • "Hoạt động kiểm tra tìm lỗi mã nguồn để tìm lỗi mã nguồn" hiện không chạy
  • Trình rút gọn (R8)
    • Xuất hiện lỗi ClassNotFoundException khi chạy bản dựng bằng R8 trong AGP7

Để biết thêm thông tin, hãy xem bài đăng trên blog về phiên bản 2020.3.1 Bản vá 2.

Android Studio Arctic Fox | 2020.3.1 Bản vá 1 (Tháng 8/2021)

Bản cập nhật này đã khắc phục các vấn đề sau:

  • Trình bổ trợ Android cho Gradle
    • TypedefRemover sử dụng ASM5 và TypedefRemover không tương thích với các nguồn JDK 11 yêu cầu ASM7
    • Không thể dùng một số khối DSL mới từ Groovy DSL trong AGP 7.0.0
    • Phiên bản ổn định AGP 7.0.0 gửi ExternalApiUsageException trên libraryVariants.all{applicationId}
  • Trình gỡ lỗi C++
    • Lỗi của AS Arctic Fox khi bắt đầu phiên gỡ lỗi gốc trên Mac M1: "Đã tìm thấy cấu hình LLDB bị hỏng"
  • Trình quản lý tài nguyên
    • (Windows) New (Mới) > Vector Asset (Tài sản dạng vectơ) > picture.svg: ký tự "minus" không hợp lệ trong xml được tạo
  • Trình rút gọn (R8)
    • NPE trong BridgeHoisting
    • Sau khi nâng cấp lên 7.0.0, R8 gặp lỗi "Phương thức trả về hoạt động sử dụng không mong muốn sau khi ở trạng thái nội dòng"

Để biết thêm thông tin, hãy xem bài đăng trên blog về phiên bản 2020.3.1 Bản vá 1.