安卓系统.从adb开始碎片



我想通过adb shell运行一个片段。这样做

adb shell am start -n com.example.myapplication/com.example.myapplication.MainActivity -e":android:show_fragment" com.example.myapplication.BlankFragment2

结果

Starting: Intent { cmp=com.example.myapplication/.MainActivity (has extras) }

但是只有活动打开而没有片段。我做错了什么?

如果不使用adb进行编码,就无法打开Fragment。亚洲开发银行与该系统合作。活动是系统的一部分,但不是片段。

要在onCreate方法中的活动中打开来自ADB的片段,您需要检查Extra:

val showFragment = intent.getStringExtra("show_fragment")
if (showFragment != null) {
if (showFragment == "StreamListFragment") {
supportFragmentManager.beginTransaction()
.replace(R.id.container, StreamListFragment())
.commit()
}
}

R.id.container-查看容器,碎片将在其中沉淀。

然后你可以使用adb。

adb shell am start -n com.example.myapplication/com.example.myapplication.MainActivity --es "show_fragment" "StreamListFragment"

最新更新