Как обновить эмуляторы Google Play для Android Studio 2.2?

Существует ряд вариантов этого вопроса, однако большинство из них очень старые и на самом деле не отвечают на вопрос. Я не спрашиваю, как установить Play Services, который установлен в эмуляторах Studio 2.2.

Проблема заключается в том, что эти эмуляторы используют старую версию Служб Play.

Когда я запускаю тестовое приложение, использующее Firebase для облегчения входа в Google, я получаю это диалоговое окно с предупреждением от эмулятора Nexus 5 API 23:

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

В методе onCreate моей активности входа у меня есть этот код:

int result = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);

    switch(result) {
        case ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED:
            Log.d(TAG,"SERVICE_VERSION_UPDATE_REQUIRED");
            break;
        case ConnectionResult.SUCCESS:
            Log.d(TAG, "Play service available success");
            break;
        default:
            Log.d(TAG, "unknown services result: " + result);

    }

Это всегда возвращает SERVICE_VERSION_UPDATE_REQUIRED.

При нажатии на обновление в диалоговом окне предупреждения ничего не обнаружено. В журнале отладки я получаю это сообщение, когда не запускается запуск Служб Службы:

W/GooglePlayServicesUtil: Google Play services out of date.  Requires 9080000 but found 8489470

Мое приложение отлично работает на реальном устройстве Android.

Какая простая вещь мне не хватает?

ТИА

Ответ 1

Возможно, это не относится к этому вопросу сейчас, но хотелось бы опубликовать его здесь для будущих исследователей, чтобы они увидели какую-то землю в конце моря. Я боролся с этой устаревшей службой Google Play на моем эмуляторе xx86 для Nexus 5, использующем API 25, и попробовал уведомление Firebase. Я использую Firebase 10.0.1, которому требуется Google Play Services 10.0.1. Но на моем эмуляторе я всегда получал сообщение

W/GooglePlayServicesUtil: службы Google Play устарели. Требуется 1008400, но найдено 9874900

W/FA: сбой подключения к службе: ConnectionResult {statusCode = SERVICE_VERSION_UPDATE_REQUIRED, разрешение = null, message = null}

Я много раз искал способ обновления сервисов Google Play на своем эмуляторе, и все, что было предложено, никогда не срабатывало. Наконец, я попытался создать новый эмулятор Nexus 5 x86_64 и API 24. Voila!!! Он имеет Google Play Services 10.0.1, и мое приложение работает сейчас.

Мне действительно нравится, почему у x86-образа нет последних сервисов Google Play Services, и он не позволяет мне обновлять его каким-либо образом, а на изображении x86_64 есть последние службы Google Play.

Надеюсь, это поможет кому-то, кто борется с сервисами Google Play.

Ответ 2

Что касается моего случая, я пробовал проверять наличие обновлений на Android Studio, а также Службы Google Play и перезапустил Android Studio. Затем появилось диалоговое окно обновления, которое позволяет мне обновлять изображения эмулятора с помощью правильной версии Служб Google Play.

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

Дождитесь завершения обновления, затем создайте новые AVD на основе недавно обновленных изображений, и все будет хорошо.

Ответ 3

Предполагая, что вы используете AVD по умолчанию Android, в отличие от Genymotion, вам просто нужно убедиться, что все было обновлено.

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

  • Версия вашего инструмента для сборки - 24.0.3 или выше
  • На вкладке SDK Manager (вкладка SDK Platforms):
    • Если вы тестируете Nougat, ваш эмулятор использует Google System System Image Revision 8 или выше (я использую "Системный образ Intel x64 для Intel API для Google API" )
    • Google API установлены и обновлены (для меня "API Google, Android 24" - версия 1.0.0)
  • В Диспетчере SDK (вкладка SDK Tools):
    • Android SDK Platform Tools - версия 24.0.3 или новее
    • Android SDK Tools - версия 25.2.2 или выше
    • Служба Google Play установлена ​​и использует версию 33 или выше
    • (возможно, необязательно) Google Repository установлен и версия 36 или выше

После обеспечения всего этого и перезапуска Android Studio (потому что лучше безопасно, чем извините) создайте новый AVD. В основном я использую следующие настройки:  - Нуга (API 24)  - ABI - x86_64  - Target - Android 7.0 (с API Google)

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

Ответ 4

Я не спрашиваю, как установить Play Services, который установлен в эмуляторах Studio 2.2.

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

Проблема заключается в том, что эти эмуляторы используют старую версию Служб Play.

То, что говорит ошибка, да.

Возможность: Ваш эмулятор и/или библиотека SDK устарели, и вам нужен новый AVD.

Возможность двух: загрузите последнюю APK для Play Services и установите ее. Вы можете использовать adb для его установки, например. Genymotion позволит вам устанавливать файлы APK, перетаскивая их на эмулятор.

