Tạo và chạy ứng dụng

Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

Khi muốn biết ứng dụng sẽ hiển thị thế nào và hoạt động ra sao trên một thiết bị, bạn cần phải tạo và chạy ứng dụng đó. Android Studio sẽ thiết lập các dự án mới để bạn có thể triển khai ứng dụng cho thiết bị ảo hoặc thiết bị thực tế chỉ bằng vài lần nhấp.

Phần tổng quan này sẽ tập trung giới thiệu cách dùng Android Studio để tạo và chạy ứng dụng phục vụ cho mục đích kiểm thử và gỡ lỗi. Hãy xem phần nội dung Tạo ứng dụng để phát hành cho người dùng, ở đó hướng dẫn cách dùng Android Studio để tạo ứng dụng và phát hành cho người dùng. Nếu bạn muốn biết thêm thông tin chi tiết về cách quản lý và tuỳ chỉnh bản dựng thông qua hoặc không thông qua Android Studio, hãy xem phần nội dung Định cấu hình bản dựng.

Quy trình tạo và chạy cơ bản

Để tạo và chạy ứng dụng, hãy làm theo các bước sau:

  1. Trong thanh công cụ, hãy chọn ứng dụng của bạn từ trình đơn thả xuống cấu hình chạy.
  2. Trên trình đơn thiết bị mục tiêu dạng thả xuống, hãy chọn thiết bị bạn muốn chạy ứng dụng trên đó.

    Trình đơn thả xuống về thiết bị mục tiêu.

    Nếu chưa định cấu hình thiết bị nào, bạn cần tạo Thiết bị Android ảo để sử dụng Trình mô phỏng Android hoặc kết nối một thiết bị thực tế.

  3. Nhấp vào biểu tượng Chạy .

Android Studio sẽ cảnh báo bạn nếu bạn cố gắng khởi chạy dự án của mình trên một thiết bị có lỗi hoặc cảnh báo liên quan đến dự án đó. Sự thay đổi về biểu tượng và văn phong có 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 ngoài mong muốn nhưng vẫn chạy được).

Theo dõi quy trình xây dựng

Bạn có thể xem thông tin chi tiết về quy trình xây dựng bằng cách nhấp vào View (Xem) > Tool Windows (Cửa sổ công cụ) > Tạo (Build) (hoặc bằng cách nhấp vào Dựng (Build) trên thanh cửa sổ công cụ). Cửa sổ này cho thấy các thao tác mà Gradle thực thi để tạo ứng dụng của bạn, như minh hoạ trong hình 1.

Hình 1. Cửa sổ Kết quả của bản dựng trong Android Studio

  1. Thẻ Build: Cho thấy các thao tác mà Gradle thực thi dưới dạng cây, trong đó mỗi nút đại diện cho một giai đoạn tạo hoặc một nhóm phần phụ thuộc của thao tác. Nếu bạn gặp lỗi thời gian xây dựng hoặc thời gian biên dịch, hãy kiểm tra cây rồi chọn một phần tử để đọc kết quả lỗi, như minh hoạ trong hình 2.

    Hình 2. Kiểm tra cửa sổ Kết quả của bản dựng để xem thông báo lỗi

  2. Thẻ Đồng bộ hoá: Cho thấy những việc cần làm mà Gradle thực thi để đồng bộ hoá với các tệp dự án của bạn. Tương tự như thẻ Tạo, nếu bạn gặp lỗi đồng bộ hóa, hãy chọn các phần tử trong cây để tìm thêm thông tin về lỗi.
  3. Khởi động lại: Thực hiện thao tác tương tự như chọn Tạo > Tạo dự án bằng cách tạo tệp bản dựng trung gian cho tất cả các mô-đun trong dự án của bạn.
  4. Chuyển đổi chế độ xem: Chuyển đổi giữa chế độ hiển thị quy trình thực thi nhiệm vụ dưới dạng cây đồ hoạ và hiển thị đầu ra văn bản chi tiết hơn từ Gradle – đây là kết quả tương tự như bạn thấy trong cửa sổ Gradle Console trên Android Studio 3.0 trở xuống.

Nếu các phiên bản dựng của bạn sử dụng các phiên bản sản phẩm, thì Gradle cũng sẽ gọi các thao tác đó để tạo các phiên bản sản phẩm đó. Để xem danh sách tất cả các tác vụ có sẵn trong bản dựng, hãy nhấp vào Xem > Công cụ Windows > Gradle (hoặc nhấp vào Gradle trong thanh cửa sổ của công cụ ).

