activity生命周期的基本介绍

(1)比如我们不想在屏幕旋转时重建Activity,那么就可以指定android:configChanges =“orientation”。(2)其中用的比较多的另两个属性为locale,keyboardHidden。前者为设备的本地位置发生了改变,一般指切换了系统语言。后者一般指用户调出了键盘。(3)屏幕尺寸属性和smallestScreenSize属性比较特殊,他们是API13时添加的。分别表示的情况为屏幕尺寸发生变化和切换到外部显示设备时若机器人:.configChanges =“取向|屏幕尺寸”,那么在分以及目标均低于13时,不会导致重启,否则导致活动重启在不重建时,系统没有调用的onSaveInstanceState以及onRestoreInstanceState方法,而是调用了onConfigurationChanged方法。(4)Android4.2增加了一个的的的的的layoutDirection属性,当改变语言设置后,该属性也会成NEWCONFIG中的一个掩蔽位。所以ActivityManagerService(实际在ActivityStack)在决定是 启动的时候总是判断为重启需要在安卓.configChanges中同时添加的语言环境和的的的layoutDirection在不退出应用的情况下切换到设置里切换语言,发现该活动还是重启了_* 3.Android为什么要设计一个生命周期呢*_

谷歌官方文档解释说,确保提供一个流畅的用户体验,在活动切换时,以及你的活动意外销毁的情况下,保存好活动状态。(1)你正在编辑信息,这个时候跳出来一个透明提示框,进入了暂停状态,你想再次回到这个活动,当你按HOME退出一个应用时,或者从你的再次回到这个活动时看到你编辑到一半的信息,就需要在的的的的onPause( )回调方法中来执行这些操作。一个应用进入了另一个应用,这个时候之前那活性就变得完全不可见了,进入了停止状态,那么它就应该把它大多数的资源都释放出来了。所以这个时候(3)当你接完一个电话,再次回到之前那个活动,它就从停止状态变成了续状态,这个时候你肯定希望它记录住了你离开时的状态,比如说编辑了一半的信息,正停留在新闻1/3的位置。那么个时候,你就需要在onRestart()或者在调用调用ONS 挞(调方法中来执行这些操作。所以综上所述,之所以会设计出不同的生命周期状态,以及各状态间转换时的回调方法,就是为了适应用户使用过程中的不同场景,进而在特定的场景活动完成特定的事情,以此来确保提供一个流畅的用户体验。* 4.Activity的生命周期是由谁控制的* ActivityManagerService是负责管理Activity的生命周期的.ActivityManagerService是一个非常重要的接口,它不但不负责启动活动和服务,还负责管理活动和服务。
作者:郭建国
原文链接:点击这里

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

最后说一下我的学习路线

其实很简单就下面这张图,含概了Android所有需要学的知识点,一共8大板块:

  1. 架构师筑基必备技能
  2. Android框架体系架构(高级UI+FrameWork源码)
  3. 360°Androidapp全方位性能调优
  4. 设计思想解读开源框架
  5. NDK模块开发
  6. 移动架构师专题项目实战环节
  7. 移动架构师不可不学习微信小程序
  8. 混合开发的flutter

Android学习的资料

我呢,把上面八大板块的分支都系统的做了一份学习系统的资料和视频,大概就下面这些,我就不全部写出来了,不然太长了影响大家的阅读。

330页PDF Android学习核心笔记(内含上面8大板块)

Android学习的系统对应视频

总结

我希望通过我自己的学习方法来帮助大家去提升技术:

  • 1、多看书、看源码和做项目,平时多种总结

  • 2、不能停留在一些基本api的使用上,应该往更深层次的方向去研究,比如activity、view的内部运行机制,比如Android内存优化,比如aidl,比如JNI等,并不仅仅停留在会用,而要通过阅读源码,理解其实现原理

  • 3、同时对架构是有一定要求的,架构是抽象的,但是设计模式是具体的,所以一定要加强下设计模式的学习

  • 4、android的方向也很多,高级UI,移动架构师,数据结构与算法和音视频FFMpeg解码,如果你对其中一项比较感兴趣,就大胆的进阶吧!

希望大家多多点赞,转发,评论加关注,你们的支持就是我继续下去的动力!加油!

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

讲义》点击传送门即可获取!**

  • 27
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值