Android am命令

转载 2013年12月02日 19:15:59

在Android中命令行工具am的用法如下

usage: am [subcommand] [options]

    start an Activity: am start [-D] [-W] <INTENT>
        -D: enable debugging
        -W: wait for launch to complete

    start a Service: am startservice <INTENT>

    send a broadcast Intent: am broadcast <INTENT>

    start an Instrumentation: am instrument [flags] <COMPONENT>
        -r: print raw results (otherwise decode REPORT_KEY_STREAMRESULT)
        -e <NAME> <VALUE>: set argument <NAME> to <VALUE>
        -p <FILE>: write profiling data to <FILE>
        -w: wait for instrumentation to finish before returning

    start profiling: am profile <PROCESS> start <FILE>
    stop profiling: am profile <PROCESS> stop

    start monitoring: am monitor [--gdb <port>]
        --gdb: start gdbserv on the given port at crash/ANR

    <INTENT> specifications include these flags:
        [-a <ACTION>] [-d <DATA_URI>] [-t <MIME_TYPE>]
        [-c <CATEGORY> [-c <CATEGORY>] ...]
        [-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
        [--esn <EXTRA_KEY> ...]
        [--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
        [-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
        [-n <COMPONENT>] [-f <FLAGS>]
        [--grant-read-uri-permission] [--grant-write-uri-permission]
        [--debug-log-resolution]
        [--activity-brought-to-front] [--activity-clear-top]
        [--activity-clear-when-task-reset] [--activity-exclude-from-recents]
        [--activity-launched-from-history] [--activity-multiple-task]
        [--activity-no-animation] [--activity-no-history]
        [--activity-no-user-action] [--activity-previous-is-top]
        [--activity-reorder-to-front] [--activity-reset-task-if-needed]
        [--activity-single-top]
        [--receiver-registered-only] [--receiver-replace-pending]
        [<URI>]

 

启动的方法为一个activity

# am start -n 包名/包名.活动(activity)名称

启动的哪个acitivity方法可以从每个应用的AndroidManifest.xml的文件中找到信息

 

启动音乐

# am start -n com.android.music/com.android.music.MusicBrowserActivity

启动视频

# am start -n com.android.music/com.android.music.VideoBrowserActivity

# am start -n com.android.music/com.android.music.MediaPlaybackActivity

 

启动照相机:

# am start -n com.android.camera/com.android.camera.Camera

 

启动浏览器

# am start -n com.android.browser/com.android.browser.BrowserActivity

启动浏览器并上网:

#am start -a android.intent.action.VIEW -d  http://www.google.cn/

 

打电话 :

#am start -a android.intent.action.CALL -d tel:10086

 

google map 直接定位深圳 :

am start -a android.intent.action.VIEW geo:0,0?q=shenzhen

 

profile

#ps

#am profile  进程号 start  profile_result.txt

#am profile  进程号 stop

启动一个service

#am startservice service的intent

启动instrument测试(界面上是进dev tools -->instrument选择)

看看浏览器测试工程的xml文件

    <application>
        <uses-library android:name="android.test.runner" />
    </application>

    <!--
    This declares that this app uses the instrumentation test runner targeting
    the package of com.android.email.  To run the tests use the command:
    "adb shell am instrument -w com.android.browser.tests/android.test.InstrumentationTestRunner"
    -->
    <instrumentation android:name="android.test.InstrumentationTestRunner"
                     android:targetPackage="com.android.browser"
                     android:label="Tests for Browser."/>

    <instrumentation android:name="com.android.browser.BrowserLaunchPerformance"
        android:targetPackage="com.android.browser"
        android:label="Browser Launch Performance">
    </instrumentation>

 

 

将当前浏览器加到单元测试中

# am instrument -w com.android.Browser/android.test.InstrumentationTestRunner

运行某个TestCase:
# am instrument -w -e class com.android.BrowserTest.PopularUrlsTest com.android.Browser/android.test.InstrumentationTestRunner

运行一个TestCase中的某个功能:
adb shell am instrument -w -e class  com.android.BrowserTest.PopularUrlsTest#testStability com.android.Browser/android.test.InstrumentationTestRunner

同时测试多个TestCase:
#am instrument -w -e class com.android.BrowserTest.PopularUrlsTest,TestWebViewClient.java com.android.Browser/android.test.InstrumentationTestRunner

 

public class ApiDemosRunner extends InstrumentationTestRunner
{
     @Override
    public TestSuite getAllTests()
   {
        Log.i(”ApiDemosRunner”, “ApiDemosRunner::getAllTests()”);
       return new TestSuiteBuilder(ApiDemosRunner.class).includeAllPackagesUnderHere().build();
  }

  @Override
  public ClassLoader getLoader()
  {
      return ApiDemosRunner.class.getClassLoader();
   }

}


参考链接:http://blog.csdn.net/superkris/article/details/7973739

相关文章推荐

android am命令用法

一、概述 作为一名开发者,相信对adb指令一定不会陌生。那么在手机连接adb后,可通过am命令做很多操作: (1) 拨打电话10086 adb shell am start -a android...

Android am/pm命令用法

am命令的参数介绍:usage: am [subcommand] [options] start an Activity: am start [-D] -D: enable d...

android adb shell am常用命令

转自 http://blog.csdn.net/dull_boy2/article/details/23826649  Android测试中,经常需要kill掉应用程序。   网上有用方法...

android am & pm常用的一下命令

先说下am命令,am全称activity manager,你能使用am去模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等等。当你在adb shell命...

android adb am命令

在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命令行工具am. 用adb工具工作区里输入 am --help -----------------------...

android am命令

am命令作用:管理Activityusage: am [start|broadcast|instrument|profile] am start -D INTENT ...

android am 命令总结

Android在shell中提供了am命令来发送Intent,它的源码为位于frameworks/base/cmds/am. 它本身是用JAVA代码来实现的。 执行am命令其实是通过运行shell...

Android中通过system调用Am命令执行动作

Android中通过system调用Am命令执行动作 在底层代码中看到这样一条语句: system("/system/bin/sh -c \"am broadcast -a and...

Android adb shell am 命令介绍

详细介绍了Android Shell 中的am 命令

Android Am命令用法

一、概述 作为一名开发者,相信对adb指令一定不会陌生。那么在手机连接adb后,可通过am命令做很多操作:(1) 拨打电话10086adb shell am start -a android.int...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android am命令
举报原因:
原因补充:

(最多只允许输入30个字)