Nếu xảy ra lỗi trong quá trình tạo, Gradle có thể đề xuất một số tùy chọn dòng lệnh để giúp bạn giải quyết vấn đề, chẳng hạn như --stacktrace hoặc --debug. Để sử dụng các tùy chọn dòng lệnh với quy trình xây dựng, hãy làm như sau:

  1. Mở hộp thoại Cài đặt hoặc Lựa chọn ưu tiên:
    • Trên Windows hoặc Linux, hãy chọn Tệp > Cài đặt từ thanh trình đơn.
    • Trên Mac OSX, hãy chọn Android Studio > Tùy chọn trong thanh trình đơn.
  2. Chuyển đến phần Xây dựng, Thực thi, Triển khai > Trình biên dịch.
  3. Trong trường văn bản bên cạnh mục Command-line Options, hãy nhập các tùy chọn dòng lệnh.
  4. Nhấp vào OK để lưu và thoát.

Gradle áp dụng những tuỳ chọn dòng lệnh này khi bạn thử tạo ứng dụng vào lần tới.

Các tính năng chạy và xây dựng nâng cao

Bạn có thể dùng cách mặc định áp dụng cho ứng dụng triển khai bằng Android Studio (nêu ở phần trước) để kiểm thử một ứng dụng đơn giản. Với trường hợp sử dụng nâng cao hơn, bạn có thể điều chỉnh nhiều khía cạnh của quy trình tạo và chạy ứng dụng:

  • Bạn có thể triển khai ứng dụng ở chế độ gỡ lỗi thông qua nút Debug (Gỡ lỗi). Việc chạy ứng dụng ở chế độ gỡ lỗi cho phép bạn đặt các điểm ngắt trong mã, kiểm tra các biến và đánh giá biểu thức tại thời điểm chạy cũng như chạy các công cụ gỡ lỗi. Hãy xem phần nội dung Gỡ lỗi ứng dụng để hiểu rõ hơn.

  • Nếu có một ứng dụng lớn và phức tạp hơn thì bạn có thể dùng tính năng Apply Changes (Áp dụng thay đổi) thay vì nhấp vào Run (Chạy) để tiết kiệm thời gian, vì bạn không cần khởi động lại ứng dụng mỗi lần muốn triển khai một thay đổi. Để biết thêm thông tin về tính năng Áp dụng các thay đổi, hãy xem phần nội dung Triển khai nhanh hơn bằng tính năng Áp dụng các thay đổi trên trang này.

  • Nếu bạn đang dùng Compose thì tính năng Chỉnh sửa trực tiếp sẽ giúp bạn cập nhật thành phần kết hợp theo thời gian thực mà không cần nhấp lại vào Run (Chạy). Như vậy, bạn có thể tập trung viết mã giao diện người dùng mà gần như không bị gián đoạn. Hãy xem phần nội dung Chỉnh sửa trực tiếp trên trang này để biết thêm thông tin.

  • Nếu ứng dụng của bạn có nhiều biến thể xây dựng hoặc phiên bản, thì bạn có thể dùng cửa sổ công cụ Biến thể xây dựng để chọn biến thể xây dựng cần triển khai. Hãy xem phần nội dung Thay đổi biến thể xây dựng trên trang này để hiểu rõ hơn cách chạy một biến thể xây dựng cụ thể.

  • Nếu muốn điều chỉnh các chế độ cài đặt, khởi chạy và kiểm thử ứng dụng thì bạn có thể thay đổi cấu hình chạy/gỡ lỗi. Cấu hình chạy/gỡ lỗi chỉ định xem ứng dụng của bạn sẽ được triển khai từ một APK hay Android App Bundle, mô-đun sẽ chạy, gói cần triển khai, hoạt động dùng để bắt đầu, thiết bị mục tiêu, chế độ cài đặt của trình mô phỏng, tuỳ chọn logcat, v.v. Để hiểu rõ hơn cách tạo cấu hình chạy/gỡ lỗi tuỳ chỉnh, hãy xem phần nội dung Tạo cấu hình chạy/gỡ lỗi.

  • Mặc dù nên thử dùng Android Studio để phục vụ các nhu cầu phát triển, nhưng bạn cũng có thể triển khai ứng dụng cho thiết bị thực tế hoặc thiết bị ảo từ dòng lệnh. Hãy xem phần nội dung Xây dựng ứng dụng từ dòng lệnh để biết thêm thông tin.