Ответ 5

Эти пакеты будут работать только для Android 4.2.2 и выше в этом ответе. Я беру пример (API 17). И он будет работать.

Давайте начнем с запуска диспетчера SDK. Сначала нам нужно обеспечить установку Android 4.2.2 (API 17) и выше.

[[email protected] tools]$ ./android sdk

Если нет, проверьте элемент верхнего уровня "Android 4.2.2 (API 17)", нажмите "Установить 6 пакетов" и примите лицензионное соглашение.

Настройка изображения

Чтобы получить правильное изображение для вашего менеджера виртуальных устройств:

  • Откройте Android SDK Manager
  • Откройте группу Android 4.2.2 (API 17)
  • Проверьте API Google
  • Проверьте изображение системы ARM EABI v7a

    [! [необходимый инструмент Google Android sdk] [1]] [1]

После установки закройте диспетчер SDK и запустите диспетчер AVD. Здесь также необходимо создать новый AVD, который использует платформу Android 4.2.2, и имеет моментальные снимки, чтобы любые изменения, которые мы делаем, были постоянными.

[[email protected] tools]$ ./android avd

Далее нам нужно снять соответствующий пакет Google Apps. Используя Android 4.2.2 (API 17) и выше, мы должны использовать соответствующий пакет в соответствии с приведенной ниже ссылкой.

[https://www.androidfilehost.com/?w=files&flid=5649][2]

После загрузки извлеките архив. Чтобы установить Google Play, нужно нажать следующие 3 APK на наш AVD (расположенный в. /system/app/ ):

  • GoogleServicesFramework.apk
  • GoogleLoginService.apk
  • Phonesky.apk

Однако, прежде чем мы это сделаем, нам нужно внести некоторые незначительные изменения в наш AVD. Позволяет запустить вновь созданный AVD, используя следующую команду. Обратите внимание, что weve задал размер раздела 512 МБ. Это необходимо для того, чтобы наш AVD имел достаточную емкость для установки Google Play Store и его зависимостей.

[[email protected] tools]$ ./emulator -avd Test -partition-size 512 -no-boot-anim

Это может занять несколько минут с момента создания AVD. После запуска нам нужно перемонтировать раздел AVD и изменить разрешения "/system/app/", так как здесь будут установлены наши пакеты.

[[email protected] platform-tools]$ ./adb remount
[[email protected] platform-tools]$ ./adb shell chmod 777 /system/app

И, наконец, мы можем нажать эти APK на наш AVD:

[[email protected] platform-tools]$ ./adb push ~/system/app/GoogleServicesFramework.apk /system/app/
[[email protected] platform-tools]$ ./adb push ~/system/app/GoogleLoginService.apk /system/app/
[[email protected] platform-tools]$ ./adb push ~/system/app/Phonesky.apk /system/app/

Теперь, если ваш эмулятор будет таким же медленным, как мой, может потребоваться несколько минут для установки пакета. Youll знает, если установка еще не завершена, если процесс запуска запускает несколько сбоев на вас;)

Через несколько минут мы увидим, что пакет Google Play появится в панели запуска меню. После связывания аккаунта Google с этим AVD теперь у нас есть полностью работающая версия Google Play, работающая под вашим эмулятором.

Пожалуйста, обратитесь к этой ссылке: [http://www.flinkd.org/2013/12/installing-google-play-on-the-android-emulator-api-18/][3]

Это должно делать работу. Для получения дополнительной информации и учебника вы можете посмотреть эти видеоуроки: - [https://www.youtube.com/watch?v=Nq5mng20PC8][4]

      [1]: http://i.stack.imgur.com/Xn2cX.png
      [2]: https://www.androidfilehost.com/?w=files&flid=5649
      [3]: http://www.flinkd.org/2013/12/installing-google-play-on-the-android-emulator-api-18/
      [4]: https://www.youtube.com/watch?v=Nq5mng20PC8

Ответ 6

Если люди все еще ищут ответ и не нашли решения, которое исправляет или обновляет службы Google Play на своих эмуляторах, вот что мне помогло. Я следил за несколькими сообщениями SO, которые рекомендуют получать последние инструменты сборки SDK, но пропустили очень важное обновление. То есть, с платформ SDK вы должны обновить/загрузить

Google Play Intel x86 Atom System Image

Изображение стоит тысячи слов: введите описание изображения здесь

Ответ 7

Аналогичная проблема с API 25, Studio 2.2.3, разрешена смена строки

compile 'com.google.android.gms:play-services:10.2.0'

к

compile 'com.google.android.gms:play-services:9.8.0'

в build.gradle(Module: app), ожидая обновления сервисов Google Play в изображениях эмулятора.