Extracting APK files from your Android “ADP1”
The ADP1 is the Unlocked/Routed version of the HTC G1 (running Android) being sold separately by Google, intended for developer use only.
To extract APK files:
(1) Plug your “Routed” Android phone into your computer via the included USB cable.
(2) From your computers command line type “adb shell”.
(3) Switch to root user “su”.
(4) “cd data/app”.
(5) List all the installed apk files with “ls”.
(6) In another command window, pull one of the files on to your computer:
“adb pull /data/app/.apk .apk”
“adb pull data/app/com.zedray.snowball.apk snowball.apk”
That wasn’t so hard was it?
The Android OS has effectively no protection for downloaded executables, so applications developers should seek alternative mechanisms for securing their applications against piracy. Now (don’t get me wrong), I’m coming at this not as a user wishing to pirate software, but as a developer looking to sell the fruits of my labour over the Android Market.
Google have implmented their own reginal/device based locking with limited success (e.g. developers can’t see their own applications on the store). However, I think a real solution would be to allow matching devices/users accounts to actual purchases, so applicaiton developers can monitor legitimately purchased applications on the server side.
HTC G1 Application storage limitation:
Both the HTC G1 and the forthcoming HTC Magic suffer from having extremely limited on-device Application storage. This amounts to about 70MB after all the default OS applications (email, browser, etc.) have been installed. This is a serious drawback for the device because Android Market applications can’t be installed off the SD card. Meaning that a user will be able to typically download ~10 applications before their phone complains of lack of space (so much for trying out the thousands of free applications on the store). I believe this is an issue which Google have no intention of fixing because of the security problems described above.
This is a real deal breaker when anyone asks me if they should get themselves a G1, and should also be considered by anyone trying to make money by selling applications on the Android market.
This problem will be solved over time as other manufactures start putting out devices with 8GB or 16GB+ of on-device storage.
Overcoming this limitation:
I am told that executing an APK file from an SD card currently requires a Linux file system partition (which I haven’t attempted). My aim is to remap the SD card to the “data/app/” directory, so I can install Android Market executables directly to my 8GB SD card. Then I could download and use hundreds of applications at the same time.