Triển khai nhanh hơn bằng tính năng Áp dụng các thay đổi

Trong Android Studio phiên bản 3.5 trở lên, tính năng Apply Changes (Áp dụng thay đổi) cho phép bạn đẩy các thay đổi về tài nguyên và mã vào ứng dụng đang chạy mà không cần khởi động lại ứng dụng. Trong một số trường hợp, bạn không cần khởi động lại hoạt động hiện tại. Tính linh hoạt này giúp bạn kiểm soát lượng ứng dụng được khởi động lại khi muốn triển khai và thử nghiệm các thay đổi nhỏ, tăng dần trong khi vẫn duy trì trạng thái hiện tại của thiết bị. Áp dụng Thay đổi sử dụng khả năng trong quá trình triển khai VMTI Android được hỗ trợ trên các thiết bị chạy Android 8.0 (API cấp 26) trở lên. Để tìm hiểu thêm về cách hoạt động của tính năng Áp dụng thay đổi, hãy xem Android Studio Project Marble: Áp dụng các thay đổi.

Yêu cầu

Bạn chỉ có thể áp dụng các hành động Áp dụng thay đổi khi đáp ứng các điều kiện sau:

  • Bạn tạo APK của ứng dụng bằng cách sử dụng biến thể bản dựng gỡ lỗi.
  • Bạn triển khai ứng dụng của mình cho một thiết bị mục tiêu hoặc trình mô phỏng chạy Android 8.0 (API cấp 26) trở lên.

Sử dụng tuỳ chọn Apply Changes (Áp dụng thay đổi)

Hãy sử dụng các tuỳ chọn sau đây khi bạn muốn triển khai các thay đổi đối với một thiết bị tương thích:

Áp dụng các thay đổi và khởi động lại hoạt động Biểu tượng Áp dụng các thay đổi và khởi động lại hoạt động

Cố gắng áp dụng cả thay đổi về tài nguyên lẫn mã bằng cách khởi động lại hoạt động nhưng không khởi động lại ứng dụng. Tóm lại, bạn có thể sử dụng tuỳ chọn này khi đã sửa đổi mã trong phần nội dung của phương thức hoặc sửa đổi một tài nguyên hiện có.

Bạn cũng có thể thực hiện hành động này bằng cách nhấn tổ hợp phím Ctrl+Alt+F10 (hoặc Control+Shift+Command+R trên macOS).

Áp dụng các thay đổi mã Biểu tượng Áp dụng thay đổi mã

Bạn chỉ có thể áp dụng các thay đổi về mã mà không cần khởi động lại. Nói chung, bạn có thể sử dụng tuỳ chọn này khi đã sửa đổi mã trong phần nội dung của phương thức nhưng chưa sửa đổi tài nguyên nào. Nếu bạn đã sửa đổi cả mã và tài nguyên, hãy dùng Áp dụng các thay đổi và Khởi động lại hoạt động.

Bạn cũng có thể thực hiện hành động này bằng cách nhấn Ctrl+F10 (hoặc Control+Command+R trên macOS).

Chạy Biểu tượng chạy

Triển khai tất cả các thay đổi và khởi động lại ứng dụng. Hãy sử dụng tuỳ chọn này khi không thể áp dụng các thay đổi mà bạn đã thực hiện bằng cách sử dụng một trong các tuỳ chọn Áp dụng thay đổi. Để tìm hiểu thêm về các loại thay đổi yêu cầu khởi động lại ứng dụng, hãy xem Các giới hạn của tính năng Áp dụng thay đổi.

Bật tính năng Chạy dự phòng cho Áp dụng các thay đổi

Sau khi bạn nhấp vào Áp dụng các thay đổi và Khởi động lại hoạt động hoặc Áp dụng các thay đổi về mã, Android Studio sẽ tạo một APK mới và xác định xem có thể áp dụng các thay đổi đó hay không , Nếu không thể áp dụng các thay đổi này và khiến Ứng dụng thay đổi không hoạt động, Android Studio sẽ nhắc bạn chạy lại Biểu tượng chạy ứng dụng của bạn. Tuy nhiên, nếu không muốn nhận lời nhắc mỗi khi điều này xảy ra, bạn có thể định cấu hình Android Studio để tự động chạy lại ứng dụng của mình khi không thể áp dụng thay đổi.

