обновление сервисов Google play в эмуляторе

137

Я задавал много подобных вопросов в Google Play, я использую Android 4.2.2 API 17 .

Моему приложению требуются сервисы Google Play 8.1, оно отлично компилируется, и когда оно запускается на эмуляторе, отображается сообщение «Вам необходимо обновить свои сервисы Google Play» ,

Когда я нажимаю на обновление, ничего не происходит,

Как я могу обновить сервисы Google Play, не загружая последнюю версию API?

Джонни
источник
1
Вряд ли ничего не произойдет. Более вероятно, что вы получите ошибку в консоли запуска, похожую на android.content.ActivityNotFoundException: No Activity found to handle Intent....
Като
1
По состоянию на 2017 год принятый ответ больше не является правильным. Совет от @ user345280 относительно вкладки в окне эмулятора должен быть принятым ответом.
Anthony Chuinard
Я столкнулся с этой проблемой несколько дней назад, и ни один из ответов не решил мою проблему. Я разместил свое решение внизу, может быть, оно поможет кому-то, кто приедет сюда в 2019 году.
Бан Маркович

Ответы:

86

Обновление от 18 декабря 2017 г.

Вы можете обновить сервисы Google Play через приложение Play Store в своем эмуляторе так же, как на физическом устройстве Android через API 24.

проверьте новые функции эмулятора, добавленные в стабильное обновление из Android Studio v 3.0

Поддержка Google Play - от Google: мы знаем, что многие разработчики приложений используют службы Google Play, и может быть сложно поддерживать службу в актуальном состоянии в образах системы эмулятора Android. Чтобы решить эту проблему, мы теперь предлагаем версии образов системы Android, которые включают приложение Play Store. Образы Google Play доступны начиная с Android Nougat (API 24) . С помощью этих новых образов эмулятора вы можете обновлять сервисы Google Play через приложение Play Store в своем эмуляторе так же, как на физическом устройстве Android. Кроме того, теперь вы можете протестировать сквозные процессы установки, обновления и покупки в Google Play Store.


Быстрая загрузка - быстрая загрузка позволяет возобновить сеанс эмулятора Android менее чем за 6 секунд.

Совместимость с Android CTS

Улучшения производительности - в последних версиях эмулятора Android теперь мы выделяем оперативную память по запросу, вместо того, чтобы выделять и закреплять память на максимальный размер ОЗУ, определенный в вашем AVD.

Виртуальные датчики

Поддержка Wi-Fi

Местоположение GPS и многое другое ...

ИЛИ

Обновите этот SDK Build-Tools и Android Emulator до последней версии, и это предупреждающее сообщение больше не появится,

Настройки -> Android SDK -> SDK Tools (вкладка) -> Android SDK Build-Tools

введите описание изображения здесь

Амит Вагела
источник
28
это просто не работает, недавно загруженные изображения поставляются без данных сервисов Google Play
FRR
4
? Все эмуляторы (с google API) идут с версией google play services, вопрос в том, как ее обновить до последней версии. Загрузив более старый API, вы получите несколько более новую версию, но все же не самую последнюю. (кое-что, что вы не упомянули в своем ответе)
FRR
6
Пожалуйста, прекратите размещать ссылки на свой ответ под сообщениями других людей.
meagar
4
Кажется , его отсутствие в последнем API 27
JPM
10
Не похоже, что этот ответ имеет отношение к вопросу, поскольку они спрашивают об «Android 4.2.2 API 17», но обновленный ответ актуален только для API> = 24.
Лирон Яхдав,
76

Используйте эмулятор, на котором установлен Play Store. Обновить игровые сервисы будет так же просто, как на реальном устройстве.

С тех пор, как Google представил образы Google Play Store в Android SDK Tools 26.0.0, теперь эмуляторы поставляются с установленным Google Play Store .

введите описание изображения здесь

Начиная с 26.0.3

  • Добавляет новую вкладку в расширенное окно для изображений Google Play Store, в которой отображается версия Play Services, и кнопка для проверки обновлений для Play Services.

настройки эмулятора

