快来围观啦~听说Android有四大法宝!

2017-12-12   出处: 搜狗测试  作/译者: Pengyue

哈喽,艾瑞巴蒂,小编又在一个新的周二和大家见面了,古代有四大发明术:造纸术、指南针、火药、活字印刷术,亚洲有四大邪术:泰国变性术、韩国整容术、日本化妆术、中国PS术,那Android 的四大组件有多少同学知道呢?和小编一起探索下吧~

什么是Activity?

Activity是Android一个非常重要的用户接口(四大组件之一),是可见的,主要是用户和应用程序之间进行交互的接口。在每个Activity中都可以放很多控件,所以也可以把Activity看作控件的容器。

什么是生命周期?

  • onCreate:主要执行初始化工作,比如用setContentView加载布局界面

  • onStart:Activity由不可见变为可见,但是不在前台,不可以与用户进行交互

  • onResume:使Activity位于返回栈的顶端,并出现在前台,可与用户进行交互

  • onRestart:Activity的重启,由不可见变为可见

  • onPause:表明Activity正在停止,正常情况下onStop会紧接着调用。但是也有特殊情况,若这个时候需要快速的挥刀当前Activity,那么onResume也会被调用。这个方法的执行一定要快,不然会影响栈顶的Activity的使用。

  • onStop:Activity由部分不可见变为完全不可见,可做一些重量级的回收工作,同样不能很耗时。

  • onDestory:销毁Activity并释放资源。 
    其中onCreate和onDestory为完整的生命周期,onStart和onStop为可见生命周期,onResume和onPause为前台生命周期。

ADB查看运行的Activity生命周期
打开APP

点击访问新闻详情页面

Ps:通过运行adb命令可以清晰的看到一个APP在运行过程中Activity的生命周期,以”今日热点头条”APP为例,通过上图我们可以看到,首先Runing Activites是.MainActivity,当我点击Item后跳转页面时,分别运行新的Activity:mResumedActivity:.mainUI.WebActivity,暂停上一个Activity,mLastPause:.MainActivity。

踩过的坑?

  • 问题现象:

当两个Activity重叠显示,测试时发现在上层Activity进行滑动操作时,下层的Activity却响应了这个事件。

  • 分析原因:

第一个Activity执行onCreate()->onStart()->onResume后,当第二个Activity弹出后第一个Activity执行了onPause()方法,未执行onStop()方法,所以在上层Activity执行滑动操作时,下层的Activity会响应。

小编互动环节:

各位Tester在工作中是不是也遇到过类似情况,欢迎留言讨论昂~

福利(各种测试方法、测试工具应有尽有)


声明:本文为本站编辑转载,文章版权归原作者所有。文章内容为作者个人观点,本站只提供转载参考(依行业惯例严格标明出处和作译者),目的在于传递更多专业信息,普惠测试相关从业者,开源分享,推动行业交流和进步。 如涉及作品内容、版权和其它问题,请原作者及时与本站联系(QQ:1017718740),我们将第一时间进行处理。本站拥有对此声明的最终解释权!欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,与我们的编辑和其他窝友交流。
291° /2917 人阅读/0 条评论 发表评论

登录 后发表评论