使用命令行从Play商店安装应用


10

是否可以使用命令行从Play商店安装应用,如果可以,怎么办?

我要完成的工作类似于使用adb install file.apk,但目标不是apk文件,而是Play商店应用的程序包名称(例如adb install com.spotify.mobile.android.ui)。

这样的事情可能吗?


+0。为什么会有任何Android用户想要这样做?
unforgettableidSupportsMonica's

您可以使用:gplaycli github.com/matlink/gplaycli
Benny

Answers:


4

简短答案:不。

长答案:

adb install是一个“快捷方式”,等效于打开一个shell(使用adb shell)并键入pm installpm代表package-manager,他的行为与其他Linux发行版中的其他Package Manager(例如,aptitude在Debian或pacmanArch Linux中)相同,除了pm不从遥远的地方获取软件包。

Play商店是一个像其他应用程序一样的应用程序,我们不能像调用C或“常规” Java程序这样的程序来调用android应用程序,因为该.apk文件实际上不是二进制文件,而是简单的压缩包。这是Dalvik虚拟机(在某种程度上等同于Java虚拟机),与运行的应用程序交易。Play商店应用程序只需下载所需的应用程序,然后pm install在下载的程序包上运行即可。


8

我一直在寻找相同的答案,我找不到单个命令来执行此操作,但是我发现在这种情况下可能有用的几个选项:

A.将.apk下载到您的计算机并从中安装apk(只需在Google中搜索“ apk downloder”,然后找到一个适合您的APK)即可:

adb install com.myapp.apk

B.从adb打开playstore应用并将其指向您的程序包,如下所示:

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

(我敢肯定它可以自动模拟neccesarry点击并安装应用程序,但这需要做更多的工作)

没有比从计算机cmd进行安装更容易的了,但这就是我们现在所拥有的。


在Mac,Linux和最近的Windows上,您可以有一个bash命令提示符,然后在其中(或在.profile设置文件中)定义一个这样的函数: adb-am () { adb shell am start -a android.intent.action.VIEW -d "market://details? id=$1" } 并确保将每个灰色块粘贴为单独的一行。然后,您可以与它运行adb-am com.google.android.apps.photos
Simon B.

1

一种实现您想要(至少部分地)实现目标的方法是使用

 pm install -i "com.android.vending" -r "path to apk"  

在adb shell中。这样,尽管该应用是侧面加载的,但它似乎是从Play商店安装的。


0

如果您知道安装和接受按钮的x和y坐标,则可以在市场开始指向应用程序(如Ohad Cohen所述)后运行以下命令

亚行外壳输入触摸屏水龙头xy-安装按钮的x和y坐标之间有空格

暂停一两秒钟然后运行

亚行外壳输入触摸屏点击xy-接受按钮的x和y坐标,中间有空格

然后关闭播放商店adb shell,强制停止com.android.vending


Google试图保护Play商店(Android电子市场应用程序)免于自动安装应用程序,因为它可能被滥用来促使人们购买应用程序。Appbrainz Fast Web Installer是或曾经是自动化解决方案;appbrain.com/app/fast-web-installer/...
西蒙·
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.