1

是否可以从命令提示符启动具有不同参数(例如布尔或 int 类型)的 Android 应用程序,以及如何在我的活动类中捕获这些参数?最好的方法是什么?

我想以这种方式启动应用程序,但使用可以在代码中使用的参数:

adb shell am start -a android.intent.action.MAIN -n com.XXX.xxx/com.XXX.xxx.Main

预先感谢。

4

1 回答 1

6

您可以使用以下参数:

[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--esn <EXTRA_KEY> ...]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
[--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
[--el <EXTRA_KEY> <EXTRA_LONG_VALUE> ...]
[--eu <EXTRA_KEY> <EXTRA_URI_VALUE> ...]
[--eia <EXTRA_KEY> <EXTRA_INT_VALUE>[,<EXTRA_INT_VALUE...]]
[--ela <EXTRA_KEY> <EXTRA_LONG_VALUE>[,<EXTRA_LONG_VALUE...]]

例如:

adb shell am start -a android.intent.action.MAIN -n com.XXX.xxx/com.XXX.xxx.Main --es STRING_PAR_NAME stringParameterValue

它们可以从Intent用于启动活动的 中访问,通过get[Type]Extra()- 例如getStringExtra(String name)。如果活动刚刚启动,您可以使用getIntent()或在onNewIntent(Intent intent)Intent中的参数中获取它,如果活动已经在运行。

于 2013-04-26T09:51:11.160 回答