Cách dễ dàng nhận các bản cập nhật OTA trên Xiaomi Mi A2 đã root bằng Magisk

Áp dụng các bản cập nhật OTA cho Xiaomi Mi A2 đã root có thể là một vấn đề đau đầu, vì nó có thể liên quan đến việc không root thiết bị của bạn và thực hiện tất cả các bước để root lại từ đầu. May mắn thay, có một phương pháp để cài đặt Magisk hỗ trợ các bản cập nhật OTA.

Vì vậy, nếu bạn muốn root Xiaomi Mi A2 trong khi có thể áp dụng các bản cập nhật OTA mà không hủy bỏ thiết bị của bạn, hãy làm theo hướng dẫn đơn giản của chúng tôi dưới đây.

Yêu cầu:

  • ADB và Fastboot (Xem hướng dẫn ứng dụng Cách cài đặt ADB trên Windows)
  • Công cụ MiFlash

Trước tiên, bạn cần mở khóa bộ nạp khởi động - nhưng bạn cần hết sức cẩn thận và cũng cần lưu ý rằng chương trình mở khóa bộ nạp khởi động Xiaomi gần đây đã trở nên rất chậm. Có thể mất vài tuần để nhận được mã mở khóa bootloader. Bạn cũng nên lưu ý về ARB ( Cơ chế bảo vệ chống lật ngược) trong các thiết bị Xiaomi.

Nếu bộ tải khởi động của thiết bị của bạn đã được mở khóa, thật tuyệt! Chúng ta có thể tiếp tục.

Truy cập Cài đặt> Hệ thống> Giới thiệu về điện thoại> nhấn 'Số xây dựng' 7 lần cho đến khi Chế độ nhà phát triển được mở khóa.

Bây giờ, hãy đi tới Cài đặt> Tùy chọn nhà phát triển> bật Mở khóa OEM.

Bây giờ hãy tắt thiết bị của bạn và giữ nút Giảm âm lượng + nút nguồn. Nhả các nút khi bạn vào menu Fastboot.

Kết nối Xiaomi Mi A2 với PC của bạn qua USB và khởi chạy thiết bị đầu cuối ADB ( giữ phím Shift + nhấp chuột phải vào thư mục ADB chính của bạn và chọn 'Mở cửa sổ lệnh tại đây').

Trong thiết bị đầu cuối ADB, gõ lệnh này: mở khóa OEM fastboot

Điều này sẽ khởi động lại điện thoại của bạn và xóa tất cả dữ liệu của bạn trong khi mở khóa bộ nạp khởi động của bạn.

Cài đặt Magisk

Tải xuống và cài đặt phiên bản APK Magisk Manager mới nhất trên điện thoại của bạn.

Bây giờ hãy tải xuống boot.img đã vá từ các bản tải xuống sau - thay vào đó, chúng tôi sẽ chỉ cho bạn cách tự vá boot.img ban đầu bên dưới danh sách tải xuống boot.img.

Khi tải xuống một boot.img đã vá, bạn phải hoàn toàn chắc chắn rằng nó chứa cùng số bản dựng bạn đang sử dụng. Vì vậy, hãy kiểm tra Số bản dựng trong Cài đặt> Giới thiệu về điện thoại trước khi tiếp tục và không flash tệp trực tiếp trên bộ nhớ điện thoại, vì Magisk sẽ không hoạt động chính xác. Thực hiện theo các hướng dẫn của chúng tôi rất cẩn thận và chính xác như chúng được viết.

Bạn nên tải boot.img đã vá vào thư mục ADB trên PC.

  • patched_boot 9.6.4.0 (bản cập nhật tháng 7 năm 2018) - được vá bằng Magisk 17.1
  • patched_boot 9.6.6.0 (bản cập nhật tháng 8 năm 2018) - được vá bằng Magisk 17.1
  • patched_boot 9.6.8.0 (bản cập nhật tháng 9 năm 2018) - được vá bằng Magisk 17.1

