我创建了一个简单的活动,我想从命令行开始,并从命令行传递一些值。
但是,如果我尝试
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
答案 0 :(得分:11)
正确的命令应该是
adb shell am start -n com.example.mike.app/.SimpleActivity --es "Message" "hello!"
与-n
....