Để bật hành vi này, hãy làm theo các bước sau:

  1. Mở hộp thoại Cài đặt hoặc Tùy chọn:

    • Trên Windows hoặc Linux, hãy chọn Tệp > Cài đặt từ thanh trình đơn.
    • Trên macOS, hãy chọn Android Studio > Tùy chọn trong thanh trình đơn.
  2. Chuyển đến mục Tạo, Thực thi, Triển khai > Triển khai.

  3. Chọn hộp đánh dấu để bật tính năng tự động chạy dự phòng cho một trong các hành động Áp dụng thay đổi.

  4. Nhấp vào OK.

Các thay đổi tuỳ thuộc vào nền tảng

Một số tính năng của Áp dụng thay đổi phụ thuộc vào các phiên bản cụ thể của nền tảng Android. Để áp dụng những loại thay đổi này, bạn phải triển khai ứng dụng của mình trên một thiết bị chạy phiên bản Android đó (trở lên).

Loại thay đổi Phiên bản nền tảng tối thiểu
Thêm phương thức Android 11

Giới hạn của tuỳ chọn Apply Changes (Áp dụng thay đổi)

Tính năng Áp dụng thay đổi được thiết kế để tăng tốc quá trình triển khai ứng dụng. Tuy nhiên, có một số giới hạn đối với việc sử dụng tính năng này. Nếu bạn gặp bất kỳ vấn đề nào khi sử dụng tuỳ chọn Áp dụng thay đổi, hãy gửi lỗi.

Yêu cầu thay đổi mã yêu cầu khởi động lại ứng dụng

Một số thay đổi về mã và tài nguyên không thể áp dụng được cho đến khi ứng dụng được khởi động lại, bao gồm:

  • Thêm hoặc xoá trường
  • Đang xóa một phương thức
  • Thay đổi chữ ký phương thức
  • Thay đổi đối tượng sửa đổi của các phương thức hoặc loại
  • Thay đổi tính kế thừa của lớp
  • Thay đổi giá trị trong các giá trị enum
  • Thêm hoặc xoá tài nguyên
  • Thay đổi tệp kê khai ứng dụng
  • Thay đổi thư viện gốc (tệp SO)
Thư viện và trình bổ trợ

Một số thư viện và plugin tự động thực hiện thay đổi đối với tệp kê khai của ứng dụng hoặc tài nguyên được tham chiếu trong tệp kê khai đó. Việc cập nhật tự động này có thể ảnh hưởng đến việc áp dụng các thay đổi theo những cách sau:

  • Nếu thư viện hoặc trình bổ trợ thực hiện thay đổi đối với tệp kê khai của ứng dụng, bạn không thể Áp dụng thay đổi mã Biểu tượng Áp dụng thay đổi mã hoặc Áp dụng thay đổi và khởi động lại hoạt động Biểu tượng Áp dụng các thay đổi và khởi động lại hoạt động mà phải khởi động lại ứng dụng thì mới có thể thấy các thay đổi.
  • Nếu thư viện hoặc trình bổ trợ thực hiện thay đổi đối với tệp tài nguyên của ứng dụng, bạn không thể Áp dụng thay đổi mã Biểu tượng Áp dụng thay đổi mã mà phải Áp dụng thay đổi và khởi động lại Hoạt động Biểu tượng Áp dụng các thay đổi và khởi động lại hoạt động để xem các thay đổi của bạn.

Bạn có thể tránh các hạn chế này bằng cách tắt tất cả các bản cập nhật tự động cho các biến thể bản dựng gỡ lỗi.

Ví dụ: Crashlytics cập nhật các tài nguyên ứng dụng bằng một mã bản dựng duy nhất trong mỗi bản dựng, điều này ngăn bạn sử dụng Áp dụng thay đổi mã Biểu tượng Áp dụng thay đổi mã và yêu cầu bạn khởi động lại hoạt động của ứng dụng để xem những thay đổi của bạn. Bạn có thể vô hiệu hóa hành vi này để có thể sử dụng Áp dụng thay đổi mã cùng với Crashlytics với các bản dựng gỡ lỗi.

Mã tham chiếu trực tiếp nội dung trong một APK đã cài đặt

Nếu mã của bạn tham chiếu trực tiếp nội dung từ APK của ứng dụng đã được cài đặt trên thiết bị, thì mã đó có thể gây ra sự cố hoặc hoạt động không đúng sau khi nhấp vào Áp dụng thay đổi mã Biểu tượng Áp dụng thay đổi mã. Hành vi này xảy ra khi bạn nhấp vào Áp dụng thay đổi mã, tệp APK cơ bản trên thiết bị sẽ được thay thế trong quá trình cài đặt. Trong những trường hợp này, bạn có thể nhấp vào biểu tượng Apply Changes and Restart Activity (Áp dụng thay đổi và khởi động lại hoạt động) Biểu tượng Áp dụng các thay đổi và khởi động lại hoạt động hoặc Run (Chạy) Biểu tượng chạy.

