Как скачать сервисы Google Play в эмуляторе Android?

88

Я хочу использовать API сервисов Google Play в своем приложении, но когда я открываю эмулятор для тестирования своего приложения, он отправляет мне сообщение, в котором говорится: «Необходимо загрузить сервисы Google Play». Я знаю, что это происходит, потому что я закодировал этот тест в своем MainActivityметоде onResume().
Я хочу знать, как установить сервисы Google Play в свой эмулятор, потому что скоро мне нужно будет протестировать свои карты.

Витало Бенисио
источник
1
Просто используйте последнюю встроенную версию AVD imageGoogle Google play serveices. Проверьте обновления отSDK manager
Ujjwal Singh

Ответы:

79

Ознакомьтесь с разделом «Настройка сервисов Google Play», в котором говорится:

Чтобы разработать приложение с использованием API сервисов Google Play , вам необходимо настроить свой проект с помощью SDK сервисов Google Play.

Если вы еще не установили SDK сервисов Google Play, скачайте его сейчас, следуя инструкциям по добавлению пакетов SDK .

Чтобы протестировать свое приложение при использовании SDK сервисов Google Play, вы должны использовать:

  • Совместимое устройство Android, работающее под управлением Android 2.3 или более поздней версии и включающее Google Play Store.
  • Эмулятор Android с AVD, на котором работает платформа API Google на базе Android 4.2.2 или выше.
Говил
источник
11
Были обновления, сайт разработчика цитирует: «Эмулятор Android с AVD, который запускает платформу API Google на базе Android 4.2.2 или выше».
WindsurferOak
Я пробовал использовать Android API (версия 4.3), но это не сработало, поэтому нужно использовать Google API (версия 4.3). Поскольку у них был один и тот же номер версии, я сначала не понял, почему он не работал.
Skitterm
11
Я использую Google APIS ver. 22 с Intel x86_64. Не работает.
Яр
4
Здесь важно то, что написал @Skitterm. AVD должен иметь в качестве цели API Google. Интересно, что выбор цели API ниже, чем 23 (Marshmallow), приводит к тому, что устройство пытается обновить службы Google Play, что всегда терпит неудачу.
BoneGoat
Кто-нибудь когда-нибудь заставлял это работать? Похоже, что использование образа Android с Google API не работает с Google Play.
LewlSauce
55

Для api 21+ вы можете использовать образ системы с Google Play, как я описываю ниже.

Для api 19+ (Android 4.4 Kitkat) вы можете использовать системный образ x86 с Google Api (мне удалось его использовать).

Для api 17+ (Android 4.2.2) вы можете ПОПРОБОВАТЬ использовать системный образ ARM с Google Api (у меня это не сработало).

Мне удалось установить Google Play и Google Services как отдельные файлы apks для чистого образа системы api 16 и 17, но после этого они действительно не работают (службы разбиваются, а воспроизведение не открывается). Кажется, что невозможно заставить их работать с чистым образом AVD, потому что они должны быть установлены с правами root. То же самое для обновления сервисов Google в образе системы AVD с предустановленным API Google - невозможно обновить из-за несовместимых сертификатов, невозможно удалить даже с помощью adb, потому что нет доступа.


Как настроить образ системы AVD с помощью Google Play

Теперь существует еще лучшее решение: использование образа AVD со встроенными сервисами Google Play. Это позволит вам использовать сервисы Google, включая Google Play. Также вы сможете обновить его, не создавая заново образ AVD.

Откройте диспетчер AVD и выберите «Создать новое устройство». Вы должны использовать определение устройства со значком магазина воспроизведения.

1

Затем выберите для него системный образ. Вы должны выбрать один с Google Play, а НЕ с Google API.

2

Затем запустите новое устройство.

3

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

4

