Установка Google Play Store в эмуляторе Android

Установка Google Play Store в эмуляторе Android

Я пытаюсь установить Play Store в эмуляторе AVD. Google APIS buildИ он снова и снова терпит неудачу. Поэтому я начал искать решения. Но ни одно из них не сработало.

Причина? вот она

android@Debian-101-buster-64-minimal:~/Downloads$ adb install 'Google Play Store_v17.1.16-all [0] [PR] 274697545_apkpure.com.apk'
adb: failed to install Google Play Store_v17.1.16-all [0] [PR] 274697545_apkpure.com.apk: Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package com.android.vending signatures do not match the previously installed version; ignoring!]
android@Debian-101-buster-64-minimal:~/Downloads$  

Хорошо. Пакет уже установлен с именем пакета com.android.vending, и это определенно не Play Store

Тогда что это? Я тоже это нашла!

android@Debian-101-buster-64-minimal:~$ adb shell pm path com.android.vending
package:/system/app/LicenseChecker/LicenseChecker.apk

Вывод dumpsys

    android@Debian-101-buster-64-minimal:~$ adb shell dumpsys package com.android.vending
Service Resolver Table:
  Non-Data Actions:
      com.android.vending.licensing.ILicensingService:
        dbab1b8 com.android.vending/.licensing.LicensingService filter 2371e08
          Action: "com.android.vending.licensing.ILicensingService"
          AutoVerify=false

Permissions:
  Permission [com.android.vending.CHECK_LICENSE] (6f3eb91):
    sourcePackage=com.android.vending
    uid=10055 gids=null type=0 prot=normal
    perm=Permission{ac7aaf6 com.android.vending.CHECK_LICENSE}
    packageSetting=PackageSetting{d5eeef7 com.android.vending/10055}

Key Set Manager:
  [com.android.vending]
      Signing KeySets: 4

Packages:
  Package [com.android.vending] (d5eeef7):
    userId=10055
    pkg=Package{8453164 com.android.vending}
    codePath=/system/app/LicenseChecker
    resourcePath=/system/app/LicenseChecker
    legacyNativeLibraryDir=/system/app/LicenseChecker/lib
    primaryCpuAbi=null
    secondaryCpuAbi=null
    versionCode=1801 minSdk=25 targetSdk=25
    versionName=1.8
    splits=[base]
    apkSigningVersion=2
    applicationInfo=ApplicationInfo{1daafcd com.android.vending}
    flags=[ SYSTEM HAS_CODE ALLOW_CLEAR_USER_DATA ALLOW_BACKUP ]
    privateFlags=[ RESIZEABLE_ACTIVITIES ]
    dataDir=/data/user/0/com.android.vending
    supportsScreens=[small, medium, large, xlarge, resizeable, anyDensity]
    timeStamp=2019-04-12 22:25:12
    firstInstallTime=2019-04-12 22:25:12
    lastUpdateTime=2019-04-12 22:25:12
    signatures=PackageSignatures{13b8082 [ef3d224c]}
    installPermissionsFixed=false installStatus=1
    pkgFlags=[ SYSTEM HAS_CODE ALLOW_CLEAR_USER_DATA ALLOW_BACKUP ]
    declared permissions:
      com.android.vending.CHECK_LICENSE: prot=normal, INSTALLED
    requested permissions:
      android.permission.INTERNET
      android.permission.USE_CREDENTIALS
      com.google.android.googleapps.permission.GOOGLE_AUTH
      com.google.android.googleapps.permission.GOOGLE_AUTH.android
      com.google.android.providers.gsf.permission.READ_GSERVICES
    install permissions:
      android.permission.USE_CREDENTIALS: granted=true
      com.google.android.providers.gsf.permission.READ_GSERVICES: granted=true
      com.google.android.googleapps.permission.GOOGLE_AUTH: granted=true
      android.permission.INTERNET: granted=true
      com.google.android.googleapps.permission.GOOGLE_AUTH.android: granted=true
    User 0: ceDataInode=114773 installed=true hidden=false suspended=false stopped=false notLaunched=false enabled=1
      gids=[3003]
      runtime permissions:


Dexopt state:
  [com.android.vending]
    Instruction Set: x86
      path: /system/app/LicenseChecker/LicenseChecker.apk
      status: /system/app/LicenseChecker/oat/x86/LicenseChecker.odex [compilation_filter=speed, status=kOatUpToDate]


Compiler stats:
  [com.android.vending]
    (No recorded stats)
android@Debian-101-buster-64-minimal:~$ 

И этот пакет просто невозможно удалить/деинсталлировать!

Я попробовал переопределить это с помощью приложения Play Store из Open Gapps и Apkpure

Каждая попытка была неудачной. Я купил Icon один раз, но он продолжает зависать.

Как установить приложение Play Store в сборке Google API в эмуляторе AVD?

Мне нужно использовать его вместо сборки Play Store

решение1

Google Play Store официально уже несколько лет предустановлен в Android Emulator. Хотя его сложно установить в некоторых эмуляторах, его легко установить для API 24 и выше, просто выбрав в менеджере AVD эмулятор, в котором уже есть Google Play.

В Android Studio AVD Manager выберите конфигурацию виртуального устройства, рядом с которой находится значок магазина Google Play, а затем выберите один из образов системы с меткой «Google Play». См. эту заметку о выпуске:https://androidstudio.googleblog.com/2017/04/android-studio-24-preview-4-is-now.html.

Android Studio AVD Manager с поддержкой Google Play Store


Процесс установки Play Store в эмуляторах, где он не предустановлен, описан в статье Установите Google Play Store в эмулятор Android.

Ниже приводится краткое содержание статьи:

  • Загрузите пакеты Google Play с сайта Проект Open GApps

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

  • Разархивируйте файл и извлеките выделенное из папки Core:

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

  • Для распаковки этих tar.lzфайлов может потребоваться установка lzipпакета, затем используйте команду:

    tar -xf vending-x86.tar.lz
    

    Конечный результат будет следующим:

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

  • Проверьте каталог привилегированных приложений на предмет отсутствующих APK-файлов:

    adb shell
    ls system/priv-app
    

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

    На изображении выше APK-файлы, относящиеся к сервисам Google, уже установлены, поэтому нам нужно только установить APK из vending-x86 папки с именем Phonesky.apk.

  • Выйдите из эмулятора, нажав Ctrl+.D

  • Загрузите этот APK в эмулятор:

    $ANDROID_HOME/tools/emulator @avd_name -writable-system
    adb remount
    adb push ~/Phonesky.apk /system/priv-app/
    adb shell stop && adb shell start
    
  • Значок Google Play Store теперь должен появиться в панели приложений.

Связанный контент