用adb shell am命令时候输入了adb shell am start -n JDRU.apk以后为啥提示Error:bad component name 10
1个回答
展开全部
bad component name,提示你参数不正确。想必你也看到这句话之前的一堆内容了,那些都是介绍shell am命令的,这里只讲重点。
$ adb shell am start
usage: am [subcommand] [options]
usage: am start [-D] [-W] [-P <FILE>] [--start-profiler <FILE>]
[--sampling INTERVAL] [-R COUNT] [-S] [--opengl-trace]
[--user <USER_ID> | current] <INTENT>
那么咱们启动app使用的intenet,至于什么是intent,自己去了解下。再来看看intent的说明
<INTENT> specifications include these flags and arguments:
[-a <ACTION>] [-d <DATA_URI>] [-t <MIME_TYPE>]
[-c <CATEGORY> [-c <CATEGORY>] ...]
[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--el <EXTRA_KEY> <EXTRA_LONG_VALUE> ...]
[-n <COMPONENT>] [-p <PACKAGE>] [-f <FLAGS>]
........
(省略N多行)
只看重点 -n 这行,那么按照说明,启动一个app应该是这样的构造,当然后面可以加参数什么的
am start -n {包(package)名}/{包名}.{活动(activity)名称}
包名以及启动的入口都可以从aapt中得到信息,分别为
package: name和launchable-activity
一个网上最简单的例子:
am start -n com.android.calculator2/com.android.calculator2.Calculator
自己多试试就会成功,找对包名类名和入口,没问题的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询