1. ANH EM CHÚ Ý CHỈ SỬ DỤNG CÁC HOST SAU ĐỂ UPLOAD/DOWNLOAD FILE !
    Dismiss Notice
  1. MạnhIT

    MạnhIT Không gì không thể ! Administrative

    Bài viết:
    3,938
    Đã được thích:
    5,111
    Một số lệnh cơ bản cho updater-script - khi tạo Rom zip

    *Lưu ý ko nhầm lẫn giữa updater-script và update-script nhé, 2 cái này khác nhau.

    In một cái gì đó ra màn hình lúc flash.

    Ví dụ:
    Mã:
    ui_print("");
    ui_print(" : Update SphinX Galaxy S5 :");

    Mount system / data / cache
    Mã:
    ui_print("Mounting /system, /data, /cache ...");
    run_program("/sbin/busybox", "mount", "/system");
    run_program("/sbin/busybox", "mount", "/data");
    run_program("/sbin/busybox", "mount", "/cache");

    Tùy nhu cầu mình định làm gì thì mount cái đó, ví dụ mình thường wipe dalvik-cache thì mount data
    và chạy lệnh
    Mã:
    ui_print("Wiping dalvik-cache ...");
    delete_recursive("/data/dalvik-cache");
    Tạo 1 process có cái bar chạy chạy, thể hiện rằng đang flash
    Mã:
    show_progress(1.34, 42);
    Xóa 1 file :
    Mã:
    delete("/system/priv-app/SecVideos.apk");
    delete("/system/priv-app/SecVideos.odex");
    Lưu ý là để xóa file trong system thì ta phải mount system, xóa file trong data thì phải mount data

    Xóa nhiều file
    Ví dụ xóa tất cả các file trong /data/dalvik-cache
    Mã:
    ui_print("Wiping dalvik-cache ...");
    delete_recursive("/data/dalvik-cache");
    Xóa tất cả các file trong system/app
    Mã:
    delete_recursive("/system/app/");
    Giải nén 1 thư mục hoặc 1 file từ trong file zip flash của mình ra
    Ví dụ giải nén thư mục system. Nó sẽ tự copy vào theo đúng cấu trúc ta đã sắp xếp ở trong.

    Mã:
    package_extract_dir("system", "/system");

    Giải nén 1 file :
    Mã:
    package_extract_file("system/app/ChoiMobile.apk", "/system/app/ChoiMobile.apk");
    Extract 1 img ra 1 phân vùng:

    Ví dụ mình extract system.img ra phân vùng system của hệ thống. Cẩn thận không nhầm phân vùng nhé.
    Mã:
    package_extract_file("system.img", "/dev/block/platfrom/msm.sdcc.1/by-name/system");


    Format 1 phân vùng
    , định dạng lại và xóa hết mọi thứ bên trong phân vùng đó.

    Phần này cần chú ý mount đúng kiểu. Nhưng thông thường thì ta chỉ có nhu cầu format phân vùng system (chú ý cho đúng phân vùng nhé)
    Mã:
    format("ext4", "EMMC", "/dev/block/platfrom/msm.sdcc.1/by-name/system", "0");
    Sét quyền - Mình chỉ ví dụ những quyền thông thường như 644 và 755 nhé.
    Mã:
    set_perm(0, 0, 0644, "/system/build.prop");
    Mã:
    set_perm(0, 0, 0755, "/system/xbin/zipalign");
    Sét quyền cho tất cả các file trong 1 thư mục

    Ví dụ mình set tất cả các file trong thư mục system/app thành 644
    Mã:
    set_perm_recursive(0, 0, 0755, 0644, "/system/app");

    Unmount 1 phân vùng. Khi flash xong ta nên unmount các phân vùng đã mount nhé
    Ví dụ
    Mã:
    unmount("/system");
    hoặc
    Mã:
    unmount("/data");
    hoặc
    Mã:
    unmount("/cache");
    Chạy 1 bin file của hệ thống.

    Ví dụ cho nó nghỉ một tí rồi mới chạy phía dưới thì chạy
    run_program("/sbin/sleep", "2");
    Ví dụ mình khởi động lại máy thì chạy
    Mã:
    run_program("/sbin/reboot");
    Note:
    Nói thêm. Khi làm file updater-script nếu động chạm đến việc format phân vùng, hoặc extract img ra 1 phân vùng cần hết sức chú tên của các phân vùng.
    Và Khuyến cáo, ko bao giờ được động tới phân vùng aboot, nó chính là bootloader, chẳng may gây lỗi cho nó là làm máy brick luôn.

    Nếu ko biết chính xác tên thì cần check bằng lệnh.

    Chạy (phổ biến)
    Mã:
    adb shell ls -la /dev/block/platform/msm_sdcc.1/by-name/
    Hoặc (với các dòng dùng chíp Exynos):
    Mã:
    adb shell ls -la /dev/block/platform/15540000.dwmmc0/by-name/
    Có thể dùng tên phân vùng thay thế cho số của phân vùng (by-name thay cho by-num)

    ví dụ
    Mã:
    /dev/block/platform/msm_sdcc.1/by-name/system
    có thể thay cho
    Mã:
    /dev/block/platform/msm_sdcc.1/mmcblk0p23
     
    • Mở iCloud all iPhone/iPad: 6/6S/7/7+,...
    • Mở qua IMEI, trực tiếp trên servers Apple !
    • Thời gian chờ chỉ 1-24h, 100% thành công !
    • Hỗ trợ máy đã báo mất: Lost/Stolen/Blacklist !
    • Unlock all iPhone lock Nhật, Mỹ: 5,5S,6,6S,7/7+ !
    • Thời gian chờ chỉ từ 1 ngày, 100% thành công !
    • Hỗ trợ tất cả các nhà mạng/quốc gia !
    • Hỗ trợ máy đã báo mất: Lost/Stolen/Blacklist !
    Tags:
  2. nguyenbao2008

    nguyenbao2008 Th.Viên chính thức

    Bài viết:
    24
    Đã được thích:
    2
    Hay quá. Thank bác. :D
     
  3. kushypro

    kushypro Th.Viên chính thức

    Bài viết:
    44
    Đã được thích:
    18
    Extract 1 img ra 1 phân vùng:
    thế còn muốn đòng gói cho file zip lại thì làm sao vậy bác ?
     
  4. Hoàng Vân

    Hoàng Vân Th.Viên chính thức

    Bài viết:
    29
    Đã được thích:
    2
    Làm cách nào để đóng gói bản rom mình đang dùng để máy khác install qua TWRP được bác Mạnh nhỉ
     
  5. conan2509

    conan2509 Th.Viên chính thức

    Bài viết:
    10
    Đã được thích:
    0
    Hay quá, mình học được một số kiến thức
     
Đang tải...