Подтвердить что ты не робот

Общая библиотека отсутствует в android.

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

Я получил это исключение в logcat.

Может ли кто-нибудь вести меня?

4b9b3361

Ответ 1

Как сообщает CommonsWare, ваш эмулятор не хватает библиотеки. Документация библиотеки Google Maps Страница обзора содержит информацию о том, как создать правильный тип виртуального устройства для эмулятора. Суть заключается в следующем:

Запустите AVD Manager, используя команду android без каких-либо параметров. Если вы работаете в Eclipse/ADT, вы также можете получить доступ к этому инструменту из окнa > Android SDK и AVD Manager.

  • Нажмите кнопку "Создать", чтобы начать создание нового AVD.
  • В появившемся диалоговом окне укажите имя для AVD и выберите цель образа системы, которую вы хотите использовать AVD. Выберите одну из целей Google API (Google Inc.), чтобы выбрать версию, уровень API которой соответствует атрибуту android: minSdkVersion в манифесте приложения, как описано выше.
  • Настройте другие параметры и затем нажмите "Создать AVD".

Как только вы закончите создание AVD, вы можете запустить его из пользовательского интерфейса AVD Manager, или вы можете использовать интерфейс командной строки эмулятора. Если вы работаете в Eclipse, вы можете настроить Run Configuration, чтобы запустить AVD и установить на нем свое приложение.

Для получения дополнительной информации о AVD см. Android Virtual Devices на сайте разработчиков Android.

Ответ 2

Эта ошибка возникла у меня на самом устройстве, а не на AVD, как на другие ответы. В моем случае я работал на Nexus S с пользовательским ПЗУ, у которого не было установленных Карт Google.

Я прочитал в другом месте, что общая библиотека com.google.android.maps поставляется вместе с самим ПЗУ и не входит в состав APK.

Поэтому решение для меня состояло в том, чтобы вернуться к запасному ПЗУ, в котором установлены Карты Google.

BTW, заголовок этого потока относится к ошибке, обнаруженной в DDMS LogCat. Первая ошибка, которую большинство пользователей увидит (перед проверкой LogCat), будет в консоли Eclipse:

Installation error: INSTALL_FAILED_MISSING_SHARED_LIBRARY 
Please check logcat output for more details.

Ответ 3

У меня была аналогичная проблема на реальном устройстве. После грабежа googling я нашел этот ответ

исправление отсутствующей общей библиотеки. Оказывается, что на некоторых пользовательских ромах отсутствует библиотека comp.google.android.map, вам нужно установить ее вручную.

  • скачать googleapps
  • извлечь два файла
  • система /etc/permissions/com.google.android.maps.xml
  • система/структура/com.google.android.maps.jar
  • перемонтируйте /system filesystem rw (mount -o rw, remount/system)
  • скопируйте файлы в
  • сделать chmod 644 на них
  • перезагрузка

Ответ 4

В вашем эмуляторе отсутствуют API Google. Создайте новый AVD, содержащий API Google, и эта ошибка должна исчезнуть.

Ответ 5

Как jfritz42 я получил эту ошибку на реальном устройстве с кастомным ПЗУ (Cyanogenmod). Ошибка была вызвана тем, что я не установил пакет Служб Google, поскольку он содержит множество приложений, которые меня просто раздражают. Тем не менее, есть решение, как установить библиотеку google.maps, не добавляя в вашу систему 19 Служб Google из этого пакета. Просто скачайте пакет (zip файл) и удалите все файлы .apk из system/app в этом zip файле. После этого вы можете установить zip-архив с помощью диспетчера ROM или в режиме восстановления. Тогда у вас должна быть установлена библиотека карт в вашей системе. Службы Google, включенные в этот пакет (например, приложение "Карты"), впоследствии могут быть установлены отдельно.

Ответ 6

В случае с реальным устройством попробуйте удалить из файла манифеста:

<uses-library android:name="com.google.android.maps" />

Ответ 7

Я испытал эту ошибку после того, как AVD был настроен правильно и работает нормально. AVD все еще использовал API Google, и я мог видеть ссылку на библиотеку карт в Eclipse. Единственный способ найти это - удалить AVD и создать новый, как рекомендовал fiXedd.

Ответ 8

fiXedd (см. выше) является правильным.

Вы можете редактировать уже созданные устройства или создать новый. Когда вы создаете или редактируете устройство внутри AVD Manager, вместо выбора такого типа целевой версии:

Android x.x.x - Уровень API x

Просто используйте этот вид вместо:

API Google (Google Inc.) - Уровень API x