Để tạo và chạy ứng dụng, hãy làm theo các bước sau :
Trong trình đơn thiết bị mục tiêu, hãy chọn thiết bị mà bạn muốn chạy ứng dụng trên đó.
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 .
android studio sẽ cảnh báo bạn nếu bạn cố gắng chạy dự án của mình trên một thiết bị có lỗi hoặc có cảnh báo liên quan đến dự án đó. Các thay đổi về biểu tượng và văn phong của lỗi ( lựa chọn thiết bị khiến cấu hình bị hỏng ) sẽ khác so với cảnh báo ( lựa chọn thiết bị có thể dẫn đến hành six không mong muốn nhưng vẫn chạy được ) .
Để xem thông tin qi tiết về quy trình xây dựng, hãy chọn View > Tool Windows > Build ( Xem > Cửa sổ công cụ > Tạo ) hoặc nhấp vào Build ( Tạo ) trên thanh cửa sổ công cụ. Cửa sổ công cụ Build ( Tạo ) sẽ hiển thị những nhiệm vụ mà Gradle thực thi để tạo ứng dụng của bạn, như minh hoạ trong hình one .
Hình 1. Cửa sổ công cụ Build (Tạo) trong Android Studio.
Hình 2. Kiểm tra thẻ Build Output (Kết quả của bản dựng) để xem thông báo lỗi.
Nếu các biến thể 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 nhiệm vụ để tạo các phiên bản sản phẩm đó. Để xem danh sách tất cả các nhiệm vụ có sẵn trong bản dựng, hãy nhấp vào View > Tool Windows > Gradle ( Xem > Cửa sổ công cụ > Gradle ) hoặc nhấp vào Gradle trong thanh cửa sổ công cụ .
Nếu xảy ra lỗi trong quy trình xây dựng, thì Gradle có thể đề xuất các tuỳ chọn dòng lệnh để giúp bạn giải quyết sự cố, chẳng hạn như --stacktrace
hoặc --debug
. Cách sử dụng các tuỳ chọn dòng lệnh với quy trình xây dựng :
Gradle sẽ áp dụng các lựa chọn dòng lệnh này chi bạn thử tạo ứng dụng vào lần tiếp theo .
Cách mặc định để tạo và chạy ứng dụng trong android studio là đủ để kiểm thử một ứng dụng đơn giản. Tuy nhiên, bạn có thể dùng các tính năng tạo và chạy sau đây cho những trường hợp sử dụng nâng cao hơn :
. 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. Để biết thêm thông can, hãy xem phần Chỉnh sửa trực tiếp ( thử nghiệm ) .
Với tính năng Áp dụng các thay đổi trong android studio 3.5 trở lên, bạn có thể áp dụng các thay đổi về tài nguyên và mã cho ứ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 số lượng ứng dụng được khởi động lại chi muốn triển khai và thử nghiệm các thay đổi nhỏ, tăng dần trong chi vẫn duy trì trạng thái hiện tại của thiết bị .
Tính năng Áp dụng các thay đổi sử dụng những chức năng trong quá trình triển khai JVMTI android được hỗ trợ trên các thiết bị chạy android 8.0 ( API cấp twenty-six ) 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 stick out marble : apply change ( android studio apartment project marble : Áp dụng các thay đổi ) .
Bạn chỉ có thể áp dụng các hành động Áp dụng thay đổi chi đáp ứng các điều kiện sau :
Hãy sử dụng các tuỳ chọn sau đây chi bạn muốn triển khai các thay đổi đối với một thiết bị tương thích :
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ả các thay đổi về tài nguyên và 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. Nhìn chung, bạn có thể sử dụng lựa chọn này chi 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 thao tác này bằng cách nhấn tổ hợp phím control condition + elevation + F10 ( manipulate + command + switch + r trên macOS ) .
Biểu tượng Áp dụng thay đổi mã : Cố gắng chỉ áp dụng các thay đổi đối với mã mà hoàn toàn không cần khởi động lại. Nhìn chung, bạn có thể sử dụng lựa chọn này chi sửa đổi mã trong phần nội dung của phương thức nhưng chưa sửa đổi bất kỳ tài nguyên nào. Nếu bạn đã sửa đổi cả mã và tài nguyên, hãy dùng tính năng Áp dụng các thay đổi và bắt đầu lại hoạt động .
Bạn cũng có thể thực hiện thao tác này bằng cách nhấn tổ hợp phím control + F10 ( control + command + r trên macOS ) .
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 lựa chọn này chi không thể áp dụng các thay đổi bạn đã thực hiện bằng một trong các lựa chọn Áp dụng các 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 phần Các giới hạn của tính năng Áp dụng các thay đổi .
chi bạn nhấp vào Apply Changes and Restart Activity ( Áp dụng các thay đổi và khởi động lại hoạt động ) hoặc Apply Code Changes ( Áp dụng thay đổi mã ), android studio apartment 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 các thay đổi đó không áp dụng được và sẽ khiến tính năng Áp dụng các thay đổi bị lỗi, thì android studio apartment sẽ nhắc bạn Chạy lại ứng dụng .
Nếu không muốn nhận lời nhắc mỗi chi điều này xảy right ascension, thì bạn có thể định cấu hình để android studio apartment tự động chạy lại ứng dụng chi không thể áp dụng các thay đổi. Để bật hành six này, hãy làm theo các bước sau :
Lưu ý: Một số loại thay đổi không khiến tính năng Áp dụng các thay đổi bị lỗi, nhưng bạn vẫn phải khởi động lại ứng dụng theo cách thủ công trước chi có thể thấy những thay đổi đó. Ví dụ : nếu bạn thực hiện các thay đổi đối với phương thức onCreate()
của một hoạt động, thì các thay đổi đó chỉ có hiệu lực sau chi hoạt động đó được chạy lại, vì vậy, bạn phải khởi động lại ứng dụng để thấy các thay đổi đó .
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 trên một thiết bị chạy phiên bản android đó ( trở lên ). Ví dụ : để thêm một phương thức, cần có android eleven trở lên .
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 về thời điểm có thể dùng tính năng này .
Một số thay đổi đối với mã và tài nguyên sẽ không thể áp dụng được cho đến chi ứng dụng được khởi động lại, bao gồm :
* Adding or removing a field
* Removing a method
* Changing method signatures
* Changing modifiers of methods or classes
* Changing class inheritance
* Changing values in enums
* Adding or removing a resource
* Changing the app manifest
* Changing native libraries (SO files)
Một số thư viện và trình bổ trợ tự động thực hiện các 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 tính năng Áp dụng các thay đổi theo những cách sau :
Để tránh những giới hạn này, hãy tắt mọi bản cập nhật tự động cho các biến thể bản dựng gỡ lỗi của bạn .
Ví dụ : firebase 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 sẽ ngăn bạn sử dụng tính nă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 mình. Hãy vô hiệu hoá hành united states virgin islands này để sử dụng tính năng Áp dụng thay đổi mã cùng Crashlytics với các bản gỡ lỗi .
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 radium sự cố hoặc không hoạt động bình thường sau chi bạn nhấp vào biểu tượng Áp dụng thay đổi mã. Hành united states virgin islands này xảy ra serve chi bạn nhấp vào biểu tượng Áp dụng thay đổi mã, tệp APK cơ sở trên thiết bị sẽ bị 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 Áp dụng các thay đổi và khởi động lại hoạt động hoặc Chạy .
Nếu bạn gặp bất kỳ vấn đề nào khác chi dùng tính năng Áp dụng các thay đổi, hãy báo cáo lỗi .
Chỉnh sửa trực tiếp là một tính năng thử nghiệm trong android studio apartment. Tính năng này 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 theo thời gian thực. Tính 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ã trong thời gian dài hơn mà không bị gián đoạn .
Tìm hiểu thêm về tính năng Chỉnh sửa trực tiếp
Theo mặc định, android studio apartment sẽ tạo phiên bản gỡ lỗi của ứng dụng ( chỉ dùng trong quá trình phát triển ) chi bạn nhấp vào biểu tượng Chạy .
Để thay đổi biến thể bản dựng mà android studio sử dụng, hãy làm theo một trong những cách sau :
Đối với các dự án không có mã gốc/C++, bảng Build Variants ( Biến thể bản dựng ) có two cột : Module ( Mô-đun ) và Active Build Variant ( Biến thể bản dựng đang hoạt động ). Giá trị Active Build Variant ( 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 Build Variants ( Biến thể bản dựng ) có two 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 ô Active Build Variant ( Biến thể bản dựng đang hoạt động ) của một mô-đun và chọn biến thể mong muốn trong danh sách .
Đối với các dự án có mã gốc/C++, bảng Build Variants ( Biến thể bản dựng ) có three cột sau :
Giá trị Active Build Variant ( 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ủa bạn và xuất hiện 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 droppings được triển khai .
Hình 10. Bảng Build Variants ( Biến thể bản dựng ) sẽ thêm cột Active ABI ( ABI đang hoạt động ) cho các 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 ô của cột Active Build Variant ( Biến thể bản dựng đang hoạt động ) hoặc Active ABI ( ABI đang hoạt động ) và chọn biến thể hoặc ABI mong muốn trong danh sách. Sau chi bạn thay đổi lựa chọn, IDE sẽ tự động đồng bộ hoá dự án của bạn. chi một ứng dụng hoặc mô-đun thư viện có thay đổi thì thay đổi đó sẽ áp dụng 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 two biến thể bản dựng : one biến thể gỡ lỗi và one biến thể 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. Để xác định các biến thể khác của ứng dụng có các tính năng hoặc yêu cầu khác nhau về thiết bị, bạn có thể xác định các biến thể bản dựng bổ sing .
Trong hộp thoại Build Variants ( 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 xung đột giữa các biến thể bản dựng, chẳng hạn như sau :
Lỗi này không chỉ right ascension vấn đề về bản dựng với Gradle. Lỗi này cho biết IDE của android studio không thể phân giải các biểu tượng giữa những biến thể của các 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 sẽ thấy biểu tượng chưa phân giải trong IDE. Giả sử M1
phụ thuộc vào một lớp chỉ có trong v1
; chi bạn chọn v2
, lớp đó không được IDE xác định. perform đó, IDE không phân giải được tên lớp và hiển thị lỗi trong mã của mô-đun 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 tạo right ascension tác động vì Gradle tạo ứng dụng của bạn bằng mã nguồn được chỉ định trong hướng dẫn cho bản dựng Gradle, chứ không dựa trên nội droppings hiện được tải trong IDE.
chi 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 chạy sẽ chỉ định việc triển khai ứng dụng của bạn từ một tệp APK hay android App bundle, cũng như chỉ định mô-đun sẽ chạy, gói sẽ triển khai, hoạt động sẽ bắt đầu, thiết bị mục tiêu, chế độ cài đặt trình mô phỏng, tuỳ chọn Logcat và nhiều tuỳ chọn khác .
Cấu hình chạy/gỡ lỗi mặc định sẽ 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 Select Deployment Target ( Chọn đối tượng triển khai ) để lựa chọn thiết bị mục tiêu. Nếu các chế độ 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 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 can, hãy xem bài viết Tạo và chỉnh sửa cấu hình chạy/gỡ lỗi .