Trong trường hợp bạn vô tình flash nhầm boot.img, bạn có thể flash boot.img ban đầu từ danh sách bên dưới:

  • boot.img gốc 9.6.4.0 (bản cập nhật tháng 7 năm 2018) - được lấy từ ROM fastboot
  • boot.img gốc 9.6.6.0 (bản cập nhật tháng 8 năm 2018) - được lấy từ bản cập nhật OTA
  • boot.img gốc 9.6.8.0 (bản cập nhật tháng 9 năm 2018) - được lấy từ bản cập nhật OTA

Xin lưu ý rằng nếu thực hiện bản vá boot.img thủ công, bạn sẽ cần boot.img ban đầu của mình - bạn có thể tìm thấy nó trong tệp zip fastboot ROM chính thức cho daisy . Nhưng hãy đảm bảo rằng phiên bản ROM đã tải xuống có cùng số Build với số trên điện thoại của bạn. Vì vậy, hãy tải xuống boot.img ban đầu với cùng số Build với điện thoại của bạn hoặc cập nhật / hạ cấp phiên bản của bạn.

Sau khi bạn có boot.img ban đầu ( được trích xuất từ ​​zip ROM fastboot chính thức), bạn cần sao chép nó vào bộ nhớ ngoài của điện thoại (thẻ SD).

Bây giờ hãy mở ứng dụng Magisk Manager và nó sẽ hỏi bạn có muốn cài đặt Magisk không - chấp nhận cài đặt, sau đó, Patch Patch Boot File File tập tin và chọn tệp boot.img mà bạn đã chuyển qua.

Quá trình sẽ mất khoảng 1 phút để hoàn thành, vì vậy hãy đóng nó khi hoàn thành. Trong bộ nhớ điện thoại của bạn trong thư mục Tải xuống, bạn sẽ tìm thấy một tệp có tên là patch patch_boot.img, mà bạn cần chuyển vào PC. Đặt nó trong thư mục ADB chính của bạn.

Bây giờ khởi động lại thiết bị của bạn vào Chế độ Fastboot ( hãy nhớ, Giảm nguồn + Giảm âm lượng) và khởi chạy thiết bị đầu cuối ADB trên PC của bạn.

Trong thiết bị đầu cuối ADB, gõ lệnh sau: fastboot boot patched_boot.img

Điện thoại của bạn bây giờ sẽ khởi động bình thường. Khi bạn quay lại hệ thống Android, hãy mở ứng dụng Magisk Manager và nó sẽ yêu cầu cài đặt lại Magisk một lần nữa. Hãy tiếp tục và chọn Cài đặt> Cài đặt trực tiếp và khởi động lại khi hoàn tất.

Bây giờ để đề phòng các bản cập nhật OTA trong tương lai, hãy đi tới Cài đặt> Hệ thống> Tùy chọn nhà phát triển> tắt cập nhật hệ thống tự động. Bạn chỉ nên chọn cài đặt các bản cập nhật OTA bằng tay . Không bao giờ cho phép OTA tự động trên thiết bị Android đã root.

Cách áp dụng Cập nhật OTA trong tương lai

Xin lưu ý rằng các bản cập nhật OTA sẽ chỉ hoạt động nếu tất cả các phân vùng trên thiết bị không được chạm tới! Magisk có thể khôi phục boot.img ban đầu của bạn, nhưng nếu bạn sửa đổi phân vùng / hệ thống theo bất kỳ cách nào, chẳng hạn như chỉnh sửa thủ công build.prop, OTA sẽ từ chối cài đặt.

Bạn có thể thử áp dụng các bản cập nhật OTA mà không cần phải flash toàn bộ ROM fastboot ban đầu nếu bạn chỉ flash các phân vùng đã sửa đổi, chẳng hạn như chỉ flash phân vùng / hệ thống từ ROM fastboot gốc, sử dụng tệp .img thích hợp từ ROM gốc .zip tập tin.

Vì vậy, khi có bản cập nhật OTA mới mà bạn muốn cài đặt, bạn cần khởi chạy Trình quản lý Magisk và nhấn vào Gỡ cài đặt trên cài đặt lại> Khôi phục hình ảnh, nhưng chưa khởi động lại thiết bị.