пользователь345280
источник
17
У меня нет вкладки "Google Play" в расширенном окне. В чем может быть проблема?
K.Os
11
Вы используете эмулятор с установленным playstore? Проверьте, установлен ли у вас sdk manager -> платформы sdk -> Android 8 -> Google Play ... образ системы. Скачать это. Создайте новый эмулятор, используя этот образ.
user345280
5
Работает на Android Studio 2.3.3. Создайте новый AVD, выберите Nexus 5или Nexus 5X(строки со значком Google Play), нажмите «Далее», а затем «Загрузить» Android 8.0 (Google Play)или Android 7.0 (Google Play). Обратите внимание на (Google Play)настоящее имя SDK. @ user345280 может захотеть отредактировать ответ и добавить эту информацию.
Рафаэль Оливейра
2
Спасибо @RafaelOliveira. Я целую вечность пытался использовать Pixel и удивлялся, почему он не видит мое изображение в Google Play ... должно быть, Nexus 5 или 5X!
hughjdavey
13
Не похоже, что этот ответ имеет отношение к вопросу, поскольку они спрашивают об «Android 4.2.2 API 17», но этот ответ актуален только для API> = 24.
Лирон Яхдав,
18

На основе документации Google ,

Если вы хотите протестировать свое приложение на эмуляторе, разверните каталог для Android 4.2.2 (API 17) или более поздней версии, выберите API Google и установите его. Затем создайте новый AVD с API Google в качестве целевой платформы.

Попробуйте перейти в настройки -> приложения в вашем эмуляторе, а затем найдите Сервисы Google Play. Проверьте номер версии и используйте его в build.gradle. Чтобы обновить его до последней версии, вы можете увидеть его в этой документации и в вопросе SO .

Abielita
источник
2
Хороший совет, но в любом случае вы не можете использовать старую версию Play Services для тестирования функций, для которых требуется более новая версия.
andreszs 01
17

Вам нужно установить образ Google play, Android SDK -> платформы SDK -> проверить Показать сведения о пакете -> установить Google play. введите описание изображения здесь

Хуссен Булла
источник
16

Запуск приложения на виртуальном устройстве с системным образом "Google Play API" вместо "Google API" решит вашу проблему без проблем.

  • Виртуальные устройства Nexus 5x и Nexus 5 поддерживают образ Google Play API.

  • Google Play API поставляется с Nougat 7.1.1 и O 8.0.

Просто выполните следующие простые шаги и убедитесь, что ваш компьютер подключен к Интернету.

  1. Создайте новое виртуальное устройство, выбрав «Создать виртуальное устройство» (левый нижний угол) в Android Virtual Devices Manager.

  2. Выберите "Аппаратное обеспечение" Nexus 5x или "Nexus 5".

  3. Загрузите образ системы «Nougat» с помощью Google Play или «O» с помощью Google Play. «O» - последняя версия Android 8.0.

  4. Щелкните Далее и Готово.

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

  6. Вы будете перенаправлены в Play Маркет, и вы сможете легко обновить свои сервисы Google Play.

Убедитесь, что ваше приложение работает без сбоев!

  • Примечание . Если вы планируете использовать API из сервисов Google Play, вы должны использовать системный образ API Google.
Мишель
источник
2
Хм нет Google Play APIх.
живо
1
Спасибо. Это сработало для меня. После обновления до Android Studio 3.0 мне не удавалось получить доступ для работы.
pvella
7
Не похоже, что этот ответ имеет отношение к вопросу, поскольку они спрашивают об «Android 4.2.2 API 17», но этот ответ актуален только для API> = 24.
Лирон Яхдав,
8

ответы на этой странице ускользали от меня, пока я не нашел опцию показать детали пакета

введите описание изображения здесь

Abbood
источник
7

Мой ответ - не обновлять сервис Google Play, а обойтись без него. Получите версию эмулятора для службы воспроизведения, используя следующий код

getPackageManager().getPackageInfo("com.google.android.gms", 0 ).versionName);

Например, если значение равно «9.8.79», используйте ближайшую меньшую доступную версию com.google.android.gms: play-services: 9.8.0 '

Это решит вашу проблему. Получите историю выпусков на https://developers.google.com/android/guides/releases#november_2016_-_v100.

Ганеш Канна
источник
1
Не могли бы вы уточнить, что вы подразумеваете под «использовать ближайшую меньшую версию»? Как мне "использовать" это? Если я знаю, что мой эмулятор Android Studio использует версию 8.0.87, что именно мне делать с этой информацией? Есть ли что-то в файлах манифеста или градиента, которые я должен установить?
Marc
вы можете использовать 7.8
Ганеш Канна
2

Я знаю, что это поздний ответ, но последние два дня у меня была такая же проблема, и ни одно из вышеперечисленных решений не помогло мне. Мое приложение поддерживает min sdk 16, Jelly Bean 4.1.x , поэтому я хотел протестировать свое приложение на эмуляторе с версией 16 android api, и мне потребовались сервисы Google Play.

