View Single Post
Old 12-18-2010, 09:56 PM   #1
kveroneau
Edge User
 
Possible way to enable ADB during next update

I know many developers got rather mad about adb access being locked out. Here is how you might be-able to re-enable this access. This has not yet been tested.

Instead of using the OTA update, download the update.zip file from the enTourage support site.

For this part, you may need access to a Linux workstation in order to modify the update files to re-enable ADB access on your unit.

Open update.zip, extract only root.zip. From this file, extract ramdisk.maint.gz.crc, ungzip it.

With the resulting file, loop mount ramdisk.maint to a directory of your choice.

Edit the shell script etc/init.d/edge_wipe.

Change the line:

echo -n 0 > $USERDATA_DST_DIR/property/persist.service.adb.enable
to
echo -n 1 > $USERDATA_DST_DIR/property/persist.service.adb.enable

Put everything back together, and copy the newly patched update.zip to a USB stick and start the update process.

Once your device is updated, simply tell it to "Restore factory settings", to wipe the device with your new settings in place. After the device wipes and reboots, you should now have access to the ADB option under your development settings menu.

There might be other ways to force this to enable as well. I would recommend looking at other options, as this method is sort of risky. Perhaps editing the ramdisk.android instead to manually force this setting.

This does not ROOT your device, it simply re-enabled the removed debugging menu

UPDATE:
The most optimal way to gain debugging access is to edit the file default.prop in the ramdisk.android image.

Just edit: ro.debuggable, and set it to 1, rather than 0. This will only allow debugging access, but will not provide ROOT. To gain ROOT, which is not recommended for normal development of Android apps, edit ro.secure. However, the only purpose of gaining ROOT, is for malicious actions. Also running as ROOT is a security issue, if you install the wrong app for example.

UPDATE 2:
I attempted to do this edit, however it didn't seem to use the new ro.debuggable property. When I went back into my terminal emulator, it was back to ro.debuggable=0. I think there is something in the update.sh file which does a CRC check on the file somehow. I will dig deeper into this later and see if I can force to update with a modified ramdisk image. Perhaps tailoring the update.zip to only modify the ramdisk, thus making it available to developers who need debugging access turned on.

Last edited by kveroneau; 12-18-2010 at 10:42 PM.