小编pdr*_*dri的帖子

如何在Android marshmallow avd模拟器上安装Android Wear app?

在过去的几天里,我一直在努力让Android的应用程序在Android marshmallow(API 23)模拟器上运行.我想这样做的原因是,我可以将我的android(手机)模拟器与我的机器人模拟器配对,以便在jenkins上运行自动葫芦烟雾测试.我知道这是可能的(或至少以前已经可能),正如我发现的那样(kennethmascarenhas.wordpress.com/2014/08/19/developing-for-android-wear-with-emulators/),其中概述了配对两个模拟器在一起.

到目前为止我尝试过的:


(1)在运行Google API的marshmallow模拟器上安装Android Wear应用程序

模拟器配置:

  • 设备:Nexus 5
  • 目标:Android 6.0 - API级别23
  • CPU/ABI:Google API Intel Atom(x86)
  • 仿真器选项:使用主机GPU

启动模拟器:

emulator -avd <my_avd> -writable-system -no-boot-anim
Run Code Online (Sandbox Code Playgroud)

安装android wear app(从这里下载:www.apkmirror.com/apk/google-inc/android-wear/android-wear-1-5-0-2714488-gms-release/android-wear-1-5- 0-2714488-GMS-Android的APK下载/):

adb -s emulator-5554 install <path_to_downloaded_wear_apk>
Run Code Online (Sandbox Code Playgroud)

然而,打开磨损应用程序会产生一个对话框,指出:"在Play商店中更新您的Google应用程序.然后再次打开Android Wear."

这是我试图安装Google Play的兔子洞 - -

有趣的是,如果您使用"Google API"运行模拟器,则已捆绑以下Google Play应用:

  • Google Play服务 - 包:/system/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk=com.google.android.gms versionName = 8.4.89(2428711-470)
  • Google客户经理 - 软件包:/system/priv-app/GoogleLoginService/GoogleLoginService.apk=com.google.android.gsf.login versionName = 6.0-2780065
  • Google服务框架 - 包:/system/priv-app/GoogleServicesFramework/GoogleServicesFramework.apk=com.google.android.gsf versionName = 6.0-2780065
  • Google Play商店 - 包:/system/app/LicenseChecker/LicenseChecker.apk=com.android.vending versionName = 1.8(不要认为这实际上是因为我在应用列表中看不到应用)

根据这篇博客文章(www.flinkd.org/2015/02/installing-google-play-on-the-android-emulator-api-21-lollipop/),可以安装谷歌游戏商店(以及所有顺其自然),或者至少它是在API 21上.

将模拟器设备分区重新安装为读写:

adb remount
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试将apks"推送"到模拟器时,例如:

adb push PrebuiltGmsCore.apk /system/priv-app
Run Code Online (Sandbox Code Playgroud)

我得到一个错误: …

android-virtual-device android-emulator google-play android-6.0-marshmallow wear-os

2
推荐指数
1
解决办法
2099
查看次数