Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Shared library missing in android.

02-18 00:02:08.432: ERROR/PackageManager(57): Package com.example.brown requires unavailable shared library com.google.android.maps; failing!

I got this exception in logcat.

Can anyone guide me?

like image 369
Praveen Avatar asked Feb 17 '10 18:02

Praveen


People also ask

Where is library located on android?

The android default libraries like appcompact, design support libraries are stored in your folder where you have installed the SDK, precisely <SDK FOLDER>/extras/android/m2repository/com/android . The 3rd party libraries are stored in . gradle/caches/modules-2/files-2.1 folder. The gradle folder is hidden.

What is shared library app?

A shared library is an external Java™ archive (JAR) file that is used by one or more applications. Using shared libraries enables multiple applications deployed on a server to use a single library, rather than use multiple copies of the same library.

What is Android app library?

An Android library is structurally the same as an Android app module. It can include everything needed to build an app, including source code, resource files, and an Android manifest.


2 Answers

As CommonsWare said, your emulator is missing the library. The Google Maps Library's documentation's Overview page has info on how to create the right kind of virtual device for the emulator. The gist is:

Launch the AVD Manager by using the android command without any options. If you are developing in Eclipse/ADT, you can also access the tool from Window > Android SDK and AVD Manager.

  1. Click the "New" button to begin creating a new AVD.
  2. In the dialog that appears, specify a name for the AVD and select the system image target that you want the AVD to use. Select one of the "Google APIs (Google Inc.)" targets, making sure to choose a version whose API Level matches the android:minSdkVersion attribute in your application's manifest, as described above.
  3. Configure the other options and then click "Create AVD".

Once you've finished creating the AVD, you can run it from the AVD Manager UI or you can use the emulator's command-line interface. If you are developing in Eclipse, you can configure a Run Configuration to start the AVD and install your application on it.

For more information about AVDs, see Android Virtual Devices on the Android Developers site.

like image 83
Jeremy Logan Avatar answered Nov 09 '22 15:11

Jeremy Logan


I had the similar problem on a real device. After a loot of googling I found this answer

fixing missing shared library. It turns out that on some custom roms the comp.google.android.map library is missing, you have to install it manually.

  • download googleapps
  • extract two files
  • system/etc/permissions/com.google.android.maps.xml
  • system/framework/com.google.android.maps.jar
  • remount the /system filesystem rw (mount -o rw,remount /system)
  • copy the files in
  • do a chmod 644 on them
  • reboot
like image 13
Nys Avatar answered Nov 09 '22 14:11

Nys