Chỉnh sửa trực tiếp (thử nghiệm)

Chỉnh sửa trực tiếp là một tính năng thử nghiệm trong các bản phát hành Flamingo của Android Studio, cho phép bạn cập nhật các thành phần kết hợp trong trình mô phỏng và thiết bị thực tế theo thời gian thực. Khi bạn cập nhật hàm có khả năng kết hợp, các thay đổi sẽ được áp dụng trong thiết bị hoặc trình mô phỏng khi bạn thực hiện thay đổi đó. Chức năng này giảm thiểu việc chuyển đổi ngữ cảnh giữa thao tác viết và tạo ứng dụng, cho phép bạn tập trung viết mã lâu hơn mà không bị gián đoạn.

Chế độ Chỉnh sửa trực tiếp tập trung vào những thay đổi về mã liên quan đến giao diện người dùng và trải nghiệm người dùng. Tính năng Chỉnh sửa trực tiếp không hỗ trợ các thay đổi như cập nhật chữ ký của phương thức, thêm phương thức mới hoặc thay đổi hệ thống phân cấp của lớp. Để biết thêm thông tin, vui lòng xem bài viết về Các điểm hạn chế.

Tính năng này không thay thế cho hoạt động tạo và chạy ứng dụng cũng như Áp dụng những thay đổi. Thay vào đó, nó được thiết kế để tối ưu hóa quy trình làm việc khi bạn tạo, triển khai và cải tiến để phát triển giao diện người dùng trong Compose.

Quy trình thực hành các phương pháp hay nhất như sau:

  1. Thiết lập để ứng dụng của bạn có thể Chạy.
  2. Chỉnh sửa trực tiếp nhiều nhất có thể, cho đến khi bạn cần thực hiện thay đổi mà tính năng này không hỗ trợ, ví dụ: thêm phương thức mới trong khi ứng dụng đang chạy.
  3. Sau khi bạn thực hiện thay đổi không được hỗ trợ, hãy Chạy ứng dụng của bạn để tiếp tục Chỉnh sửa trực tiếp.

Ảnh GIF minh hoạ việc sử dụng tính năng Chỉnh sửa trực tiếp trên thiết bị

Hình 3 Mỗi khi bạn thực hiện một chỉnh sửa được tính năng Chỉnh sửa trực tiếp hỗ trợ, ứng dụng đang chạy trên thiết bị hoặc trình mô phỏng của bạn sẽ được cập nhật theo thời gian thực.

Làm quen với tính năng Chỉnh sửa trực tiếp

Để bắt đầu nhanh, hãy làm theo các bước sau để tạo một Empty Compose Activity, bật tính năng Chỉnh sửa trực tiếp cho dự án của bạn và thực hiện các thay đổi bằng tính năng Chỉnh sửa trực tiếp.

Thiết lập dự án mới
  1. Trước khi bắt đầu, nhớ đảm bảo bạn đã cài đặt phiên bản Android Studio Electric Eel mới nhất và cấp độ API của thiết bị thực hoặc trình mô phỏng ít nhất là cấp 30 trở lên.

  2. Mở Android Studio và chọn Dự án mới trong cửa sổ bật lên Chào mừng bạn đến với Android Studio. Nếu đã mở một dự án, bạn có thể tạo một dự án mới bằng cách chuyển đến Tệp > Mới > Dự án mới.

  3. Chọn mẫu Empty Compose Activity cho Điện thoại và máy tính bảng, rồi nhấp vào Tiếp theo.

    Chọn mẫu trong Android StudioHình 4. Các mẫu bạn có thể chọn. Đối với mục Chỉnh sửa trực tiếp, hãy chọn Empty Compose Activity.

  4. Nhập thông tin sau rồi nhấp vào Hoàn tất.

    • Tên: HelloWorld
    • Tên gói: com.example.helloworld
    • Lưu vị trí: Mặc định.
    • Ngôn ngữ: Kotlin
    • SDK tối thiểu: Mặc định

    Ví dụ về các chế độ cài đặt dự án ở Bước 4 được nhập vào AS Hình 5. Ví dụ về chế độ cài đặt dự án.

