Ошибка INSTALL_FAILED_MISSING_SHARED_LIBRARY в Android

87

Когда я пытаюсь запустить приложение для Android, использующее Google API, я получаю следующую ошибку

[2009-07-11 11:46:43 - FirstMapView] Ошибка установки: INSTALL_FAILED_MISSING_SHARED_LIBRARY
[2009-07-11 11:46:43 - FirstMapView] Для получения дополнительных сведений проверьте вывод logcat.
[2009-07-11 11:46:44 - FirstMapView] Запуск отменен!

Может ли кто-нибудь помочь мне решить эту ошибку?

Бриеш Патель
источник

Ответы:

92

Чтобы избавиться от INSTALL_FAILED_MISSING_SHARED_LIBRARYошибки в Google Maps для Android:

  1. Установите API карт Google. Это можно сделать в Eclipse Windows / Android SDK и AVD Manager -> Доступные пакеты -> Сторонние надстройки -> Google Inc. -> API Google от Google Inc., Android API X

  2. Из командной строки создайте новый AVD. Это можно сделать, перечислив цели (цели списка Android), затем android create avd -n new_avd_api_233 -t "Google Inc.:Google APIs: X"

  3. Затем создайте AVD (Android Virtual Device) в Eclipse Windows / Android SDK и AVD Manager -> New ... -> (Name: new_avd_X, Target: Google APIs (Google Inc.) - API Level X)

    IMPORTANT : Вы должны создать свой AVD с помощью Target as Google API (Google Inc.), иначе он снова потерпит неудачу.

  4. Создайте Android-проект в Eclipse File / New / Android Project и выберите Google API Build Target.

  5. добавьте <uses-library android: name = "com.google.android.maps" /> между тегами <application> </application>.

  6. Запустите проект как приложение для Android.

Если ошибка повторяется, значит, у вас все еще есть проблемы, если работает, то эта ошибка навсегда позади.

Мирко Маг
источник
20
Может ли кто-нибудь объяснить, как успешное выполнение приложения на эмуляторе с поддержкой Google API решит проблему отсутствия библиотеки на реальном устройстве? Я не вижу связи.
mcmlxxxvi
Я получаю эту ошибку для com.google.android.gms.auth ... приведенные выше шаги кажутся
неприменимыми
В моем случае нет библиотек или чего-то подобного. Все требования установлены. Тем не менее, у меня возникла проблема с установкой приложения .apk в эмулятор. Не получается из-за неизвестной ошибки установки. В чем может быть вся эта проблема ...?
bonCodigo 05
@bonCodigo У вас есть решение? У меня та же проблема.
Anu
4
На самом деле этот ответ бесполезен. Только для AVD.
Сиддхарт
27
<uses-library
            android:name="com.google.android.maps"
            android:required="false" />

если требуется верно, возможно вам нужно изменить

полуг
источник
2
Это должен быть правильный ответ даже через 5 лет.
WrightsCS
7

Вы можете решить эту проблему, запустив эмулятор Google API.

Чтобы запустить эмулятор Google API, откройте Android SDK и AVD Manager> Доступные пакеты> Google Repos> выберите те уровни Google API, на которых вам нужно протестировать.

После их установки добавьте их как виртуальное устройство и запустите.

самвизе
источник
6

В моем случае это было то, что приложение по умолчанию использовало носимое целевое устройство.

Я удалил ссылку на Wearable в своем манифесте , и проблема была решена.

<uses-library android:name="com.google.android.wearable" android:required="true" />

Скотч Дизайн
источник
4
  1. Открытое затмение
  2. Перейти к:

    проект> Свойства> Android> выберите: API Google Android 4.0.3

  3. Щелкните значок:

    Диспетчер виртуальных устройств Android> Правка> Поле выбора в Tabget> API-интерфейсы Google APIsLevel15
    и выберите Встроенный: is WQVGA400> Изменить AVD> Пуск

Г-н Дуангкео
источник
2

У меня такая же ошибка при установке на реальное устройство. Дополнительную информацию и решение по загрузке недостающих библиотек в устройство можно найти на следующем сайте:

Исправление ошибки INSTALL_FAILED_MISSING_SHARED_LIBRARY

Для правильной настройки необходимо скопировать в систему 2 ключевых файла:

com.google.android.maps.xml

com.google.android.maps.jar

Эти файлы находятся в любом из этих пакетов приложений Google:

http://android.d3xt3...0120-signed.zip

http://goo-inside.me...0120-signed.zip

http://android.local...0120-signed.zip

Эти ссылки больше не работают, но вы можете найти файлы в SDK Android, если у вас есть Google Maps API v1.

После распаковки любого из этих файлов вы хотите скопировать файлы в свою систему, например:

adb remount

adb push system/etc/permissions/com.google.android.maps.xml /system/etc/permissions

adb push system/framework/com.google.android.maps.jar /system/framework

adb reboot
тодд
источник
1

Я разрабатываю приложение для версии 2.2, версия API будет в 8-м ... имела ту же ошибку, и ошибка говорила мне, что это было для API карт Google, все, что мы сделали, это изменили мой ADV для моего проекта API 2.2, а также для API.

Это сработало для меня и обнаружил, что API библиотеки необходим.

Хосе Де ла О
источник
спасибо за ваш ответ. но я хочу работать на устройстве 4.4.4. Итак, какой API хочет из карт Google. пожалуйста, ответьте мне за это
Тедж Шах
1

Это может произойти по следующим причинам -

  1. В файле манифеста отметьте «<использует», например, носимые устройства, телевизор, планшет и т. Д.
  2. в BUILD.GRADLE необходима некоторая реализация кода, которую вы, возможно, удалили по ошибке

Таким образом, удалив реализацию или добавив их, можно удалить эту ошибку. Вы можете удалить код «использует» в файле манифеста Android.

Примеры:

  1. это потратило мой 1 час, потому что я по ошибке добавил класс носимого типа, конечно, я безопасно удалил его с помощью рефрактора, но Диди не внес изменений в файл манифеста.

  2. Я использовал код аварийного сбоя firebase в своем java-проекте, но по ошибке удалил его в buld.gradle. Ниже: реализация com.google.firebase: firebase-crashlytics: 17.1.1.

Решение находится в основном в BUILD> GRADLE или в AndroidManifest.xml.

Виджай Джангид
источник
0

Это происходит, когда вы пытаетесь запустить приложение на эмуляторе. Эмулятор не имеет общей библиотеки карт Google.

Крекер
источник
0

Другой способ решить эту проблему - установить недостающие библиотеки, которые вам нужны.

Вы можете скачать библиотеки и посмотреть, как их установить, здесь .

Sergeenho
источник
0

Когда я пробую эти решения.
Я решил:
создайте новое виртуальное устройство (выберите Google API (Google Inc) -API Level 15 замените android 4.0.3-APILevel 15), затем запустите снова. Это решено.

Думаю, это просто потому, что на устройстве нет google apis ~

IDE: android-studio ОС: ubuntu 12.04

Альпы1992
источник