从额外的命令行启动Android活动

时间:2015-11-14 01:39:10

标签: android android-intent adb

我创建了一个简单的活动,我想从命令行开始,并从命令行传递一些值。

但是,如果我尝试

adb shell am start com.example.mike.app/.SimpleActivity --es "Message" "hello!"

然后在活动中收到消息,intent.getExtras()返回null。

的活动:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.simple_activity);

    Intent intent = getIntent();
    Bundle bundle = intent.getExtras();
    Log.d(LOGTAG, intent == null ? "Intent is null" : "Intent is not null");
    Log.d(LOGTAG, bundle == null ? "Bundle is null" : "Bundle is not null");
}

结果:

SimpleActivity(12345): Intent is not null
SimpleActivity(12345): Bundle is null

1 个答案:

答案 0 :(得分:11)

正确的命令应该是

adb shell am start -n com.example.mike.app/.SimpleActivity --es "Message" "hello!"

-n ....