Thanks to this post, and a whole heap of other stuff, I finally sorted out a Google Maps problem on my Nexus One.
When trying to install some apps, I would see this error message in logcat:
requires unavailable shared library com.google.android.maps
I had the Google Maps app installed and working, but that didn’t fix the issue. It turns out, I had to add two other files and restart the phone. I found those files in the google zip from Cyanogenmod. It took a little fiddling, but I was able to use these instructions to remount /system in write mode. First step was to take the following two files from the google apps zip (gapps-hdpi-20101114-signed.zip) and put them onto my sd card.
/system/etc/permissions/com.google.android.maps.xml
/system/framework/com.google.android.maps.jar
Then to load them onto the phone, I opened the terminal emulator and ran:
su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cp /mnt/sdcard/com.google.android.maps.xml /system/etc/permissions/
cp /mnt/sdcard/com.google.android.maps.jar /system/framework/
Then after I rebooted the phone, I was able to install apps that depend on Google Maps. I can now check bus and train times, and do all kinds of other cool stuff with maps!
Note, this is only relevant if you do not want all Google Apps installed. I only have the map application installed as I don’t sync my phone with any Google services. If you’re using all the Google Apps, I suggest reinstalling as these steps should not be necessary.
To add a little colour, here’s an unrelated picture from flickr, courtesy of epSos.de.

Pingback: [ROM] XAUMOD Custom Firmware for APAD IMX515 (Single Speaker, Utopia)
do i have to be s-off to do that? It tells me canĀ“t create system/etc…… cannot allocate memory!
thx dani
Not sure what s-off is. I think your phone has to be “rooted”, so you can gain root privileges, but I’m assuming that must be the case if you don’t have the stock google apps installed. Have you re-mounted /system as writable? That’s what the
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /systemcommand does. But /dev/block/mtdblock3 might be different for your phone, you could runmountto see…htc does this now to protect nand from changing…. but i dont really know what is protected… i found a way around the problem:) new version of the rom… thx for answering:)
dani
I am trying this with my witstech a81e tablet running android 2.2.
I am getting the same error with some apps i try to install.
Though i have used root explorer to copy the files to the appropriate paths the files copy fine though after a reboot i still get the same error.
Is copying through root explorer the same as using the commands through terminal emulator?
I’m not sure what root explorer does. I know that on my Nexus One, the /system filesystem had to be remounted. Does root explorer do that for you?
Root explorer allows you to modify all the directories on the phone (android app) using superuser access.. Have put the files where they belong and edited the permissions though still not working.
I still get the error about the shared library being unavailable.
When you reboot the phone, are the files still there? If so, I’m not sure what else to suggest. Do you have the google maps app installed?
Yeah they are still there.. i am trying by an terminal emulator now
though after typing in the first line after SU i get:
Usage: mount [-r] etc etc etc.. dont think it likes the command.
oops didnt notice the SPACE before “/system” at the end.
Now says invalid argument. lol
just had a look at the source.
it says:
(Replace /dev/block/mtdblock3 & /system with appropriate device path and mount point, as obtained from cat /proc/mounts)
So maybe my path is different..
just ran it and it shows lots of different paths.. so i guess i need to work which i need to use.
Dude, seriously, you rock. I googled far and wide to figure out why Tasker wouldn’t install on my Notion Ink Adam (shared library error) and this fixed it. I’m ecstatic I got this working, thank you very much!!
Glad it helped out, I know the feeling, it took me ages to find a solution!
Thanks, I’ve been looking for this !!!
Hi Callum,
Can u please let me know how to compile and generate the maps.jar in the nexus codebase? and also how to add more default applications to the nexus codebase. As AndroidMarket app doesnot exists in the build image for nexus .
Thanks..
I’ve no idea I’m afraid. I haven’t compiled anything for or on android. I haven’t done any android coding of any kind actually. Best of luck.
Hi
Someone knows if is possible do it these with a phone non rooted?
Many thanks
How do i download googlebody on my nook color?????? :’(
I have no idea.
thanks for the wonderful post .. it helped a lot..
hi, thanks for the document it helped me a lot .I really was in need of the same.
Terrific. I still couldn’t load from the market but side loading the APK worked fine. I discovered this issue trying to install Foursquare on a rooted/ROM’ed Optimus T.