您的位置:首页 > 移动开发 > Android开发

Android 通过命令行启动Activity

2016-06-06 22:23 337 查看
通过am命令可以启动任何一个activity,如果启动Main Activity就等于是启动了相应的apk

am 命令代码位置:frameworks\base\cmds\am\src\com\android\commands\am

使用 am -help 可以查看该命令详细的用法,以下是截取的部分常用用法:

     am start: start an Activity.  Options are:

    -D: enable debugging

    -W: wait for launch to complete

    --start-profiler <FILE>: start profiler and send results to <FILE>

    --sampling INTERVAL: use sample profiling with INTERVAL microseconds  between samples (use with --start-profiler)

    -P <FILE>: like above, but profiling stops when app goes idle

    -R: repeat the activity launch <COUNT> times.  Prior to each repeat, the top activity will be finished.

    -S: force stop the target app before starting the activity

    --opengl-trace: enable tracing of OpenGL functions

    --user <USER_ID> | current: Specify which user to run as; if not specified then run as the current user.

     am startservice: start a Service.  Options are:

            --user <USER_ID> | current: Specify which user to run as; if not  specified then run as the current user.

     am stopservice: stop a Service.  Options are:

            --user <USER_ID> | current: Specify which user to run as; if not specified then run as the current user.

     am force-stop: force stop everything associated with <PACKAGE>.

            --user <USER_ID> | all | current: Specify user to force stop;  all users if not specified.

     am kill: Kill all processes associated with <PACKAGE>.  Only kills.

           processes that are safe to kill -- that is, will not impact the user experience.

           --user <USER_ID> | all | current: Specify user whose processes to kill; all users if not specified.

     am kill-all: Kill all background processes.

     am broadcast: send a broadcast Intent.  Options are:

           --user <USER_ID> | all | current: Specify which user to send to; if not specified then send to all users.

           --receiver-permission <PERMISSION>: Require receiver to hold permission.

1. 启动一个指定的组件

[b]命令: am start  -n <COMPONENT>    
[/b]

adb shell am start -n 包名 / 包含包名的Activity 或者service

Camera(照相机)的启动:

adb shell am start -n com.android.camera/com.android.camera.Camera
Browser(浏览器)的启动:

adb shell am start -n com.android.browser/com.android.browser.BrowserActivity


2. 使用Action隐式的启动

按照指定的地址启动浏览器:

adb shell am start -a android.intent.action.VIEW -d  http://www.baidu.cn/[/code] 
拨打电话 :

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

3. 启动一个服务service

am startservice -n com.android.music/com.android.music.MediaService

4. 发送一个广播

am broadcast -a
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: