在 Android 模擬器中安裝 Google Play 商店

在 Android 模擬器中安裝 Google Play 商店

我正在嘗試在 AVD 模擬器中安裝 Play 商店。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 商店

那這是什麼?我也發現了!

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:~$ 

而且這個軟體包是無法刪除/卸載的!

我嘗試用​​ Playstore 應用程式覆蓋這個 來自 Open Gapps 和 Apkpure

每一次嘗試都失敗了。我曾經獲得過該圖標,但它會不斷崩潰。

我如何在 AVD 模擬器中建立的 Google APIS 中安裝 Play 商店應用程式

我需要使用它而不是 Play Store 構建

答案1

Google Play 商店幾年前就已正式預先安裝在 Android 模擬器中。雖然在某些模擬器中安裝起來很困難,但只需從 AVD 管理器中選擇一個已經安裝了 Google Play 的模擬器,就可以輕鬆安裝 API 24 及更高版本。

在 Android Studio AVD 管理器中,選擇旁邊有 Google Play 商店圖示的虛擬裝置配置,然後選擇帶有「Google Play」標籤的系統映像之一。請參閱此發行說明:https://androidstudio.googleblog.com/2017/04/android-studio-24-preview-4-is-now.html

支援 Google Play 商店的 Android Studio AVD 管理器


文章中介紹了在未預先安裝的模擬器中安裝 Play 商店的過程 在 Android 模擬器中安裝 Google Play 商店

以下為文章摘要:

  • 從以下位置下載 Google Play 軟體包 開放 GApps 項目

    在此輸入影像描述

  • 解壓縮檔案並從 Core 資料夾中提取突出顯示的內容:

    在此輸入影像描述

  • 要解壓縮這些tar.lz檔案可能需要安裝 lzip軟體包,然後使用命令:

    tar -xf vending-x86.tar.lz
    

    最終結果將是:

    在此輸入影像描述

  • 檢查特權應用程式目錄是否缺少 APK:

    adb shell
    ls system/priv-app
    

    在此輸入影像描述

    上圖中,與 Google 服務相關的 APK 已安裝,因此我們只需從vending-x86 名為 的資料夾安裝 APK 即可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 商店圖示現在應該位於應用程式抽屜中。

相關內容