một số lệnh updater-script khi tạo file updater-script.
*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 escape p870 :");
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/app/videos.apk");
delete("/system/app/videos.odex");
một số lệnh cơ bản updater-script - lgviet.com. bài viết được thực hiện bởi hoangnova từ lgviet.com
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/lgviet.apk", "/system/app/lgviet.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/mmcblk0p14");
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/platform/msm_sdcc.1/mmcblk0p14", "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
unmount("/data");
hoặc
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
Mã:
run_program("/sbin/sleep", "2");
ví dụ mình khởi động lại máy thì chạy
Mã:
run_program("/sbin/reboot");
một số lệnh cơ bản updater-script - lgviet.com. bài viết được thực hiện bởi hoangnova từ lgviet.com
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 omap):
Mã:
adb shell ls -la /dev/block/platform/omap/omap_hsmmc.1/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/mmcblk0p14
Chủ đề cùng chuyên mục xem nhiều nhất:
Chủ đề cùng chuyên mục mới nhất:
Để tuyển dụng môi giới bất động sản hiệu quả, bạn cần xác định rõ nhu cầu tuyển dụng, xây dựng bản mô tả công việc hấp dẫn và sử dụng các kênh tuyển dụng phù hợp. Trước tiên, hãy xác định số lượng...
Làm thế nào để tuyển dụng môi giới bất động sản hiệu quả