Android emulator 如何在Android棉花糖avd模拟器上安装Android wear应用程序?

Android emulator 如何在Android棉花糖avd模拟器上安装Android wear应用程序?,android-emulator,google-play,wear-os,android-6.0-marshmallow,avd,Android Emulator,Google Play,Wear Os,Android 6.0 Marshmallow,Avd,在过去的几天里,我一直在尝试让android wear应用程序在android棉花糖(API 23)模拟器上运行。我想这样做的原因是,我可以将我的android(手机)仿真器与我的android wear仿真器配对,以便在jenkins上运行自动葫芦烟雾测试。我知道这是可能的(或者至少以前是可能的),正如我发现的(kennethmascarenhas.wordpress.com/2014/08/19/developing for android wear with emulators/),其中概

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

到目前为止我所尝试的:


(1) 在运行谷歌API的棉花糖模拟器上安装Android wear应用程序

仿真器配置:

  • 设备:Nexus5
  • 目标:Android 6.0-API级别23
  • CPU/ABI:Google API英特尔Atom(x86)
  • 模拟器选项:使用主机GPU
启动模拟器:

emulator -avd <my_avd> -writable-system -no-boot-anim
但是,当我尝试将APK“推送”到模拟器时,例如:

adb push PrebuiltGmsCore.apk /system/priv-app
我得到一个错误,比如:

failed to copy 'PrebuiltGmsCore.apk' to '/system/priv-app/PrebuiltGmsCore.apk': Read-only file system
在这一点上,我决定尝试其他东西


(2) 在不运行google API的棉花糖模拟器上安装google play store

仿真器配置:

  • 设备:Nexus5
  • 目标:Android 6.0-API级别23
  • CPU/ABI:Intel Atom(x86)
  • 模拟器选项:使用主机GPU
但是,在尝试将APK“推”到设备上时,我再次遇到与以前相同的“只读文件系统”错误

我甚至试着像平常一样安装它们,例如:

adb install <path_to_apk>
但我在尝试“推送”APK时遇到了相同的“只读文件系统”错误

我还尝试了您的bog标准'chmod'或/system/priv-app/,但再次出现了'Read-only file-system'错误

哦,还有,在你问之前,是的,我正在运行“adb根”


有没有人对我所要完成的事情有任何运气?请帮忙


另外,很抱歉没有正确的链接。我还没有足够的stack cred…

好的,我自己设法解决了这个问题,而不必安装Google Play Store应用程序

使用棉花糖仿真器(带有谷歌API),我尝试安装旧版本的Android wear应用程序(从这里下载),直到我可以启动该应用程序,而不会出现提示我“在Play Store上更新你的谷歌应用程序。然后再次打开安卓wear”的对话框

对我有效的最新版本是:

Android Wear 1.4.0.247307.gms(www.apkmirror.com/apk/google inc/Android Wear/Android-Wear-1-4-0-247307-gms-release/Android-Wear-1-4-0-247307-gms-Android-apk-download/)

事后看来,我可能应该先尝试一下这种方法

一旦启动并运行了两个模拟器,我就运行:

adb -s <phone_emulator_name> forward tcp:5601 tcp:5601
adb-s转发tcp:5601 tcp:5601
看起来5601是一个专用的可穿戴设备端口(请参阅)


然后我启动了android wear应用程序,并从左上角的选项微调器中选择了“Emulator”和Huzzah

这里也有同样的问题。在没有运气的情况下,尝试将Android 6.0虚拟Galaxy Nexus(谷歌API的23)与Android Wear Watch Android 5.1虚拟手表(API级别22)连接起来。我需要在虚拟手持设备上安装安卓Wear 1.4.0.247307.gms,并断开/重新连接安卓Wear companion应用程序几次,使其正常工作。现在,虚拟手机确实连接到smartwatch,但我的应用程序在两者之间没有通信,而在API级别<23的虚拟手持设备上测试的同一个应用程序却连接到smartwatch。我正在使用建议的“GoogleAppClient”方式,而手表上的onDataChanged()从不引发。。。
adb install <path_to_apk>
adb shell
su
mount -o rw,remount /system/priv-app/
adb -s <phone_emulator_name> forward tcp:5601 tcp:5601