[h2]MIUI Android OS (ROM) Development Instruction ManhIT - ChoiMobile.VN[/h2] Xin chào anh em ! Sau một thời gian Dev Rom MIUI mình cũng có chút kinh nghiệm, trong bài viết này mình sẻ cho anh em về những gì mình đã làm và tích lũy được. Chuẩn bị: - Máy tính Windows 64bit (khuyên dùng Windows 10 64bit) - Adb (Android Debug Bridge) & Fastboot tool: http://choimobile.vn/threads/43641/ - Miflash : http://choimobile.vn/threads/66410/ - Mi PC Suite (China) : http://zhushou.xiaomi.com/ - Java JDK : http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html - Một số thuật ngữ, từ viết tắt, các thử cần biết: Dev = Developement = Phát triển Devs = Developers = Nhà phát triển EDL = Emergency Download Mode = Chế độ Download khẩn cấp (Qualcomm HS-USB QDLoader 9008) Rom Stock = Rom gốc Inject = Tiêm, chèn vào cái gì đó | Inject Root = Tiêm/chèn Root vào system... Những điều cơ bản cần biết cho newbie - Rom, Root, Recvery, Bootloader, Brick... là gì ? Mở cửa sổ gõ lệnh CMD: nhấn giữ phím shift và nhất chuột phải chọn "Open command windows here" Về quá trình mình bắt đầu Dev Rom MIUI đến nay: (Anh em nên đọc để hiểu hơn) Bắt đầu thực hành nhé ! Tạm thời mình sẽ chia sẻ trước về cách Build Fastboot Rom (Miflash Rom), xử lý Kernel để fix dm-verity. Còn những vấn đề chung về Android như Apk, ApkTool,... thì mình sẽ chia sẻ trong loạt bài về Android OS (ROM) Developement Instruction tại box Thảo Luận - Phát Triển Rom/ Lập trình Mobile - Build Fastboot Rom (Miflash Rom) Từ Các Files Dump - Build Fastboot Rom (Miflash Rom) Từ Files Rom Stock (Build Rom No-Root)
I. Build Fastboot Rom (Miflash Rom) Từ Các Files Dump. Với cách này dùng cho các máy có TWRP, hoặc Root được để dump các phân vùng ra và chuyển thành Rom Fastboot ! Tóm tắt cách làm: - Anh em làm Rom trên máy (việt hoát, fix lỗi,...) hoặc muốn build một bản ưng ý về dạng Rom Fastboot (như Rom EU,... chẳng hạn) sau khi làm xong mọi thử ok thì dump phân vùng System ra thành file system_raw.img và phân vùng Boot (Kernel) thành file boot.img và copy ra thử mục làm việc trên PC - Download file Rom Fastboot gốc về, giải nén ra - Download bộ tool ANDROID_IMG_REPACK_TOOLS_CYGWIN_x64-86_6.0.1.zip về giải nén ra, dùng tool ext2simg.exe đề conversion file system.img dump (raw ext4) về định dạng của Rom Fastboot (sparse) rồi thay thế file system.img mới cho file system.img trong bộ Rom Fastboot gốc, thay file boot.img cho file boot.img trong bộ Rom Fastboot gốc Lệnh conversion file system.img dump (raw ext4) về định dạng của Rom fastboot (sparse): Mã: ext2simg -v [đường dẫn file đầu vào(file dump)] [đường dẫn file dump ra] Ví dụ: ext2simg -v system_raw.img system.img Thực ra để nguyên file dump ra cũng có thể flash qua Miflash được, nhưng file dump ra từ máy ở định dạng raw ext4 có các vấn đề sau: Dung lượng sẽ lớn = tổng dung lượng của phân vùng đó, trong khi số dữ liệu trong phần vùng chưa đầy hết phần vùng, ví dụ cỡ của phân vùng system là 3GB nhưng còn chống tới 1GB - tức mới sử dụng có 2GB, file dump ra ở dạng raw ext4 = tổng dung lượng của phân vùng system = 3GB, nhưng nếu conversion file system.img dump (raw ext4) về định dạng của Rom fastboot (sparse) thì file system.img chỉ có 2GB thôi, vậy là tiết kiệm được 1GB lưu trữ trên ổn cứng và 1GB khi upload/download File ở định dạng raw ext4 rất dễ dàng để đọc và copy các file bên trong (chắc anh em cũng hiều là gì rồi !) Đưa về định dạng Rom fastboot gốc rõ dàng là CHUẨN hơn và khi flash cũng sẽ nhanh và ít lỗi hơn ! - Thay file Bootloader (emmc_appsboot.mbn) unlock sẵn vào nếu muốn build Rom locked (không cần unlock bootloader) để flash được cho các máy chưa unlock Bootloader - Thử flash Rom, nếu mọi thứ ok thì đóng gói (nén zip) lại rồi upload nên chia sẻ cho mọi người. Chi tiết quá mình build bản fastboot Rom SpaceX V6.7.7 Locked cho Xiaomi Mi Max: Video hướng dẫn Dump Rom và Build Rom fastboot / Miflash Rom Xiaomi II. Build Fastboot Rom (Miflash Rom) Từ Files Rom Stock (Build Rom No-Root). - Với cách này áp dụng trong các trường hợp không Root được máy, không có Recovery ! - Cần máy tính chạy Linux (khuyên dùng Ubuntu 64bit) và tất nhiên phải biết cơ bản về sử dụng hệ điều hành Linux Tóm tắt cách làm: - Cần có file các file Rom .img, thường thì lấy bản Rom fastboot Xiaomi cấp, có thể Download từ trang chủ, còn một số trường hợp không có Rom fastboot thì phải tùy cơ ứng biết để sao có được Rom fastboot. - Giải nén file Rom tải về giải nén và thực hiện xử lý chỉnh sửa các file bên trong (system.img, boot.img,...), sau đó thay thế file mới đã sửa xong vào: 1. Cách conversion các file .img gốc ở định dạng sparse thành định dạng raw ext4 và mod/chỉnh sửa,... (làm trên Linux) (Tạm dừng tại đây, mình cần viết bài bồ sung liên quan trước: cài đặt Ubuntu và setup môi trường làm việc trên Ubuntu,... )
thark bác nhá bài viết rất chi tiết,bác chỉ em xác định được system.img là block bao nhiêu,và các phân vùng khác là bao nhiêu, để dump ra với, em đánh lệnh mount nó hiện ra nhiều mà đọc không hiểu. em hỏi ở topic kia bác chằng trả lời.
ls -l /dev/block/platform/.../by-name/ đoạn ... mỗi máy sẽ khác nhau, dùng explorer mở ra xem tên thư mục là gì !
luxry rom for rmn 3 họ làm đc thây. nhưng mình ko biết họ lấy symlink với permission ở đâu để thêm vào update script. mình tưởng bạn chuyên sâu về phân này nên muốn hỏi
ko có bạn à. trong stock nó toàn kiểu img như hướng dẫn của bạn thui. làm cách nào để lấy ra đầy đủ như này ko. vì thiếu một vài cái là rom nó ko boot vào đc
@@ cái trên đâu phải stock mà đầy đủ, người ta làm săn rồi đấy nhung ko biết lấy đâu ra bạn vào mà xem stock của bạn, cụt ngủn mấy dòng thôi
Thì ý mình muốn hỏi là cái rom extract từ system.ing ra sau đó zip nó lại để flash thì đc. Nhưng ko có symlink với permis thì nó bị treo logo. Bạn có biết cách nào mà lấy đc cái đấy ko. Như kiểu buid rom từ android kitchen ấy. Cái androi kitchen cũng tạo ra đc update script nhưng ko đủ Sent from my Redmi Note 3 using Tapatalk
bạn ơi cho mình hỏi mình muốn sứa file thông tin với file người đóng góp thì có thề tìm nó ở đâu vậy?