Trang này theo dõi các vấn đề đã biết với Android Studio Hedgehog và trình bổ trợ Android cho Gradle 8.2.2. Nếu bạn gặp phải vấn đề chưa được nêu ở đây, vui lòng báo cáo lỗi. Show
Nâng cấp lên bản xem trước: Mỗi bản phát hành Android Studio và trình bổ trợ Android cho Gradle đều nhằm cải thiện độ ổn định và hiệu suất, cũng như bổ sung các tính năng mới. Để tận hưởng những lợi ích của các bản phát hành sắp tới, hãy tải xuống và cài đặt Bản xem trước Android Studio. Các vấn đề đã biết với Android StudioPhần này mô tả các vấn đề đã biết trong phiên bản ổn định mới nhất của Android Studio. Cửa sổ Trợ lý Firebase hiển thị thông báo lỗiNếu Cửa sổ Trợ lý Firebase (trong phần Tools > Firebase (Công cụ > Firebase) trên trình đơn chính) hiển thị thông báo lỗi, hãy vô hiệu hoá bộ nhớ đệm rồi khởi động lại Android Studio để khắc phục lỗi. Không phải nút Compose nào cũng kiểm tra được bằng Layout InspectorNếu bạn nhận thấy có nút Compose không kiểm tra được khi đang sử dụng Layout Inspector, thì có thể là do một lỗi đã được khắc phục trong phiên bản Compose 1.5.0-alpha04 của chúng tôi. Nếu gặp vấn đề này, hãy đảm bảo rằng bạn nâng cấp lên Compose phiên bản 1.5.0-alpha04 trở lên. Lỗi khi hiển thị tính năng Xem trước trong ComposeBắt đầu với Android Studio Chipmunk, nếu bạn thấy
0 trong bảng các vấn đề, hãy nhớ thêm phần phụ thuộc
1 vào
2 trong mô-đun của bạn. Nếu bạn thấy
3 trong bảng các vấn đề, hãy nhớ thêm phần phụ thuộc
1 vào
5 trong mô-đun của bạn. Nếu bạn thấy
6 hoặc
7 trong bảng các vấn đề, hãy nhớ thêm phần phụ thuộc
1 vào
9 trong mô-đun của bạn. Lỗi khi sử dụng nhiều mật khẩu khác nhau cho khoá và kho khoáKể từ phiên bản 4.2, Android Studio hiện chạy trên JDK 11. Bản cập nhật này gây ra sự thay đổi lớn về hành vi liên quan đến các khoá ký. Khi bạn chuyển đến phần Build \> Generate Signed Bundle/APK (Tạo > Tạo gói/tệp APK đã ký) và tìm cách định cấu hình hoạt động ký ứng dụng cho gói ứng dụng hoặc tệp APK, việc nhập các mật khẩu khác nhau cho khoá và kho khoá có thể dẫn đến lỗi sau:
Để khắc phục vấn đề này, hãy nhập cùng một mật khẩu cho cả khoá và kho khoá. Android Studio không khởi động sau khi cài đặt phiên bản 4.2Studio cố gắng nhập .vmoptions trước và dọn dẹp chúng để thao tác với trình thu gom rác mà JDK 11 sử dụng. Nếu quá trình đó không thành công, thì IDE có thể không khởi động cho một số người dùng đã đặt các tuỳ chọn máy ảo tuỳ chỉnh trong tệp .vmoptions. Để khắc phục lỗi này, bạn nên đánh dấu các lựa chọn tuỳ chỉnh trong .vmoptions là nội dung nhận xét (bằng ký tự "#"). Bạn có thể tìm thấy tệp .vmoptionsở các vị trí sau: Windows $ IBUS_ENABLE_SYNC_MODE=1 ibus-daemon -xrd 0 macOS $ IBUS_ENABLE_SYNC_MODE=1 ibus-daemon -xrd 1 Linux $ IBUS_ENABLE_SYNC_MODE=1 ibus-daemon -xrd 2 Nếu Studio vẫn không khởi động sau khi thử giải pháp này, hãy xem bài viết ở bên dưới. Ứng dụng sử dụng Trình kiểm tra cơ sở dữ liệu gặp sự cố trên trình mô phỏng Android 11Những ứng dụng sử dụng Trình kiểm tra cơ sở dữ liệu có thể gặp sự cố khi chạy trên trình mô phỏng Android 11, kèm theo lỗi như sau xuất hiện trong logcat:
Để khắc phục sự cố này, hãy nâng cấp trình mô phỏng Android 11 của bạn lên phiên bản 9 trở lên bằng cách chuyển đến Tools > SDK Manager (Công cụ > Trình quản lý SDK). Trong thẻ SDK Platforms (Nền tảng SDK), hãy đánh dấu vào hộp có nhãn Show Package Details (Hiện chi tiết gói) và chọn bản sửa đổi 9 trở lên của trình mô phỏng Android 11. Studio không khởi động sau khi nâng cấpNếu Studio không khởi động sau khi nâng cấp, thì vấn đề có thể là do cấu hình Android Studio không hợp lệ được nhập từ phiên bản Android Studio trước hoặc trình bổ trợ không tương thích. Để khắc phục, hãy thử xoá (hoặc đổi tên, vì mục đích sao lưu) thư mục bên dưới, tuỳ thuộc vào phiên bản Android Studio và hệ điều hành, rồi khởi động lại Android Studio. Thao tác này sẽ đặt lại Android Studio về trạng thái mặc định và xoá tất cả trình bổ trợ của bên thứ ba. Đối với Android Studio 4.1 trở lên:
Đối với Android Studio 4.0 trở xuống:
Hãy lưu ý rằng thư mục cấu hình cho các bản phát hành Canary và Beta của Android Studio là $ XMODIFIERS= ./bin/studio.sh 7 thay vì $ XMODIFIERS= ./bin/studio.sh 8 cho $ XMODIFIERS= ./bin/studio.sh 9. Ví dụ: các bản dựng Android Studio 4.1 Canary sử dụng
0, thay vì thư mục
1 dùng cho các Bản phát hành tiềm năng và Bản phát hành ổn định. Vấn đề biên dịch trong các dự án đa nền tảng KotlinLỗi biên dịch có thể phát sinh trong mã MPP Kotlin do thiếu ký hiệu. Để giải quyết vấn đề này, hãy nâng cấp trình bổ trợ Kotlin lên phiên bản 1.4. Lập sơ đồ phím xung đột trên LinuxTrên Linux, một số phím tắt xung đột với các phím tắt mặc định của Linux và các phím tắt của trình quản lý cửa sổ phổ biến, chẳng hạn như KDE và GNOME. Các phím tắt xung đột có thể không hoạt động như mong đợi trong Android Studio. Bạn có thể xem thêm thông tin về vấn đề này (bao gồm cả các giải pháp có thể giải quyết) trong trình theo dõi lỗi của IntelliJ. Văn bản nhỏ trên giao diện người dùng ChromeOSTrên ChromeOS, văn bản có thể xuất hiện nhỏ hơn nhiều so với các bản phát hành trước. Để xử lý vấn đề này, hãy làm như sau:
Chỉnh sửa mãPhần này mô tả các vấn đề đã biết liên quan đến trình soạn thảo mã. Nhập bằng bàn phím bị treo – các sự cố "iBus" trên LinuxCó một số tương tác đã biết giữa trình nền iBus trên Linux và Android Studio. Trong một số trường hợp, IDE sẽ ngừng phản hồi thông tin nhập bằng bàn phím hoặc bắt đầu nhập các ký tự ngẫu nhiên. Lỗi này được kích hoạt bởi một số đồng bộ hoá bị thiếu giữa iBus và XLib + AWT và đã được báo cáo ngược dòng lên JetBrains và iBus. Có 3 giải pháp hiện tại để giải quyết vấn đề này:
Cấu hình dự ánPhần này mô tả các vấn đề đã biết liên quan đến cấu hình dự án và đồng bộ hoá Gradle. Đồng bộ hoá Gradle không thành công: Pipe bị hỏngVấn đề là trình nền Gradle đang cố sử dụng IPv4 thay vì IPv6.
lỗi "ứng dụng ngang hàng chưa được xác thực" trong Trình quản lý SDK hoặc tính năng đồng bộ hoá GradleNguyên nhân gốc rễ của những lỗi này là do thiếu chứng chỉ trong
8. Để xử lý các lỗi này, hãy tiến hành như sau:
Triển khaiPhần này mô tả các vấn đề đã biết liên quan đến việc triển khai ứng dụng cho một thiết bị đã kết nối. [Chỉ Mac OS] Các bản cập nhật gia tăng không được áp dụng do có vấn đề với tệp Gradle đang xem trên các dự án được lưu trongsudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 1 Vấn đề Gradle 18149 ảnh hưởng đến trình bổ trợ Android cho Gradle phiên bản 7.0 trở lên vì chúng . Kể từ Gradle 7.0, tính năng xem tệp sẽ bật theo mặc định. Nếu bạn đang làm việc trên Mac OS và dự án của bạn đã được lưu trong sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 1, thì việc xem tệp Gradle sẽ không theo dõi các thay đổi về tệp cho đúng. Điều này sẽ khiến cho Hệ thống xây dựng không thấy bất kỳ thay đổi nào đối với tệp và do đó, hệ thống sẽ không cập nhật (các) APK. Sau đó, mã triển khai gia tăng sẽ không hoạt động vì trạng thái APK cục bộ giống như trên thiết bị. Để khắc phục vấn đề này, bạn nên chuyển thư mục của dự án sang thư mục người dùng, tức là trong sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 3. Sau đó, Hệ thống xây dựng sẽ được thông báo rõ ràng về những thay đổi đối với tệp bằng cách xem tệp Gradle và các thay đổi dần sẽ được áp dụng thành công. Trình mô phỏng Android HAXM trên macOS High SierraTrình mô phỏng Android trên macOS High Sierra (10.13) yêu cầu HAXM 6.2.1 trở lên để có thể tương thích và ổn định nhất với macOS. Tuy nhiên, macOS 10.13 có quy trình phức tạp hơn khi cài đặt các tiện ích nhân kernel như HAXM. Bạn cần cho phép tự cài đặt tiện ích nhân kernel theo cách thủ công như sau:
Để biết thêm thông tin và cách giải quyết, hãy xem trang web này của Apple và vấn đề 62395878. Áp dụng các thay đổiPhần này mô tả các vấn đề đã biết liên quan đến . Không áp dụng tên ứng dụng mớiNếu bạn đổi tên ứng dụng, sau đó cố gắng áp dụng thay đổi đó, thì tên cập nhật có thể không được phản ánh. Để giải quyết vấn đề này, hãy nhấp vào Run (Chạy) để triển khai lại ứng dụng và xem các thay đổi.Sự cố lỗi Android RuntimeNếu đang sử dụng một thiết bị chạy Android 8.0 hoặc 8.1, bạn có thể gặp phải thông báo "VERIFICATION_ERROR" khi cố gắng áp dụng một số loại thay đổi nhất định (đặc biệt nếu bạn đang sử dụng Kotlin). Thông báo này là do một vấn đề với Android Runtime đã được khắc phục trong Android 9.0 trở lên. Mặc dù vấn đề khiến tính năng Áp dụng các thay đổi bị lỗi, nhưng bạn vẫn có thể Chạy lại ứng dụng để xem lại các thay đổi. Tuy nhiên, bạn nên nâng cấp thiết bị lên Android 9.0 trở lên.Gỡ lỗi và thử nghiệmPhần này mô tả các vấn đề đã biết liên quan đến việc gỡ lỗi và thử nghiệm ứng dụng của bạn. JUnit thử nghiệm các tài nguyên bị thiếu trong classpath khi chạy trên Android StudioNếu có các thư mục tài nguyên cụ thể trong các mô-đun Java của mình, thì bạn sẽ không tìm thấy các tài nguyên đó khi chạy kiểm thử qua IDE. Chạy các thử nghiệm bằng cách sử dụng Gradle từ dòng lệnh sẽ mang lại hiệu quả. Thực thi tác vụ Gradle sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 4 từ IDE cũng sẽ mang lại hiệu quả. Hãy xem vấn đề 64887 để biết thêm thông tin chi tiết. Vấn đề này xảy ra vì kể từ IntelliJ 13, bạn chỉ được dùng một thư mục duy nhất làm classpath. Trình tạo của IntelliJ sao chép tất cả tài nguyên vào thư mục bản dựng đó, nhưng Gradle lại không sao chép những tài nguyên đó.
Việc chạy thử nghiệm JUnit có thể biên dịch mã hai lầnKhi tạo một dự án mới, bạn có thể tạo cấu hình mẫu JUnit bằng hai bước "Trước khi khởi chạy": Thực hiện và Nhận biết Gradle. Sau đó, cấu hình này sẽ được phổ biến cho tất cả các cấu hình chạy JUnit đã tạo.
Một số cấu hình chạy thử nghiệm không hoạt độngKhông phải tất cả cấu hình chạy có sẵn khi nhấp chuột phải vào một phương thức kiểm thử đều hợp lệ. Cụ thể là các cấu hình sau không hợp lệ:
Android Studio cũng ghi nhớ cấu hình chạy được tạo trong một ngữ cảnh cụ thể (ví dụ: nhấp chuột phải vào một lớp hoặc phương thức cụ thể) và sẽ không chạy trong một cấu hình khác trong tương lai. Để khắc phục vấn đề này, hãy nhấp vào Run > Edit Configurations (Chạy > Chỉnh sửa cấu hình) và xoá các cấu hình được tạo không chính xác. Thêm điểm ngắt Java trong khi gỡ lỗi mã gốcMặc dù ứng dụng bị tạm dừng tại một điểm ngắt trong mã gốc của bạn, nhưng trình gỡ lỗi Tự động và Kép có thể không nhận ra ngay các điểm ngắt Java mới đã được bạn đặt. Để tránh vấn đề này, hãy thêm các điểm ngắt Java trước khi bắt đầu phiên gỡ lỗi hoặc trong khi ứng dụng bị tạm dừng trên một điểm ngắt Java. Để biết thêm thông tin, hãy xem vấn đề 229949. Rời khỏi trình gỡ lỗi gốcTrong khi sử dụng trình gỡ lỗi Auto (Tự động) hoặc Dual (Kép) để gỡ lỗi Java và mã gốc, nếu bạn bước vào một hàm gốc từ mã Java của bạn (ví dụ: trình gỡ lỗi tạm dừng thực thi ở một dòng trong mã Java của bạn sẽ gọi một hàm gốc và bạn nhấp vào biểu tượng Step Into (Bước vào) ) và muốn quay lại mã Java, hãy nhấp vào biểu tượng Resume Program (Tiếp tục chương trình) (thay vì biểu tượng Step Out (Bước ra) hoặc Step Over (Bước qua) ). Quy trình ứng dụng của bạn sẽ vẫn bị tạm dừng, vì vậy, hãy nhấp vào biểu tượng Resume Program (Tiếp tục chương trình) trong thẻ your-module-java để tiếp tục chương trình. Để biết thêm thông tin, hãy xem vấn đề 224385.Trình gỡ lỗi gốc bị treo trong khi tải thư việnTrong lần đầu tiên sử dụng trình gỡ lỗi gốc sau khi nâng cấp lên Android Studio 4.2 trở lên, trình gỡ lỗi gốc có thể ngừng phản hồi trong khi tải các thư viện qua thiết bị Android. Đây là vấn đề cố định tiếp tục xảy ra ngay cả khi bạn dừng và khởi động lại trình gỡ lỗi. Để khắc phục vấn đề này, hãy xoá bộ nhớ đệm LLDB tại sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 6. Trình gỡ lỗi gốc gặp sự cố "Quá trình gỡ lỗi đã hoàn tất với mã thoát 127"Lỗi này xảy ra trên các nền tảng dựa trên Linux khi khởi động trình gỡ lỗi gốc. Nó cho biết rằng một trong những thư viện do trình gỡ lỗi gốc yêu cầu chưa được cài đặt trên hệ thống cục bộ. Tên của thư viện bị thiếu có thể đã được in trong tệp sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 7. Nếu chưa, bạn có thể sử dụng một điểm cuối để chuyển đến thư mục cài đặt Android Studio và thực thi dòng lệnh sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 8 để tìm hiểu xem thư viện nào bị thiếu. Thường thì thư viện bị thiếu là sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 9 vì một số bản phân phối Linux gần đây đã nâng cấp lên // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }0. Trình phân tích tài nguyênPhần này mô tả các vấn đề đã biết với Trình phân tích tài nguyên. Trình phân tích bộ nhớ gốc: Không có hoạt động phân tích khi khởi động ứng dụngTrình phân tích bộ nhớ gốc hiện không hoạt động trong quá trình khởi động ứng dụng. Tuỳ chọn này sẽ có trong bản phát hành sắp tới. Để khắc phục vấn đề này, bạn có thể sử dụng trình phân tích dòng lệnh độc lập Perfetto để ghi lại dữ liệu phân tích trong quá trình khởi động. Lỗi hết thời gian chờ trong Trình phân tích CPUBạn có thể gặp lỗi "Recording failed to stop" ("Không thể dừng ghi") trong Trình phân tích CPU của Android Studio khi chọn cấu hình Sample Java Methods (Phương thức Java mẫu) hoặc Trace Java Methods (Phương thức theo dõi Java). Đây thường là các lỗi hết thời gian chờ, đặc biệt nếu bạn thấy thông báo lỗi sau đây trong tệp sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 7: // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }2 Lỗi hết thời gian chờ thường ảnh hưởng nhiều hơn đến các phương thức được theo dõi so với các phương thức mẫu và nhiều hơn đến bản ghi dài so với bản ghi ngắn hơn. Để tạm thời khắc phục, bạn nên thử các bản ghi ngắn hơn để xem lỗi có biến mất không. Nếu bạn gặp sự cố hết thời gian chờ trong Trình phân tích tài nguyên, vui lòng gửi lỗi bao gồm cả thông tin về nhà sản xuất/kiểu thiết bị của bạn và mọi mục liên quan từ sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 7 và logcat. Ngoại lệ của ADB khi gỡ lỗi hoặc phân tíchKhi sử dụng Platform Tools (Công cụ nền tảng) 29.0.3, tính năng gỡ lỗi gốc và Trình phân tích tài nguyên Android Studio có thể hoạt động không đúng cách và bạn có thể thấy thông báo "AdbCommandRejectedException" hoặc "Failed to connect port" ("Không kết nối được cổng") trong tệp sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure 7 khi bạn chọn Help > Show Log (Trợ giúp > Hiện nhật ký). Việc nâng cấp Công cụ nền tảng lên 29.0.4 trở lên sẽ giải quyết được cả hai vấn đề. Để nâng cấp Công cụ nền tảng, hãy làm như sau:
Trình bổ trợ ngăn cửa sổ Kết quả của bản dựng không hoạt động đượcViệc sử dụng trình bổ trợ Trình đánh dấu đơn giản CMake giúp ngăn nội dung xuất hiện trong cửa sổ Build Output (Kết quả của bản dựng). Bản dựng này chạy và thẻ Build Output (Kết quả của bản dựng) xuất hiện, nhưng không có kết quả nào được in (vấn đề 204791544).Thứ tự cài đặt ngăn cản phiên bản cũ khởi chạyPhiên bản Android Studio cũ có thể sẽ không khởi chạy được nếu bạn cài đặt phiên bản mới trước tiên. Ví dụ: nếu bạn trước hết cài đặt phiên bản Canary của Android Studio rồi mới cố gắng cài đặt và khởi chạy phiên bản ổn định, thì phiên bản ổn định có thể sẽ không khởi chạy. Trong trường hợp đó, bạn phải xoá bộ nhớ đệm để khởi chạy phiên bản (cũ) ổn định. Trên macOS, để xoá bộ nhớ đệm, hãy xoá thư mục // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }5. Trên Windows, để xoá bộ nhớ đệm, hãy dùng tính năng Dọn dẹp ổ đĩa. Trình ghi lại quá trình kiểm thử Espresso không hoạt động với ComposeTrình ghi lại quá trình kiểm thử Espresso không hoạt động với các dự án có chứa Compose. Để tạo bài kiểm thử giao diện người dùng cho các dự án có chứa Compose, hãy xem bài viết Kiểm thử bố cục Compose. Phím tắt Logcat xung đột với các bố cục bàn phím không phải tiếng AnhNếu bạn đang dùng bố cục bàn phím không phải tiếng Anh, phím tắt mặc định cho Logcat có thể xung đột với bố cục này và khiến bạn không nhập được một số ký tự khi chỉnh sửa văn bản trong Android Studio. Để khắc phục vấn đề này, hãy xoá hoặc ánh xạ lại sơ đồ bàn phím Logcat xung đột. Để chỉnh sửa sơ đồ bàn phím Logcat trong Android Studio, hãy chuyển đến Android Studio > Settings > Keymap (Android Studio > Cài đặt > Sơ đồ bàn phím) rồi tìm // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }6 trong danh sách sơ đồ bàn phím. Hãy xem vấn đề 263475910 để biết thêm thông tin.Chúng tôi sẽ khắc phục vấn đề này bằng cách xoá phím tắt Logcat trong Bản vá 1 của Android Studio Electric Eel. Các vấn đề đã biết với Trình bổ trợ Android cho GradlePhần này mô tả các vấn đề đã biết tồn tại trong phiên bản ổn định mới nhất của trình bổ trợ Gradle cho Android. Trình tìm lỗi mã nguồn không kiểm tra toàn bộ phần phụ thuộc của thư viện có tính năng độngKhi chạy trình tìm lỗi mã nguồn với // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }7 qua một mô-đun ứng dụng, phần phụ thuộc của thư viện có tính năng động sẽ không được kiểm tra trừ phi đó cũng là phần phụ thuộc của ứng dụng (vấn đề 191977888). Để khắc phục vấn đề này, bạn có thể chạy tác vụ tìm lỗi mã nguồn trên các thư viện đó.Tệp ký được đặt tên với các ký tự trả lại vị trí đầu dòngTính năng ký JAR (sơ đồ phiên bản 1) không hỗ trợ tên tệp chứa ký tự trả lại vị trí đầu dòng (vấn đề 63885809).Việc sửa đổi kết quả của biến thể tại thời điểm xây dựng có thể không hiệu quảViệc sử dụng Variant API để thao tác với kết quả của biến thể sẽ bị lỗi với trình bổ trợ mới. API này vẫn hoạt động đối với những tác vụ đơn giản như thay đổi tên tệp APK trong thời gian xây dựng, theo minh hoạ dưới đây: // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }Tuy nhiên, các tác vụ phức tạp hơn liên quan đến việc truy cập vào các đối tượng // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }8 không còn hoạt động nữa. Đó là do các tác vụ dành riêng cho biến thể không còn được tạo trong giai đoạn cấu hình. Điều này dẫn đến việc trình bổ trợ không biết tất cả các kết quả của trình bộ trợ, nhưng cũng có nghĩa là thời gian định cấu hình sẽ nhanh hơn. manifestOutputFile không sử dụng được nữaPhương thức // If you use each() to iterate through the variant objects, // you need to start using all(). That's because each() iterates // through only the objects that already exist during configuration time— // but those object don't exist at configuration time with the new model. // However, all() adapts to the new model by picking up object as they are // added during execution. android.applicationVariants.all { variant -> }9 không còn hoạt động nữa và bạn gặp lỗi sau đây khi gọi nó: A problem occurred configuring project ':myapp'. Could not get unknown property 'manifestOutputFile' for task ':myapp:processDebugManifest' of type com.android.build.gradle.tasks.ProcessManifest. Thay vì gọi A problem occurred configuring project ':myapp'. Could not get unknown property 'manifestOutputFile' for task ':myapp:processDebugManifest' of type com.android.build.gradle.tasks.ProcessManifest. 0 để lấy tệp kê khai cho từng biến thể, bạn có thể gọi A problem occurred configuring project ':myapp'. Could not get unknown property 'manifestOutputFile' for task ':myapp:processDebugManifest' of type com.android.build.gradle.tasks.ProcessManifest. 1 để trả về đường dẫn của thư mục chứa tất cả các tệp kê khai đã tạo. Sau đó, bạn có thể xác định một tệp kê khai và áp dụng logic của mình cho tệp kê khai đó. Mẫu bên dưới tự động thay đổi mã phiên bản trong tệp kê khai: android.applicationVariants.all { variant -> }Vấn đề với khả năng hỗ trợ AGP 7.3.0 AIDL và Kotlin 1.7.xViệc sử dụng AGP 7.3.0 với KAPT trong Kotlin 1.7.x khiến các nhóm tài nguyên AIDL cho các biến thể bản dựng cụ thể bị xoá. Bạn vẫn có thể sử dụng các nhóm tài nguyên AIDL khác, bao gồm cả các nhóm tài nguyên A problem occurred configuring project ':myapp'. Could not get unknown property 'manifestOutputFile' for task ':myapp:processDebugManifest' of type com.android.build.gradle.tasks.ProcessManifest. 2, loại bản dựng, phiên bản sản phẩm và tổ hợp các phiên bản sản phẩm. Nếu bạn cần sử dụng các nhóm tài nguyên AIDL dành riêng cho biến thể, hãy tiếp tục sử dụng Kotlin 1.6.21. Khắc phục các vấn đề đã biếtPhần này mô tả các vấn đề đã biết và đã được khắc phục trong bản phát hành gần đây. Nếu gặp phải bất kỳ vấn đề nào trong số này, bạn nên cập nhật Android Studio lên phiên bản ổn định hoặc bản xem trước mới nhất. Đã khắc phục trong Android Studio 2021.1.1
Đã khắc phục trong Android Studio 2020.3.1
Đã khắc phục trong Android Studio 4.2
Đã khắc phục trong Android Studio 4.1
Đã khắc phục trong Android Studio 3.6
Đã khắc phục trong Android Studio 3.5.2
Đã khắc phục trong Android Studio 3.3.1 Lỗi hết bộ nhớ khi quét các dự án dựa trên C++: Khi Gradle quét một dự án có mã C++ ở nhiều vị trí trên cùng một ổ đĩa, phần quét bao gồm tất cả các thư mục bên dưới thư mục chung đầu tiên. Việc quét một số lượng lớn thư mục và tệp có thể dẫn đến lỗi hết bộ nhớ. |