Bật tính năng Chỉnh sửa trực tiếp
  1. Trong IDE, hãy chuyển đến phần cài đặt để bật tính năng Chỉnh sửa trực tiếp.

    • Trên Windows hoặc Linux, hãy chuyển đến Tệp > Cài đặt > Trình chỉnh sửa > Chỉnh sửa trực tiếp.
    • Trên macOS, hãy chuyển đến Android Studio > Lựa chọn ưu tiên > Trình chỉnh sửa > Chỉnh sửa trực tiếp.

    Giao diện người dùng có hộp đánh dấu tính năng Chỉnh sửa trực tiếp trong phần cài đặt Android Studio Hình 6. Chọn chế độ Chỉnh sửa trực tiếp trong phần cài đặt.

  2. Trong trình chỉnh sửa, hãy mở tệp MainActivity. Đây là điểm truy cập cho ứng dụng của bạn.

  3. Nhấp vào Chạy Nút giao diện người dùng để triển khai ứng dụng, sau đó nhấp vào Phân tách ở trên cùng bên phải của trình chỉnh sửa để mở bản xem trước.

  4. Sau khi bật tính năng Chỉnh sửa trực tiếp, bạn sẽ thấy dấu kiểm màu xanh lục Chỉnh sửa trực tiếp ở trên cùng bên phải của trình chỉnh sửa.

    Giao diện người dùng có dấu kiểm màu xanh lục của tính năng Chỉnh sửa trực tiếp

Thực hiện và xem lại các thay đổi

Trong trình chỉnh sửa, hãy thay đổi phương thức Greeting hiện có trong MainActivity thành như sau. Các thay đổi của bạn sẽ xuất hiện ngay lập tức, như minh hoạ trong Hình 7.

@Composable
fun Greeting(name: String) {
    Text(text = "Hello $name!",
        Modifier.padding(80.dp) // Outer padding; outside background
            .background(color = Color.Cyan) // Solid element background color
            .padding(16.dp) // Inner padding; inside background, around text)
    )
}

Các thay đổi đối với phương thức Greeting được áp dụng trên thiết bị

Hình 7. Các thay đổi được thực hiện qua tính năng Chỉnh sửa trực tiếp đối với phương pháp Greeting nêu trên sẽ xuất hiện ngay lập tức.

Khắc phục sự cố

Nếu bạn không thấy nội dung chỉnh sửa của mình trong ngăn xem trước, Android Studio có thể không cập nhật được nội dung bạn đã chỉnh sửa. Kiểm tra xem chỉ báo giao diện người dùng Chỉnh sửa trực tiếp có hiện biểu tượng tạm dừng hay không, vì biểu tượng này cho biết lỗi biên dịch.

Giao diện người dùng trạng thái trong tính năng Chỉnh sửa trực tiếp

Hình 8. Để xem thêm thông tin về lỗi và nội dung đề xuất cách khắc phục, hãy di chuột lên mục Chỉnh sửa trực tiếp: BẬT trong giao diện người dùng.

Các điểm hạn chế

Dưới đây là danh sách các giới hạn hiện có.

  • Tính năng Chỉnh sửa trực tiếp yêu cầu thiết bị hoặc trình mô phỏng thực tế đang chạy API cấp 30 trở lên.
  • Tính năng Chỉnh sửa trực tiếp chỉ hỗ trợ chỉnh sửa nội dung hàm, tức là bạn không thay đổi được tên hàm hoặc chữ ký, thêm hoặc xoá hàm hay thay đổi trường không phải hàm.
  • Có thể các lớp của tính năng Chỉnh sửa trực tiếp được sửa đổi phải chịu một số hao tổn về hiệu suất. Bạn nên Chạy ứng dụng và sử dụng Bản phát hành sạch nếu đang đánh giá hiệu suất của ứng dụng.
  • Bạn cần thực hiện lệnh Run (chạy) đầy đủ để trình gỡ lỗi có thể hoạt động trên các lớp đã chỉnh sửa bằng tính năng Chỉnh sửa trực tiếp.
  • Ứng dụng đang chạy có thể gặp sự cố khi bạn chỉnh sửa bằng tính năng Chỉnh sửa trực tiếp. Nếu việc này xảy ra, bạn có thể triển khai lại ứng dụng bằng nút Chạy Nút giao diện người dùng.
  • Tính năng Chỉnh sửa trực tiếp không thực hiện bất kỳ thao tác mã byte nào được xác định trong tệp bản dựng của dự án – ví dụ: thao tác mã byte sẽ được áp dụng khi tạo dự án bằng các lựa chọn trong trình đơn Build (Tạo) hoặc nhấp vào nút Buid (Tạo) hoặc Run (Chạy).
  • Các hàm không có khả năng kết hợp được cập nhật trực tiếp trên thiết bị hoặc trình mô phỏng và kích hoạt quá trình kết hợp lại. Quá trình kết hợp lại có thể sẽ không gọi hàm được cập nhật. Đối với các hàm không có khả năng kết hợp, bạn phải kích hoạt các hàm mới cập nhật hoặc Chạy lại ứng dụng.
  • Tính năng Chỉnh sửa trực tiếp không tiếp tục quá trình chạy ứng dụng. Bạn phải Chạy lại ứng dụng.

