0

我可以通过 adb 安装 apk 没有任何问题。

但是在我安装它之后,我想通过 adb 打开那个包。我想向打开 MAIN 或 LAUNCHER 活动的包发送一个 Intent,就像启动器一样。

但是 adb 似乎总是希望我在我的意图中包含一个活动名称。

我该如何解决这个问题?我可以扫描一个 apk 以获取所有包名称吗?对于主要的?有没有办法通过没有活动名称的 adb 打开它?

4

2 回答 2

0

通过 adb,您可以通过使用 adb 本身的猴子来简化应用程序打开过程,而无需查找可启动的活动。

例如,要打开 Facebook:

adb shell monkey -p com.facebook.katana 1
于 2015-04-21T15:41:17.910 回答
0

使用 aapt 您可以找到可启动的活动,例如:

$ aapt dump badging file.apk | grep package
package: name='com.triposo.droidguide.world' versionCode='161' versionName='2.1'

$ aapt dump badging file.apk | grep launchable
launchable-activity: name='com.triposo.droidguide.world.SplashActivity'  label='' icon=''

要在启动活动时指定意图,可以使用 MonkeyRunner 脚本和MonkeyDevice.startActivity

from com.android.monkeyrunner import MonkeyRunner
device = MonkeyRunner.waitForConnection()
package = 'com.triposo.droidguide.world'
launchable_activity = 'com.triposo.droidguide.world.SplashActivity'
device.startActivity(component='%s/%s' % (package, launchable_activity)))
于 2013-07-10T08:39:23.147 回答