从 Google Play 商店自动安装 .apk

Automated Installation of an .apk from the Google Play Store

我正在使用 Python 和我自己的 ADB 协议实现编写一些 Android-TV-App 的端到端测试。到目前为止一切正常,我可以发送命令,获取 ui-dumps 等。

但是,由于该应用仅在 Google Play 商店中可用(我无权访问任何源代码)并且我想每周更新该应用的版本,所以我想知道如何使用 ADB 执行此操作。

我考虑了以下解决方案:

  1. 发送关键事件以打开设备上的 Play 商店并导航到应用程序的安装/更新页面。
  2. 以某种方式将应用程序下载到测试机并通过 ADB 将其推送到设备。
  3. 使用ADB直接在设备上安装新版本的应用程序。

这是什么"best practice",我应该如何解决我的问题?

这是我的做法。
1.First 在 playstore 中打开应用页面

adb shell am start -a android.intent.action.VIEW -d 'market://details?id=com.yourpackagename'

2.Then 触摸 install/update 按钮。

adb shell input tap <x> <y> (Default: touchscreen)

答案对我有用 phone 没问题。

adb shell am start -a android.intent.action.VIEW -d 'market://details?id=com.yourpackagename'

但在其他 phones 上它不工作,抛出错误。 您可以通过从命令中删除单引号 (') 来修复该错误(明天将使用确切的错误进行编辑):

adb shell am start -a android.intent.action.VIEW -d market://details?id=com.yourpackagename

在本地下载 APK 使用 Google Play Downloader via Command line 并使用 adb 安装。

$ gplaycli -s 'App Inspector'
Title                                           Creator            Size      Downloads                 Last Update  AppID                        Version   Rating  
App Inspector                                   Projectoria        895.04KB  100,000+ downloads        14 Jul 2019  bg.projectoria.appinspector  8         4.53    
...
$ gplaycli -d bg.projectoria.appinspector
$ adb install bg.projectoria.appinspector.apk 
Performing Streamed Install
Success