B-GangsteR
источник
Какую версию студии Android следует использовать, чтобы иметь эту возможность?
ronenmiller
1
@ronenmiller Я использую последнюю стабильную версию, сейчас это 2.3.3. Но это не должно зависеть от версии Android Studio. Это зависит от версии образа системы Android и, возможно, от версии диспетчера виртуальных устройств Android, но я не уверен насчет последней. Я просто всегда обновляю все до последней стабильной версии.
B-GangsteR 01
Недоступно в 3.1.3
Emaborsa 01
@Emaborsa вы выбрали изображение с помощью Google Play или Google API? Сейчас я использую Android Studio 3.1.4, и все работает нормально.
B-GangsteR 01
@ B-GangsteR Да, я сделал
Emaborsa 01
16

Вот как вы заставляете Android Google Maps API v2 работать на вашем эмуляторе.


Создать новый эмулятор

  • для устройства выберите "5.1" WVGA (480 x 800: mdpi) "
  • для цели выберите «Android 4.1.2 - уровень API 16»
  • для "CPU / ABI" выберите "ARM"
  • оставить все по умолчанию

это те настройки, которые у меня работают. Не знаю по другим.


Запускаем эмулятор


установить com.android.vending-1.apk и com.google.android.gms-1.apk с помощью команды установки ADB


Более подробный ответ на эту проблему в моем блоге https://medium.com/nemanja-kovacevic/how-to-make-android-google-maps-v2-work-in-android-emulator-e384f5423723

Неманья Ковачевич
источник
2
Я знаю, что это старое, ноFailure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
Laser Hawk
2
Я сделал: Android Studio (2.2.3); Инструменты -> Android -> AVD Manager; Создать виртуальное устройство ...; 5.1 "WVGA, Next; Nougat (7.1.1), Next; Finish. В получившемся эмуляторе не было значка Google Play Store.
Уильям Энтрикен,
Если вас интересует не архитектура, я предпочитаю эмулировать свои проекты на x86-x84 CPU / ABI, используя GPU хост-машины. Эмуляция совершенно другая с точки зрения отзывчивости.
tedebus
1
ссылки не работают
Alberto M
1
Привет, Альберто, ситуация изменилась за 5 лет после этого ответа, поэтому, вероятно, это не решит вашу проблему.
Неманья Ковачевич
6

Я наткнулся на другое решение использовать сервисы Google play на эмуляторе. Ребята из http://www.genymotion.com/ предоставляют очень быстрые эмуляторы, на которых вы можете устанавливать сервисы Google Play. Им просто нужно, чтобы вы подписались, чтобы начать загрузку, и вам нужно установить Virtual Box. На данный момент они предназначены для Android 16 и 17, но скоро появятся новые.

Карол
источник
17
Они делали это до тех пор, пока Google не сказал им прекратить предоставлять бесконечно лучший сервис, чем когда-либо предоставлял Google, и вынудил их вырвать Play Store из своих изображений.
Reck
5
Сказал Oh !, пошел на создание нового эмулятора для тестирования планшетов в моем существующем приложении genymotion, прочитал ваш комментарий и на секунду возненавидел людей, которых я не знаю.
Хуан Кортес
genymotion был отличным эмулятором, но, похоже, сейчас он не работает с картами :(
KansaiRobot 01
3

В текущей версии (Android Studio 0.5.2) теперь есть тип устройства для «Google API x86 (Google Inc.) - API Level 19».

Майк Восселлер
источник
3

Ключ состоит в том, чтобы выбрать цель вашего эмулятора, например, для API Google (версия 18) . Если вы выберете, например, только Jellybean 18 (без API), вы не сможете тестировать приложения, которым требуются сервисы Google, такие как карта. Имейте в виду, что вы должны сначала загрузить API Google вашей любимой версии с помощью Android SDK Manager.

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

Джош
источник
2

Недавно я попытался разработать приложение Google MAP API V2 и попытался запустить его через эмулятор, но каждый раз он показывал мне ошибку «Службы Google Play не установлены в этом телефоне». С моей точки зрения, даже я думаю, что Google MAP API V2 не работает на эмуляторе.

Решение

Затем я попытался запустить тот же пример на моем Sony Experia, и снова он показал мне ту же ошибку. Затем я установил сервисы Google Play на свой мобильный телефон и он удивительно заработал .. :)))

