seq 1 100` > do > adb shell am force-stop com.android.samples.mytest > sleep 1 > adb shell am start-activity 更具体地说,adb shell 提供了用于启动应用的命令行界面: adb shell am start-activity。 这是完整的启动命令: $ adb shell am start-activity -W -n com.android.samples.mytest/.MainActivity 最后一个参数是应用的包名与组件信息 为了将上面的输出转换为启动持续时间,我使用 grep 和 cut shell 命令来输出内容 (有多种方法可以执行此操作,我只是随机选择了其中一个): adb shell am start-activity 注意 : 以上操作其实有更简单的方式,您可以使用 -S (用于首先停止 Activity) 和 -R COUNT (用于执行 start-activity 命令 COUNT 次) 来循环启动 Activity
关于代码,请参考Github 参考 https://developer.android.com/training/transitions/start-activity?
ActivityThread.handleResumeActivity AMP.activityResumed AMS.activityResumed(AMS进程) 参考文章 http://gityuan.com/2016/03/12/start-activity
ActivityThread.handleResumeActivity AMP.activityResumed AMS.activityResumed(AMS进程) 参考文章 http://gityuan.com/2016/03/12/start-activity
二、startActivity的流程图 下图是来自Gityuan在《startActivity启动过程分析》(https://gityuan.com/2016/03/12/start-activity/
在 adb shell 中可以通过 am start-activity 去打开指定的 Activity,通过指定 Intent 去进行启动: am start-activity [-D] [-N] [- shell 中同样提供了 start-activity 命令来方便启动服务: am start-service [--user <USER_ID> | current] <INTENT> 下面来介绍一些
https://developer.android.google.cn/training/transitions/start-activity Transition框架的一个重要使用场景,就是Activity