Apakah flashable.zip tersebut?
Flashable.zip dan update.zip adalah sebuah file dimana file tersebut berisikan rom, tweak, recovery, theme, aplikasi atau lainnya yang dikemas dalam bentuk yang terkompresi dan cara install dengan menggunakan recovery baik stock ataupun CWM.
Bagaimana cara mendapatkan flashable.zip?
1.Download dari internet sesuai dengan kebutuhan dari perangkat anda.
2.Share dari perangkat yang kompatibel dengan perangkat anda.
3.Membuat sendiri flashable.zip
Bagaimana cara menggunakan flashable.zip?
Seperti namanya flashable di mana anda harus melakukan flash melalui recovery baik stock maupun cwm untuk install file tersebut.
Perbedaan antara flashable.zip dan update.zip?
Sebenarnya tidak begitu menonjol untuk perbedaannya, update.zip juga merupakan flashable.zip. Hanya saja flashable.zip pada umumnya menggunakan nama yang tertera dengan jelas seperti contohnya: rom atau apapun itu, sedang update.zip kita harus lebih teliti karena isinya akan kita ketahui setelah install atau ekstrak file tersebut. Selain itu ketika anda install dari recovery, biasa terdapat pilihan untuk langsung install update.zip yang anda letakan pada directory root, sedang flashable.zip harus anda cari terlebih dahulu letak file tersebut dan tidak harus pada directory root.
Bagaimana cara membuat/edit flashable.zip?
Ada beberapa cara untuk membuat / edit flashable.zip, jika anda hendak edit file flashable.zip maka langkah yang harus anda lakukan adalah:
1.persiapkan beberapa tools yang anda butuhkan, diantaranya: apktools yang dapat anda cari di internet atau anda dapat juga menggunakan droidindo tools, winzip / winrar, dan juga pc / laptop anda harus sudah anda install java.
2.download source atau file flashable.zip yang akan anda edit
3.ekstrak file *.zip yang akan anda edit, sehingga di-dapati 1 folder file *.zip yang berisi :
- [ META-INF ]
- [ system ]
- terkadang juga ada beberapa file lainnya seperti contohnya file *.sh
4.buka folder [ META-INF ] / com / google / android / update-binary & updater-script
5.kemudian buka file updater-script menggunakan notepad atau notepad++ yang tersedia pada droidindo tools, maka akan di-dapati script sebagai contoh di bawah ini (tidak semua sama, namun ini hanyalah sebagai gambaran saja pada tester artikel ini saya menggunakan beat audio+xloud).
ui_print(" Beats Audio & xLOUD ");
ui_print(" By: dhruv.always ");
ui_print(" Installing Beats Audio... ");
set_progress(0.20);
mount("yaffs2", "MTD", "system", "/system");
set_progress(0.40);
delete("/system/app/DSPManager.apk");
set_progress(0.60);
package_extract_dir("system", "/system");
set_progress(0.80);
ui_print(" Installing xLOUD... ");
package_extract_file("add_to_buildprop.sh", "/tmp/add_to_buildprop.sh");
set_perm(0, 0, 0777, "/tmp/add_to_buildprop.sh");
run_program("/tmp/add_to_buildprop.sh");
set_progress(1.00);
ui_print(" Installed! ");
ui_print(" Reboot Now! ");
Penjelasan script di atas, adalah sebagai berikut :
ui_print adalah tulisan yang muncul pada mode recovery ketika melakukan instal update pada cwm, sebagai contoh:
ui_print(" Beats Audio & xLOUD ");
ui_print(" By: dhruv.always ");
ui_print(" Installing Beats Audio... ");
maka ketika anda flash maka akan muncul tulisan tersebut.
run_program adalah perintah untuk melakukan proses instalasi, sebagai contoh:
mount("yaffs2", "MTD", "system", "/system"); mount : untuk mount memory, /system : yang akan dimount
delete("/system/app/DSPManager.apk"); untuk hapus file DSPManager.apk pada system/app yang lama jika ada
show_progress / set_progress adalah jeda waktu yang digunakan sesuai durasi yang diinginkan / melakukan set proses
package_extract_dir / package_extract_file adalah perintah untuk memasukan isi dari file zip yang kita gunakan, sebagai contoh:
package_extract_file("add_to_buildprop.sh", "/tmp/add_to_buildprop.sh");
berarti anda akan memasukan isi dari file zip buildprop pada folder yang telah anda tentukan.
set_perm adalah perintah memberikan value dari flashable zip tersebut ke file yang ingin kita beri value
6.kembali pada file zip yang telah kita ekstrak tadi, kemudian buka foldersystem, terdapat beberapa folder system yang kelak ketika anda flash akan inject file tersebut pada system, sebagai contoh folder app maka ketika anda flash, file yang ada pada folder system/app di flashable.zip akan copy ke folder system/app pada perangkat.
7.silahkan anda lakukan edit sesuai yang anda kehendaki, sebagai contoh taruh file apk pada folder app, file bin pada folder bin, file library pada folder lib, file script pada folder etc / init.d (namun untuk penambahan script diharuskan tambah command pada updater-script), file framework-res.apk & twframework-res.apk pada folder framework, file fonts.ttf pada folder fonts.
8.kemudian arsipkan ( zip ) kembali folder utama yang anda ekstrak pertama kali tadi. Untuk proses peng-arsipan pilih fitur zip , jangan rar dan gunakan metode STORE.
9.setelah selesai anda sign file zip tersebut dengan menggunakan apktool, droidindo tools atau tool lainnya. Jika anda menggunakan apktool, maka letakan file tersebut pada folder apktool kemudian ketik command:
java -jar signapk.jar testkey.x509.pem testkey.pk8 namafile.zip sign_namafile.zip
Catatan (thx senior yanuar harry):
1.Jika menaruh file script, tambahkan perintah set_perm pada file updater-script, sebagai contoh:
set_perm(0, 0, 0777, "/system/etc/init.d/nama_script");
pada file updater-script , berikut contoh urutannya :
ui_print("coba update filesaya");
run_program("/sbin/mount", "/system");
show_progress(1, 15);
package_extract_dir("system", "/system");
set_perm(0, 0, 0777, "/system/etc/init.d/nama_script");
run_program("/sbin/umount", "/system");
ui_print("berhasil");
2.Untuk besar file yang akan dimasukkan ke update.zip, sebaiknya tidak mencapai batas maksimal besar file yaitu 125 Mb
3.Untuk logika penempatan file , coba dulu buka buka di root explorer, sehingga anda paham untuk penempatan file file yang ingin anda push ke system melalui file update.zip
4.Berikut adalah beberapa command untuk updater-script: (sumber dan beberapa artikel di internet)
ui_print ("");
Function: Displays text when flashing in CWM ex: ui_print ("Installation Success ..");
show_progress (0, 0);
Function: Displays installation progress. mempilkan to 50% of installation progress can be made as ex: show_progress (0, 50);
package_extract_dir ("system", "/ system");
Function: extract the files in the folder / system in package.zip the system folder on your device
package_extract_dir ("data", "/ data");
Function: extract the files in the folder / data package.zip folder / data on your device
mount ("yaffs2", "MTD", "system", "/ system");
Function: mount system without mounting none of the files copied to the system (it will not run on the file system RFS)
run_program ("/ sbin / busybox", "mount", "/ dev/block/mmcblk0p2", "/ data");
Function: mount system without mounting none of the files copied to the directory / data on device
package_extract_file ("backuptool.sh", "/ tmp / backuptool.sh");
Function: extract scripts or other files to the temp folder.
delete_recursive ("folder name");
Function: delete all folders on the device. ex: delete_recursive ("/ system / media"), will remove the media folder in / system
delete ('files with complete patch ");
Function: delete the file. ex: delete ("/ system / app / app.apk"); apk that exist within the system / app will be deleted
set_perm (0, 0, 06755, "/ system / xbin / su");
Function: Setting Permission to SU so that files can work well
set_perm_recursive (1000, 1000, 0771, 0644, "data / app");
Function: Set Folder Permission to SU in order to work properly
symlink <link-target> <link-path>
Function: Create a symlink (like ‘ln-s’). The <link-path> is in root:path format, but <link-target> is
for the target filesystem (and may be relative)
Anda dapat juga membuat backup dengan menggunakan flashable.zip, beberapa cara diantaranya untuk membuatnya anda dapat menggunakan titanium backup pro yang dapat anda unduh dari internet atau play store.
Selain itu dapat juga anda mencari referensi lain untuk membuat flashable zip pada internet dengan kata kunci "build flashable zip", "making flashable zip", "build update zip" atau "create flashable.zip".