Đóng Magisk và đi vào Cài đặt của thiết bị> Hệ thống> Cập nhật hệ thống và cài đặt bản cập nhật OTA. Khi bản cập nhật đã được tải xuống, nó sẽ bắt đầu cập nhật hai giai đoạn. Chúng tôi khuyên bạn nên đặt một bình cà phê và có thể thưởng thức một trò chơi nhanh của Madalin Stunt Cars 2, hoặc cố gắng hết sức tại The Impossible Quiz ( chúc may mắn!)

Sau khi các giai đoạn cập nhật hoàn tất, nó sẽ yêu cầu khởi động lại. Không khởi động lại thiết bị của bạn . Khởi chạy Magisk Manager một lần nữa, sau đó nhấn Cài đặt> Cài đặt> Cài đặt vào Khe không hoạt động (Sau OTA) và chỉ sau đó bạn mới có thể xử lý Khởi động lại.

Sau khi Xiaomi Mi A2 của bạn đã khởi động lại, bạn nên cập nhật phiên bản Android với Magisk vẫn không hoạt động.

Xử lý sự cố

Lưu ý: Trước khi tiến hành bất kỳ thao tác nào trong số này, bạn cần vô hiệu hóa mọi bảo mật màn hình bạn có trên thiết bị của mình (khóa màn hình, mã PIN, mật khẩu, vân tay, v.v.) vì bạn có nguy cơ gặp sự cố mã hóa với dữ liệu của mình. Rất khuyến khích để tạo một bản sao lưu đầu tiên.

Nếu bạn không làm theo hướng dẫn này một cách tỉ mỉ, bạn có thể gặp một số vấn đề.

Khi tìm thấy phiên bản mới, trình cập nhật sẽ kiểm tra xem tất cả các phân vùng trên thiết bị có bị ảnh hưởng hay không. Nếu có một phân vùng đã được sửa đổi, trình cập nhật OTA sẽ không tiến hành cài đặt;

Thông thường, hai phân vùng thường được sửa đổi bằng cách sửa đổi người dùng là phân vùng khởi động (đó là nơi Magisk và TWRP được cài đặt) và phân vùng hệ thống (khi bạn thay đổi tệp cấu hình, thêm hoặc xóa ứng dụng hệ thống, v.v.)

Phân vùng hệ thống chỉ được sửa đổi bằng cách sử dụng các mô-đun Magisk chưa được xử lý một cách hiệu quả, vì Magisk đăng ký tất cả các thay đổi đối với / system trong một tệp trong phân vùng / data và sau đó lừa Android để tin rằng những thay đổi đó thực sự được áp dụng cho / system;

Thay vào đó, phân vùng khởi động thực sự được sửa đổi, nhưng nếu bạn cài đặt Magisk theo hướng dẫn này, Magisk sẽ lưu một bản sao của phân vùng khởi động chưa được xử lý và khôi phục nó trước khi áp dụng bản cập nhật OTA sẽ giúp cập nhật hoạt động.

Bây giờ, nếu bạn không làm theo hướng dẫn này để cài đặt Magisk và bạn đã cài đặt nó theo những cách khác, Magisk có thể cảnh báo bạn rằng nó không thể khôi phục boot.img ban đầu (phân vùng khởi động) khi bạn cố gắng áp dụng bản cập nhật OTA.

Để khắc phục điều này, bạn có thể flash trực tiếp vanilla (bản gốc, chưa sửa đổi, chưa được chỉnh sửa) boot.img được lấy từ điểm 6 của hướng dẫn này, sử dụng các lệnh sau:

 fastboot getvar hiện tại khe cắm fastboot flash boot_? boot.img 

Lệnh đầu tiên sẽ cho bạn biết vị trí hiện tại đang sử dụng ( a hoặc b ) là gì, lệnh thứ hai sẽ flash khởi động ban đầu vào điện thoại, nhưng bạn phải thay đổi tên lửa? Một trong lệnh bằng a hoặc b (tức là khe hiện tại mà lệnh đầu tiên cung cấp).

Hãy nhớ rằng phiên bản tệp boot.img phải tương ứng với phiên bản xây dựng Android hiện đang chạy trong điện thoại của bạn.

