2013-04-26 74 views
1

是否可以使用命令提示符启动具有不同参数(例如布尔或int类型)的Android应用程序,以及如何在活动类中捕获这些参数?什么是最好的方式来做到这一点?如何使用Terminal使用参数运行Android应用程序?

我要开始应用这种方式,但与我可以在代码中使用参数:

亚行外壳上午开始-a -n android.intent.action.MAIN com.XXX.xxx/com.XXX.xxx .Main

提前致谢。

回答

5

您可以使用以下参数:

[-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

相关问题