问题描述
使用adb shell am 相关命令时,一般需要使用Intent参数。Intent的参数的Component Name部分如果包含内部类时,在写法上需要注意一个问题。
比如:
adb shell am start -n com.mypackagename/.myActivity
但是如果Activity是内部类时,如果直接写:
adb shell am start -n com.mypackagename/.myActivity$myInnerActivity
是有问题的,因为
$myInnerActivity
会被解析成环境变量。
解决方法:
正确的写法是,将Component Name字符串加上单引号:
adb shell am start -n 'com.mypackagename/.myActivity$myInnerActivity'