Nếu bản cập nhật OTA vẫn từ chối áp dụng, có thể bạn đã thay đổi thứ gì đó trực tiếp trong phân vùng / system (ví dụ: bạn đã thay đổi thứ gì đó trong build.prop mà không sử dụng mô-đun Magisk để làm điều này).

Trong trường hợp này, bạn phải flash system.img gốc trong điện thoại với các lệnh sau:

 fastboot getvar hiện tại khe cắm fastboot hệ thống flash_? system.img 

và như trước đây, lệnh đầu tiên sẽ cho bạn biết vị trí phù hợp để sử dụng thay vì lệnh?? trong lệnh thứ hai.

Tại đây, bạn có thể tìm thấy system.img được trích xuất từ ​​zip cập nhật OTA (cùng với mọi tệp .img khác bên trong đó):

  • 9.6.8.0 (Tháng 9 năm 2018) Bản cập nhật OTA dưới dạng tệp .img
  • 9.6.6.0 (Tháng 8 năm 2018) Bản cập nhật OTA dưới dạng tệp .img

Nếu bạn muốn tự mình lấy system.img, bạn có thể tìm thấy nó bên trong các hình ảnh fastboot nhưng thông thường chúng không được cập nhật hàng tháng như các bản cập nhật OTA. Nhưng bạn có thể trích xuất system.img trực tiếp từ các khóa cập nhật OTA được tìm thấy trong luồng này, bằng cách sử dụng các tập lệnh Python được tìm thấy ở đây.

Để làm cho các tập lệnh Python hoạt động trong Debian / Ubuntu và các công cụ phái sinh, bạn phải tải xuống cả hai trích xuất của Nether_android_ota_payload.py, và update update_metadata_pb2 phút Sau này, bạn có thể đưa ra lệnh này để giải nén tệp payload.bin (mà bạn phải trích xuất từ ​​zip cập nhật OTA):

 ./extract_android_ota_payload.py /path/to/payload.bin 

Điều này sẽ trích xuất trong thư mục hiện tại tất cả các tệp .img bên trong payload.bin, bao gồm cả system.img

Tôi không biết cách tiến hành trong Windows, có lẽ bạn chỉ cần cài đặt bản phát hành Python2 mới nhất và tập lệnh sẽ hoạt động.

Là phương sách cuối cùng, bạn có thể flash trực tiếp với MiFlash hình ảnh fastboot mới nhất hiện có (ngay cả khi cũ hơn phiên bản hiện tại của bạn). Sử dụng tập lệnh Flash flash_all.bat, nhưng trước khi sao lưu dữ liệu của bạn, vì điện thoại sẽ được đặt lại hoàn toàn.

Nếu bạn không muốn gặp rủi ro khi không thực hiện sao lưu, hãy sử dụng tập lệnh Flash flash_all_except_st Storage.bat, khi nhấp nháy, vì vậy bạn sẽ giữ tất cả dữ liệu của mình, nhưng được cảnh báo rằng đôi khi bạn sẽ không thể truy cập dữ liệu nữa, vì vấn đề mã hóa.

Ngay sau đèn flash, bạn có thể bắt đầu làm theo hướng dẫn từ điểm 5 hoặc 6.

Đây không phải là vấn đề hạ cấp phiên bản xây dựng thông qua fastboot, miễn là phiên bản chính của Android vẫn giữ nguyên (Oreo 8.1 tại thời điểm này).

Các tệp khởi động được vá và gốc cho hoa nhài Mi A2 (không sử dụng với da cúc Mi A2 Lite, bạn có thể tìm thấy các tệp cho daisy trong phần đầu tiên của hướng dẫn này).

  • patched_boot 9.6.9.0 (cập nhật tháng 7) - được vá bằng Magisk 17.1
  • patched_boot 9.6.10.0 (bản cập nhật tháng 8) - được vá bằng Magisk 17.1
  • boot.img gốc 9.6.9.0 (bản cập nhật tháng 7) - được lấy từ ROM fastboot
  • boot.img gốc 9.6.10.0 (bản cập nhật tháng 8) - được lấy từ ROM fastboot

Bài ViếT Thú Vị