Короче говоря, решение, которое сработало для меня:

  • создать новый эмулятор Nexus 5X (с поддержкой Play Store) - Jelly Bean 4.1.x, уровень API 16 (БЕЗ Google API)
  • вручную загрузите apks Google Play Store и Google Play Services (необходимо, чтобы оба apks имели одинаковую версию, они должны начинаться с одного номера, например 17.x)
  • перетащите эти файлы в новый эмулятор
  • поздравляем, вы обновили сервисы Google Play на своем эмуляторе 4.1.x

Вот шаги и ошибки, с которыми я столкнулся во время проблемы.

Итак, я сделал новый эмулятор в своем AVD. Я выбрал Nexus 5X (с поддержкой Play Store). После этого я выбрал уровень api Jelly Bean 16 (с API Google). Когда я открыл свое приложение, всплывает диалоговое окно с сообщением « Вам необходимо обновить сервисы Google Play» . Когда я нажал кнопку «Обновить», ничего не произошло. Я обновил все необходимое в SDK manager, но ничего не получилось. Я не установил Google Play Store на свой эмулятор, хотя я выбрал Nexus 5X, который поставляется с предустановленным Play Store. Поэтому я не смог найти вкладку Google Play Store в расширенных элементах управления (точки в виде дерева рядом с моим эмулятором).

Поскольку ничего не помогло, я решил попробовать установить сервисы Google Play вручную, скачав APK и перетащив его в эмулятор. Когда я попробовал это, я столкнулся с проблемой. Не удалось установить APK. Ошибка: INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES . Я решил, что это проблема, потому что я выбрал уровень API Jelly Bean 16 (с API Google) . Итак, я сделал новый эмулятор

Nexus 5X (с поддержкой Play Store) - уровень API Jelly Bean 16 ( БЕЗ API Google)

Это позволило мне установить сервис Google Play вручную. Но когда я запускаю свое приложение, оно все равно не хочет его открывать. Проблема заключалась в том, что в моем эмуляторе отсутствовал Google Play Store. Поэтому я установил его вручную, как Google Play Service. Но когда он был успешно установлен, диалоговое окно начало появляться каждую секунду с сообщением К сожалению, службы Google Play остановлены . Проблема заключалась в том, что версия моего Google Play Store была 17.x, а Google Play Service - 19.x. Итак, в конце я установил Google Play Service с версией 17.x, и все заработало.

Пан Маркович
источник
Как вы скачивали и устанавливали апки?
CoolMind
@CoolMind просто скачай их с apkmirror.com (поиск в google google play services apk apkmirror). Когда вы загружаете их, просто перетаскивайте файлы apk в свой эмулятор.
Бан Маркович
Благодарность! Я тоже думал об этом, но не был уверен. Я попытаюсь. Вы использовали версию 17 или больше?
CoolMind
1
Нет проблем, надеюсь, вы решите свою проблему. Я использовал 17 версию GPS, но думаю, вы можете использовать любую более новую версию, какую захотите. Вот статья с дополнительной информацией о моем решении medium.com/@banmarkovic/…
Ban Markovic
1
Не уверен, что понял все, что ты сказал. Но я бы избегал версий apks и эмуляторов armeabi-v7a и попробую все, используя только архитектуру x86 (apks и эмулятор).
Бан Маркович
1

У меня была такая же проблема. Просто избегайте использования эмулятора с SDK 27. SDK 26 работает нормально!

Эстеван Лукас
источник
0

Я столкнулся с той же проблемой. Я обновил свою студию Android и использовал цель API 25 как Android 7.1.1 и X86, и все работало нормально. Я использую сервисы Google Play и firebase для своего проекта

Махеш Н
источник
0

2020 г., ошибка сервисов Google Play устарела. Требуется 12451000, но найдено 11743470

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

PS: Я пробовал разные версии эмулятора, но все они необходимы для обновления сервисов Google Play.

Богдан М
источник
Что делать, если на моих эмуляторах нет Google Play
mac229
0

Обновите свои сервисы Google Play или просто создайте новый эмулятор . При установке нового эмулятора эта проблема будет решена автоматически. Удачного кодирования :)

Мухаммад Тамим Рафай
источник
Что делать, если на моем эмуляторе нет Google Play, как я могу обновить сервисы Google Play?
mac229,
вы можете использовать эмулятор genymotion для решения этой проблемы.
Мухаммад Тамим Рафай