Câu hỏi thường gặp

  • Trạng thái hiện tại của tính năng Chỉnh sửa trực tiếp là gì?
    • Tính năng Chỉnh sửa trực tiếp hiện có sẵn trong kênh Electric Eel canary của Android Studio dưới dạng một tính năng thử nghiệm. Bạn có thể bật hoặc tắt chế độ này bằng cách nhấp vào File (Tệp) > Settings (Cài đặt) > Editor (Trình chỉnh sửa) > Live Edit (Chỉnh sửa trực tiếp) (hoặc Android Studio > Preferences (Lựa chọn ưu tiên) > Editor (Trình chỉnh sửa) > Live Edit (Chỉnh sửa trực tiếp) trên macOS).
  • Khi nào nên dùng tính năng Chỉnh sửa trực tiếp?
    • Hãy sử dụng tính năng Chỉnh sửa trực tiếp khi bạn muốn nhanh chóng thấy tác động của những thay đổi đối với các thành phần trải nghiệm người dùng (ví dụ: thông tin cập nhật về công cụ sửa đổi, ảnh động) trong trải nghiệm tổng thể của ứng dụng.
  • Khi nào tôi nên tránh sử dụng tính năng Chỉnh sửa trực tiếp?
    • Tính năng Chỉnh sửa trực tiếp hiện tập trung vào những thay đổi liên quan đến mã của giao diện người dùng và trải nghiệm người dùng. Tránh sử dụng mã này cho các thay đổi như cập nhật chữ ký phương thức, thêm phương thức mới hoặc thay đổi hệ phân cấp lớp mà phương thức này không hỗ trợ. Để biết thêm thông tin, vui lòng xem bài viết về Các điểm hạn chế.
  • Khi nào tôi nên sử dụng tính năng Xem trước trong Compose?
    • Sử dụng tính năng Xem trước trong Composition khi bạn đang phát triển các thành phần kết hợp riêng lẻ. Bản xem trước trực quan hoá các thành phần Compose và tự động làm mới để hiện hiệu ứng của các thay đổi về mã. Bản xem trước cũng hỗ trợ xem các thành phần trên giao diện người dùng theo từng cấu hình và trạng thái (ví dụ: chế độ tối, ngôn ngữ, tỷ lệ phông chữ).

Thay đổi biến thể bản dựng

Theo mặc định, Android Studio sẽ tạo phiên bản gỡ lỗi của ứng dụng mà bạn chỉ muốn sử dụng trong quá trình phát triển khi nhấp vào Chạy.

Để thay đổi biến thể bản dựng mà Android Studio sử dụng, hãy chọn Tạo > Chọn Biến thể bản dựng trong thanh trình đơn.

Đối với các dự án không có mã gốc/C++, bảng Biến thể bản dựng có hai cột: Mô-đunBiến thể bản dựng đang hoạt động. Giá trị Biến thể bản dựng đang hoạt động của mô-đun xác định biến thể bản dựng mà IDE triển khai cho thiết bị được kết nối của bạn và xuất hiện trong trình chỉnh sửa.

Hình 9. Bảng điều khiển Build Variants (Biến thể bản dựng) có hai cột cho các dự án không có mã gốc/C++

Để chuyển đổi giữa các biến thể, hãy nhấp vào ô Biến thể bản dựng đang hoạt động cho một mô-đun và chọn biến thể mong muốn từ trường danh sách.