Ишан Триха
источник
2

У меня это работает

  • Установка сервисов Google Play через Android SDK Manager
  • На устройстве Galaxy Nexus (4,65 дюйма, 720 x 1280: xhdpi)
  • Ориентация на Android 4.2.2 Google API уровня 17
Kelsmj
источник
2

Перейдите на https://university.xamarin.com/resources/working-with-android-emulators . Прокрутите вниз до раздела «Установка сервисов Google Play». Шаг за шагом пройдите туда.

Здесь прямо плагируется от xamarin, поэтому я не получаю ссылку на ссылку и не включаю решение. Публикуя это, я обнаружил попадание в стек до того, как нашел решение, которое работало повсеместно на странице xamarin.

  1. Запустите Xamarin Android Player и запустите один из предоставленных образов; ниже предполагается, что вы запустили образ KitKat Nexus 4. Загрузите соответствующий файл .zip Сервисов Google Play с www.teamandroid.com/gapps/. Обязательно загрузите образ, подходящий для вашей версии Android.
  2. Перетащите файл .zip на работающий эмулятор и отпустите его, чтобы установить компонент, здесь мы показываем его в Mac OS X, но тот же механизм используется в Windows. Вы получите запрос на установку пакета в эмулятор, который указывает, что образ будет перезапущен.
  3. После перезапуска вы получите уведомление о том, что установка завершена, и изображение теперь будет иметь Google Maps, Google+ и поддержку магазина Google Play. Обратите внимание, что некоторые вещи работают некорректно, и вы можете получить несколько ошибок в некоторых службах, но вы можете безопасно отклонить их и продолжить выполнение инструкций.
  4. Затем вам нужно будет связать учетную запись Google, чтобы вы могли обновлять службы с помощью магазина Google Play. Он должен предложить вам это, но если этого не произойдет, вы можете зайти в настройки Google и добавить новую учетную запись. После добавления учетной записи вы можете обновить приложения Google, открыв приложение магазина Google Play и зайдя в настройки из меню боковой панели.
  5. Выберите «Настройки», затем прокрутите вниз до информации о номере версии сборки и дважды нажмите на нее, пока она не сообщит, что она актуальна или загрузит и установит новую версию.
  6. Выключите устройство (нажмите и удерживайте кнопку питания на панели инструментов справа) и перезапустите его. После перезапуска он должен указать, что ему необходимо обновить службы Google Play, нажатие на уведомление откроет Google Play Store и установит последнюю версию.

Теперь вы можете запускать приложения, зависящие от Google Maps, в Xamarin Android Player.

Джо Хили
источник
0

К последней настройке и информации, если вы установили Android Studio (например, 1.5) и пытаетесь настроить таргетинг на SDK 4.0, возможно, вы не сможете найти и настроить эмулятор AVD с SDK-vX.XX (с Google API).

См. Следующие шаги, чтобы загрузить необходимую библиотеку и начать с нее. Настройка эмулятора AVD - настройка эмулятора для SDK4.0 с помощью GoogleAPI, чтобы приложение Map могло работать - в Android Studio

Но, к сожалению, вышеупомянутый метод не сработал с моей стороны. И не смог создать эмулятор с API уровня 17 (SDK 4.2). Так что я подписался на этот пост, который хорошо сработал на моей стороне. Причина заключается в том, что окно создания эмулятора Android Studio имеет ограниченные параметры / функции.

Сервисы Google Play в эмуляторе, реализация кнопки входа в Google Plus и т. Д.

Мухаммад Ханнан
источник
0

Я знаю, что это старый вопрос, но я попал сюда, потому что у меня была такая же проблема, как и у всех выше. Я решил это, просто прочитав чуть внимательнее!

Я не заметил, что было 2 возможных системных изображения, из которых я мог выбрать: одно, содержащее API Google, а другое - нет (на моем ноутбуке меню было слишком маленьким, чтобы я мог прочитать добавленный текст (с API Google).

Глупо пропустить, но у кого-то может быть маленький экран, как у меня, и пропустить это: D

Расс Уиллер
источник