OSC源码学习随笔.2
来源:互联网 发布:淘宝上的天王表是正品 编辑:程序博客网 时间:2024/05/23 20:07
研究 application 时,联想到实际项目中重复登录需要实时结束 activity 的情况
在OSC中,监听到程序发出的全局退出广播后,程序有专门的 activity 堆栈管理类 AppManager,BaseActivity 中 调用 AppManager.getAppManager().addActivity(),在需要时 AppManager.getAppManager().AppExit() 即可。不使用堆栈,在 BaseActivity 注册广播,接收到后直接 finish() 貌似是更好的选择,不用理会每个 activity 中的业务也不会造成内存的溢出
为了弥补没有使用抽象父类的项目结构,也可以在自己项目的 application 里声明 List<Activity>,但同样需要在每个 activity 里手动的 getApplicationContext().add 或者 getApplicationContext().remove 操作集合,最后在程序结束或者需要全局退出时仍然通过 getApplicationContext() 取得 application 再遍历 List,然后 finish() 掉即可。在整个应用的生命周期中维护一个List,极易产生内存堆积,处理不好就是内存溢出
BaseActivity:
定义统一 Dialog、ActionBar、注册 activity 堆栈等操作。实际项目中如上所述,可以注册广播监听、网络判断、吐司……
还能通过抽象 activity 的接口,让基类(BaseActivity)去实现接口更多的方法以降低耦合。类似开启服务、检查GPS、获取上下文以及 sharedpreferences 配置
- OSC源码学习随笔.2
- OSC源码学习随笔.1
- 源码编译git@osc
- GIT@OSC源码分析之发现界面(2)
- git-osc-android客户端之源码分析2
- jquery源码学习笔记随笔
- osc
- opengl学习随笔2
- 英语学习随笔(2)
- Linux学习随笔(2)
- 暑假学习随笔2
- JAVA学习随笔2
- jmeter学习随笔2
- spring学习随笔2
- 从 Git@OSC 下载 Smart 源码
- Node.Js 学习随笔2
- 安卓学习随笔(2)
- android 源码 Music 学习过程(随笔版)(ing)
- 实现自定义actionbar背景透明度的变化
- Xcode中的快捷键总结
- Docker+Nginx+tomcat实现一个服务器上多个tomcat的负载均衡
- 剑指offer:表示数值的字符串
- 获取Android手机CPU类型 ARM、ARMV7、NEON
- OSC源码学习随笔.2
- vim配置文件
- 文章标题
- memcache PHP扩展安装配置
- 内建模块-collections
- 199. Binary Tree Right Side View
- tabbar颜色修改
- PHP绑定手机
- 设计模式六大原则