Android常见知识汇总
16lz
2021-12-04
Android常见知识汇总
1、Android常见设计模式
- 观察者模式
- 适配器模式
- 代理模式
- 工厂模式
- 单例模式
- 命令模式
相关博客
- Android 常用设计模式(一)
- Android常用设计模式(二)
- 14种常用设计模式
- 常用设计模式汇总
2、Android消息机制(Handler、Looper、Message、MessageQueue)
Android的消息机制主要是指Handler的运行机制,Handler的运行需要底层MessageQueue和Looper的支撑。MessageQueue是采用单链表的数据结构来存储消息列表。 Looper会以无限循环的形式去查看是否有新消息,如果有就处理消息,否则就一直等待。ThreadLocal可以在不同线程中互不干扰的存储并提供数据,通过ThreadLocal可以轻松的获取每个线程的Looper。
问题:
- Android中消息机制是如何工作的
- 子线程中可以直接new Handler嘛
- 了解HeadlerThread嘛
相关博客
- Android的消息机制
- Android中Thread、Handler、Looper、MessageQueue的原理分析
- Android HandlerThread 完全解析
3、Android动画
- Tween Animation(补间动画)
- Frame Animation(逐帧动画,也称Drawable Animation )
- Property Animation(属性动画)
知识
- 属性动画兼容库 NineOldAdroid
- 几种动画的区别
相关博客
- 官方文档
- Android动画,一篇就够
4、常见的内存泄漏、定位和优化方法
- 单例造成的内存泄漏
- 非静态内部类创建静态实例造成的内存泄漏
- Handler造成的内存泄漏
- 线程造成的内存泄漏
- 资源未关闭造成的内存泄漏
工具
1、leakcanary
2、Android Monitor
blog、文档
- Android性能优化之常见的内存泄漏
- 纪喜才:Android应用程序内存管理优化.pptx
- 常见的八种导致 APP 内存泄漏的问题
5、常用算法
- 冒泡算法
- 快速排序
- 归并排序
- 选择排序
- 堆排序
- 希尔排序
相关博客
- Java常见排序算法
- 必须知道的八大种排序算法【java实现】
- 视觉直观感受 7 种常用的排序算法
6、Android设计架构
- MVC
- MVP
- MVVM
相关博客
- Android App的设计架构:MVC,MVP,MVVM与架构经验谈
- 你对MVC、MVP、MVVM 三种组合模式分别有什么样的理解?
7、Android触摸事件
- 1、了解dispatchTouchEvent 、onTouchEvent 、onInterceptTouchEvent 等工作原理
- 2、了解Android Gesture
相关博客
- Android事件分发机制完全解析,带你从源码的角度彻底理解
- 图解 Android 事件分发机制
- Android 触摸及手势操作GestureDetector
8、Android自定义View
相关博客
- Android自定义View的实现方法,带你一步步深入了解View(三) 。
- Android 自定义View (一)
- 自定义View,有这一篇就够了
9、Dalvik、ART、JVM
Android runtime (ART)
ART才用ahead-of-time预编译功能,能够提升app的性能。而且ART也有比Dalvik更严格的安装时权限验证。
安装时,ART使用dex2oat
工具编译应用,这个工具能够接受DEX文件并生成可执行的机器码,ART可以很容易的编译有效的DEX文件,但是并不能像Dalvik一样可以容忍一下无效的DEX文件。
优势
- 提高GC的性能
- 提升开发与调试的效率
- 支持更多的调试功能
- 提供更详细的Exception和Crash诊断报告
相关博客
- Android 中的Dalvik和ART是什么,有啥区别
其他
- React Native
- Weex
- JNI
- Android JNI编程—JNI基础
常用第三方库
- RxJava、RxAndroid
- Retrofit
- OkHttp
- Glide
- GreenDao
- Butterknife
- Android Design
- Stetho(facebook提供数据库在线调试工具,配合chrome插件使用)
更多相关文章
- Android(安卓)网络编程 目录
- Android编程: MVC模式、应用的生命周期
- Android(安卓)UI设计技巧总结归纳
- android银行卡匹配、详情展开动画、仿爱奇艺视频拖拽、扫码识别
- Android(安卓)Activity 的四种启动模式 lunchMode 和 Intent.set
- [Android(安卓)实例教程] Android,谁动了我的内存
- 值得推荐的Android应用性能检测工具列表(转)
- Android深色模式适配-想法1.0
- Android(安卓)设置横屏模式显示