通过 ADB 的 Android 通知

Har*_*ldT 6 shell automation android adb

我正在编写一个shell 脚本,允许您使用Terminal在并行连接到计算机的所有 android 手机上安装 .apk 。在我的公司,我们对许多设备进行了测试,因此这使得安装部分必须更快。

问题:我正在寻找一种方法来通过某种反馈/通知快速识别哪些手机安装了 .apk。理想情况下,您应该能够通过查看(某种声音或屏幕闪烁)或仅通过解锁设备(例如,新安装的应用程序已打开)来查看哪些手机收到了 .apk。

关于我如何做这些事情的任何想法?

我读过关于启动应用程序的文章,但似乎这不是你可以只用 .apk 做的事情(你还需要指定一个活动......)。

任何想法将不胜感激!

谢谢!

Har*_*ldT 6

找到了我自己的解决方案!

我正在使用:

aapt dump badging
Run Code Online (Sandbox Code Playgroud)

认为这只会输出包名称。事实证明它输出了更多有用的信息。我注意到的其中一行是输出是应用程序的启动活动。我能够用 grep 隔离这条线,然后像这样切断启动活动:

aapt dump badging $1 | grep launchable | cut -d "'" -f 2
Run Code Online (Sandbox Code Playgroud)

然后有一个命令,如果您知道它的活动之一,它允许您启动应用程序。添加此行会启动使用上述命令检索到的活动。

adb -s $deviceID shell am start -a android.intent.action.MAIN -n $packageName/$launchableActivity
Run Code Online (Sandbox Code Playgroud)

我在安装命令之后立即将这一行放在我的 for 循环中。安装应用程序后,脚本将尝试在之后启动它。非常便利!

感谢所有的帮助!:D