Đối với các dự án có mã gốc/C++, bảng Biến thể bản dựng có ba cột: Mô-đun, Biến thể bản dựng đang hoạt độngABI đang hoạt động. Giá trị Biến thể đang tạo biến trong mô-đun sẽ xác định biến thể bản dựng mà IDE triển khai cho thiết bị của bạn và hiển thị trong trình chỉnh sửa. Đối với các mô-đun gốc, giá trị Active ABI (ABI đang hoạt động) xác định ABI mà trình chỉnh sửa sử dụng nhưng không ảnh hưởng đến nội dung được triển khai.

Hình 10. Bảng điều khiển Build Variants (Biến thể bản dựng) sẽ thêm cột Active ABI (ABI đang hoạt động) cho dự án có mã gốc/C++

Để thay đổi biến thể bản dựng hoặc ABI, hãy nhấp vào ô cho cột Biến thể hoạt động của bản dựng hoặc ABI hiện hoạt và chọn biến hoặc ABI mà bạn muốn từ danh sách. Sau khi bạn thay đổi lựa chọn, IDE sẽ tự động đồng bộ hóa dự án của bạn. Việc thay đổi cột cho một ứng dụng hoặc mô-đun thư viện sẽ áp dụng nội dung thay đổi cho tất cả các hàng phụ thuộc.

Theo mặc định, các dự án mới được thiết lập với hai biến thể bản dựng: một biến thể gỡ lỗi và bản phát hành. Bạn cần xây dựng biến thể bản phát hành để chuẩn bị ứng dụng cho bản phát hành công khai.

Để tạo các biến thể khác của ứng dụng, mỗi biến thể có các tính năng hoặc yêu cầu riêng về thiết bị, bạn có thể xác định các biến thể bản dựng bổ sung.

Xung đột trong hộp thoại Biến thể bản dựng của Android Studio

Trong hộp thoại Biến thể bản dựng của Android Studio, bạn có thể thấy thông báo lỗi cho biết các xung đột giữa các biến thể bản dựng, chẳng hạn như sau:

Cửa sổ Biến thể bản dựng cho thấy lỗi xung đột biến thể

Lỗi này không chỉ ra vấn đề về bản dựng với Gradle – mà chỉ cho biết rằng chính IDE Android Studio không thể phân giải các biểu tượng giữa các biến thể của những mô-đun đã chọn.

Ví dụ: nếu bạn có một mô-đun M1 phụ thuộc vào biến thể v1 của mô-đun M2, nhưng M2 có biến thể v2 được chọn trong IDE, thì bạn có biểu tượng chưa được giải quyết trong IDE. Giả sử M1 phụ thuộc vào một lớp Foo chỉ có trong v1. Khi bạn chọn v2, lớp đó không được IDE xác định và lớp đó sẽ không phân giải được và hiển thị các lỗi trong mã M1.

Những thông báo lỗi này xuất hiện do IDE không thể tải mã cho nhiều biến thể cùng một lúc. Tuy nhiên, xét về bản dựng ứng dụng, biến thể được chọn trong hộp thoại này sẽ không có hiệu lực vì Gradle tạo ứng dụng của bạn bằng mã nguồn được chỉ định trong các công thức bản dựng Gradle, chứ không dựa trên nội dung hiện được tải trong IDE.

Thay đổi cấu hình chạy/gỡ lỗi

Khi bạn chạy ứng dụng của mình lần đầu tiên, Android Studio sẽ sử dụng cấu hình chạy mặc định. Cấu hình quy định sẽ chỉ định việc triển khai ứng dụng của bạn từ một tệp APK hoặc Android App Bundle, mô-đun để chạy, gói triển khai, hoạt động để bắt đầu, nhắm mục tiêu thiết bị, tuỳ chọn cài đặt của trình mô phỏng, logcat và nhiều tuỳ chọn khác.

Cấu hình chạy/gỡ lỗi mặc định tạo một APK, khởi chạy hoạt động dự án mặc định và sử dụng hộp thoại Chọn mục tiêu triển khai để lựa chọn thiết bị mục tiêu. Nếu các tuỳ chọn cài đặt mặc định không phù hợp với dự án hoặc mô-đun của bạn, bạn có thể tuỳ chỉnh cấu hình chạy/gỡ lỗi, hoặc thậm chí tạo một cấu hình mới, ở cấp dự án, mặc định và mô-đun. Để chỉnh sửa cấu hình chạy/gỡ lỗi, hãy chọn Run > Edit Configurations (Chạy > Chỉnh sửa cấu hình). Để biết thêm thông tin, hãy xem phần nội dung Tạo và chỉnh sửa cấu hình chạy/gỡ lỗi.