Related
I know people talk about this all the time... I found a lot of thread of how to create a flashable zip file.. But every thread has it different than others. So I have tried it several ways and still get errors...
I'm trying to make a flashable zip to push an apk to system/app and I decided to do this to test it out...
This is the update-script I have tested it with
run_program("/sbin/busybox", "mount", "/system");
delete("/system/app/FlashBarService.apk");
package_extract_dir("system", "/system");
run_program("/sbin/busybox", "unmount", "/system");
Ok what I figure is the run_program is to mount system with busybox. Every line i see that it have this on there.. Then Im trying to replace an app from system/app so I put in delete("/system/app/name of app");
then package_extract_dir("system", :/system"); is so recovery can extract and push the zip file
and again run_program to unmount... But recovery is giving me an error status 4
I also deleted that delete line and still got status 4.
Again this is another way I tried it to do it with
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/cache");
run_program("/sbin/busybox", "mount", "/data");
package_extract_dir("system", "/system");
run_program("/sbin/busybox", "umount", "/system");
run_program("/sbin/busybox", "umount", "/cache");
run_program("/sbin/busybox", "umount", "/data");
And this way too
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p14", "/data");
package_extract_dir("system", "/system");
run_program("/sbin/busybox", "unmount", "/system");
run_program("/sbin/busybox", "unmount", "/data");
And till got status 4.
Inside my xxx.zip I have it set up this way META-INF/com/google/android
And other folder on root system/app
I have a GS3.
Like I said I have followed several threads about this and all looks different and none worked.
I know this is supposed to be the easies thing to do when it comes to android. But I just need to be directed to the right path.
Can somebody with more experience with this help me out?
Status 4 means that you have a syntax error somewhere... (yep, you have a syntax error or you're using notepad or wordpad to edit the files. That's it).
The best guide I ever seen out there is this one, take a look at it.
I use notepad++ to edit any android related files like build.prop. Thanks will look at that
Sent from my SGH-T999 using Tapatalk 4 Beta
Anyone?
gypsy214 said:
I use notepad++ to edit any android related files like build.prop. Thanks will look at that
Sent from my SGH-T999 using Tapatalk 4 Beta
Click to expand...
Click to collapse
Yeah. Notepad++ is best for this type of Editing in Windows.
Have you chosen the correct format in settings?
Edit>>EOL Conversions>>UNIX Format
The problem may be that windows use CR(carriage return) while unix(Android) uses LF (line feed) for a new line character.
You can also try to mount the system manually(there is option in CWM for that) & may be leave only the "package_extract_dir("system", "/system");" in the updater script.
Also, post the zip file here, so that problem can be easily identified.
GobletSky31689 said:
Yeah. Notepad++ is best for this type of Editing in Windows.
Have you chosen the correct format in settings?
Edit>>EOL Conversions>>UNIX Format
The problem may be that windows use CR(carriage return) while unix(Android) uses LF (line feed) for a new line character.
You can also try to mount the system manually(there is option in CWM for that) & may be leave only the "package_extract_dir("system", "/system");" in the updater script.
Also, post the zip file here, so that problem can be easily identified.
Click to expand...
Click to collapse
Will do.. But it works when I use notepad++ to add ui_print.
Please help ...
I need to create a zip file flashlable
system / app
SystemUI.apk
Phone.apk
HtcDialer.apk
and another app
..............
/ framework
com.htc.resources.apk
framework-res.apk
here only those
my working
Hi
Ashle said:
Please help ...
I need to create a zip file flashlable
system / app
SystemUI.apk
Phone.apk
HtcDialer.apk
and another app
..............
/ framework
com.htc.resources.apk
framework-res.apk
here only those
my working
Click to expand...
Click to collapse
If you are only using System apks, then there is a Play Store App for that.
App2Zip
Search it.
I need to create a system app updater script and the framework / framework-res.apk, com.htc.resources.apk
My not working
mount("MTD", "system", "/system");
ui_print("started. . . .");
ui_print("flashable zip");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/data");
run_program("/sbin/busybox", "mount", "/cache");
package_extract_dir("system", "/system");
delete("/system/app/HtcContacts.odex");
delete("/system/app/HtcContactWidgets.odex");
delete("/system/app/HtcDialer.odex");
delete("/system/app/Phone.odex");
delete("/system/app/SystemUI.odex");
delete("/system/framework/com.htc.resources.odex");
delete("/system/framework/framework-res.odex");
set_perm(0, 0, 0644, "/system/framework/framework-res.apk");
set_perm(0, 0, 0644, "/system/framework/com.htc.resources.apk");
unmount("/system");
unmount("/cache");
unmount("/data");
ui_print("Done. Reboot!");
Click to expand...
Click to collapse
Ashle said:
I need to create a system app updater script and the framework / framework-res.apk, com.htc.resources.apk
My not working
Click to expand...
Click to collapse
1. mount("MTD", "system", "/system"); is wrong for DX as DX is using EMMC instead of MTD
The correct one is mount("ext4", "EMMC", "/dev/block/mmcblk0p24", "/system");
2. You don't need mount("ext4", "EMMC", "/dev/block/mmcblk0p24", "/system"); when you have run_program("/sbin/busybox", "mount", "/system");
3. There is no such thing as com.htc.resources.odex and framework-res.odex as there is no smali in these files
4. You don't need set_perm(0, 0, 0644, for system/app and system/framework
5. Why do you want to delete those odex files ? Most of the time, a stock odex ROM will not boot when you mix with deodexed files because the boothclass is broken
ckpv5 said:
1. mount("MTD", "system", "/system"); is wrong for DX as DX is using EMMC instead of MTD
The correct one is mount("ext4", "EMMC", "/dev/block/mmcblk0p24", "/system");
2. You don't need mount("ext4", "EMMC", "/dev/block/mmcblk0p24", "/system"); when you have run_program("/sbin/busybox", "mount", "/system");
3. There is no such thing as com.htc.resources.odex and framework-res.odex as there is no smali in these files
4. You don't need set_perm(0, 0, 0644, for system/app and system/framework
5. Why do you want to delete those odex files ? Most of the time, a stock odex ROM will not boot when you mix with deodexed files because the boothclass is broken
Click to expand...
Click to collapse
Yes .... :thumbup: :thumbup:
Edit SuperSense5 rom...
Change battery icon not working...
Icon wifi,data......,icon picture call contact,frame,....ok
Sent from my HTC Desire X using xda app-developers app
Hello,
i have Alcatel Idol3 6045Y. Alcatel is owned by TCL which made a IDOL3 I806 for china. Hardware vise the devices looks identical. There ar ealso Us and other version 6045I and 6045O. The difference is maybe only the radio files.
SO i managed to get the i806 rom to work flawlesly on my 6045Y by only flashing system and persist from i806 and kernel from my 6045Y.
But for users with 6045I or 6045O they cannot flash the rom (af course with their kernel). they got this message.
HERE IS THE THREAD
i suggest there is something wrong in the mounting, but the script continues to flash the system. And also I would like to check all the symlinks on my computer, but dont know how because the symlinks are pointing to directories which are not present in the system folder in the zip file.
HERE IS THE ERROR MESSAGE
Code:
mount : failed to mount /dev/block/bootdevice/by-name system at /system: Device or resource busy
copy system data...
symlink: some symlink failed
E:Error executing updater binary in zip 'external_s/6045-i806-DCZ1.0.zip'
HERE IS THE SCRIPT
Code:
ui_print(" ");
ui_print("Formatting system...");
show_progress(0.100000, 0);
format("ext4", "EMMC", "/dev/block/bootdevice/by-name/system", "0", "/system");
mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/system", "/system");
format("ext4", "EMMC", "/dev/block/bootdevice/by-name/persist", "0", "/persist");
mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/persist", "/persist");
ui_print("Copy system data...");
show_progress(0.300000,0);
package_extract_dir("system", "/system");
package_extract_dir("persist", "/persist");
symlink("/data/misc/audio/mbhc.bin", "/system/etc/firmware/wcd9306/wcd9306_mbhc.bin");
symlink("/data/misc/audio/wcd9320_anc.bin", "/system/etc/firmware/wcd9306/wcd9306_anc.bin");
symlink("/data/misc/wifi/WCNSS_qcom_cfg.ini", "/system/etc/firmware/wlan/prima/WCNSS_qcom_cfg.ini");
symlink("/data/rfs/apq/gnss", "/system/rfs/apq/gnss/readwrite");
symlink("/data/rfs/mdm/adsp", "/system/rfs/mdm/adsp/readwrite");
symlink("/data/rfs/mdm/mpss", "/system/rfs/mdm/mpss/readwrite");
symlink("/data/rfs/mdm/sparrow", "/system/rfs/mdm/sparrow/readwrite");
symlink("/data/rfs/msm/adsp", "/system/rfs/msm/adsp/readwrite");
symlink("/data/rfs/msm/mpss", "/system/rfs/msm/mpss/readwrite");
symlink("/data/rfs/shared", "/system/rfs/apq/gnss/shared",
"/system/rfs/mdm/adsp/shared", "/system/rfs/mdm/mpss/shared",
"/system/rfs/mdm/sparrow/shared", "/system/rfs/msm/adsp/shared",
"/system/rfs/msm/mpss/shared");
symlink("/data/tombstones/lpass", "/system/rfs/mdm/adsp/ramdumps",
"/system/rfs/msm/adsp/ramdumps");
symlink("/data/tombstones/modem", "/system/rfs/apq/gnss/ramdumps",
"/system/rfs/mdm/mpss/ramdumps",
"/system/rfs/msm/mpss/ramdumps");
symlink("/data/tombstones/sparrow", "/system/rfs/mdm/sparrow/ramdumps");
symlink("/firmware", "/system/rfs/apq/gnss/readonly/firmware",
"/system/rfs/mdm/adsp/readonly/firmware",
"/system/rfs/mdm/mpss/readonly/firmware",
"/system/rfs/mdm/sparrow/readonly/firmware",
"/system/rfs/msm/adsp/readonly/firmware",
"/system/rfs/msm/mpss/readonly/firmware");
symlink("/firmware/image/dxhdcp2.b00", "/system/etc/firmware/dxhdcp2.b00");
symlink("/firmware/image/dxhdcp2.b01", "/system/etc/firmware/dxhdcp2.b01");
symlink("/firmware/image/dxhdcp2.b02", "/system/etc/firmware/dxhdcp2.b02");
symlink("/firmware/image/dxhdcp2.b03", "/system/etc/firmware/dxhdcp2.b03");
symlink("/firmware/image/dxhdcp2.mdt", "/system/etc/firmware/dxhdcp2.mdt");
symlink("/persist/Synaptics_fw_update.img", "/system/etc/firmware/Synaptics_fw_update.img");
symlink("/persist/WCNSS_tct_wlan_nv.bin", "/system/etc/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin");
symlink("/persist/WCNSS_wlan_dictionary.dat", "/system/etc/firmware/wlan/prima/WCNSS_wlan_dictionary.dat");
symlink("/persist/ft_fw.bin", "/system/etc/firmware/ft_fw.bin");
I will be very greatfull for any help.
Hello XDA Members! I Have Developed A Custom ROM. I Have Create A updater-script. It Showing "Process Ended With Error:255". Here Is My updater-script.
Code:
ui_print(">>> ZenMod Xperia <<<");
format("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "0", "/system");
mount("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "/system");
ui_print("Installing ZenMod");
ui_print("Please wait...");
show_progress(1.34,175);
package_extract_dir("system", "/system");
unmount("/system");
ui_print("Flashing Kernel...");
package_extract_file("boot.img", "/dev/block/platform/msm_sdcc.1/by-name/boot");
ui_print("Finished!");
show_progress(1.000000, 0);
Anybody Know How To Fix It?. If Anybody Know Please Help Me...
in recovery , that command row make the mistake ???
And where are the symlinks????
format("ext4", "EMMC", "/dev/block/platform/msm_sdcc.1/by-name/system", "0", "/system"); <- What's the purpose of "0" in here?
Everything else looks fine though.
Copy the logcat of TWRP and upload, so you could help more
lol u need symlinks, permitions and much more and also add get device prop..lol updater script cant be this much short...
Harsh_1998 said:
lol u need symlinks, permitions and much more and also add get device prop..lol updater script cant be this much short...
Click to expand...
Click to collapse
lol why would he add symlinks and permissions uselessly?
and for the device prop it's a good practice to add it but not so necessary.
Updater-script can be shorter than this.
http://forum.xda-developers.com/showthread.php?t=1931585
So I have this android 4.4.2 tablet from Shenzen that I'm trying to upload a custom ROM to. These are the only device specs I have:
CPU: MT6572
Model Number: K706-3G-HD-2
Android: 4.4.2
The stock ROM it has is loaded with malware and dodgy adware apps. Because the device is quite unknown, I don't believe there are any ROMS available for it so I've had to read it off the device using MTK tools and then load it into android kitchen. I'm following this tutorial here: https://forum.xda-developers.com/showthread.php?t=2195858
The first issue I've had is that it won't install CWM through MTK. It gives an error like "no split boot img" or something similar. Anyway, I installed TWRP instead using the Magic MTK TWRP installer I found on this site. Another strange issue is, when loaded into recovery, the touch screen is kind of oriented the wrong way in relation to the render orientation. No matter though, as a mouse though OTG works fine.
When I build the rom through android kitchen, the updater script had these lines in them:
Code:
format("MTD", "system");
mount("MTD", "system", "/system");
which I replaced with these lines, with the proper block map info I found in MTK droid tools:
Code:
unmount("/system");
unmount("/cache");
unmount("/data");
format("ext4", "EMMC", "/dev/block/mmcblk0p4");
mount("ext4", "EMMC", "/dev/block/mmcblk0p4", "/system");
format("ext4", "EMMC", "/dev/block/mmcblk0p5");
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/cache");
format("ext4", "EMMC", "/dev/block/mmcblk0p6");
mount("ext4", "EMMC", "/dev/block/mmcblk0p6", "/data");
I believe the rest of the updater script is pretty generic, although I can upload that if needed.
Anyway, when I attempt to flash the rebuilt rom (without any changes to the system folder) using TWRP, I can a updater binary error. I can't seem to find a TWRP log anywhere or the .twrps settings file either.
I was wondering if anyone could help / point me in the right direction with this as I'm pretty stuck, and very new to this.
Thanks