My journey of Android ports continues! Until I can seriously start programming the core Android system I need a backup solution in order to be able to restore the flash memory of the device, in case anything goes wrong.
ClockworkMod is doing this job pretty well – I wrote a little tutorial for flashing ClockworkMod on your own device:
- The device has to be rooted. You will find a tutorial on the bottom of this post.
- Copy my recovery.img onto your SD card, without any subdirectories.
- Open up a Terminal on the device and enter the following commands:
flash_image recovery /sdcard/recovery.img
- Now you are inside of the recovery system. ClockworkMod is asking you to keep it before rebooting. Be sure to answer this with “Yes”, unless you want to end up in the useless default recovery system again.
You can start directly into CWM with [VOL UP] + [POWER].
How to root the ZTE P752D / Vodafone Smart Chat 865
Rooting this device is a bit more difficult, compared to the Tureis. There is an app called Poot which can do the job, but it took almost 10 tries before it did anything. Using the following method nothing can go wrong, but it is more difficult:
- Set up ADB on your computer, you can find a tutorial here.
- Copy my su-binary into the adb directory.
- Log into the shell of the device:
- Set up the dirs, so shell owns them prior to logging. If shell does not own them then we can not control them. If the logs dir already exists, you may have to do a factory reset to remove them. They should not exist unless someone attempted this previously.
- Open emode’s logset activity. First button should be for enabling log set, enable it. Do not exit the activity, but if you do just repeat the below command.
am start -a android.intent.action.MAIN -n com.zte.emode/.logset
- Confirm the log_kernel.txt file exists, if it does not wait a minute and check again.
ls -l /data/local/logs/kernel/log_kernel.txt
- If it exists, delete it and immediately symlink it to /data/local.prop, logset may recreate it, if it does delete and try symlinking again.
ln -s /data/local.prop /data/local/logs/kernel/log_kernel.txt
- Now we want to wait for /data/local.prop to be created, it may take a minute or two. Keep checking until it exists.
ls -l /data/local.prop
- Now once /data/local.prop exists, go back to the logset activity and disable logset. If you don’t disable it, it will slowly eat away at all the disk space, and possibly overwrite the local.prop before you get root. Now lets set qemu=1 then reboot.
echo 'ro.kernel.qemu=1' > /data/local.prop
- Once you have rebooted, remount, install su.
adb push su /system/xbin/su
adb shell chown 0.0 /system/xbin/su
adb shell chmod 06755 /system/xbin/su
- Clean up your mess and reboot. Done!
adb shell rm /data/local.prop
adb shell rm -r /data/local/logs
Parts of this tutorial are coming from xda-developers.