欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android APP 架构设计集合

程序员文章站 2022-04-22 20:49:44
注解处理器数据存储--MMKV使用及原理数据存储--room使用RxAndroid的使用方式自定义类加载器加载加密类文件Android动态化框架App BundlesMVC、MVP、MVVM混合开发及Android WebView应用Android屏幕适配全方位解析Android中的Apk的加固(加壳)原理解析和实现Android 中使用AOPAndroid Studio编译过程其它安卓APP架构设计对移动端架构的思考...

注解处理器

Android运行时注解的使用 https://www.jianshu.com/p/de13b00042d6
Android编译时注解的使用 https://www.jianshu.com/p/3052fa51ee95

数据存储–MMKV使用及原理

https://blog.csdn.net/CSqingchen/article/details/106344399
https://github.com/Tencent/MMKV/wiki/android_tutorial_cn

数据存储–room使用

https://developer.android.com/training/data-storage/room
https://www.jianshu.com/p/3e358eb9ac43

RxAndroid的使用方式

http://www.jianshu.com/p/031745744bfa

1 什么是响应式编程
2 什么是observable
3 如何将异步事件比如按钮点击或者EditText字符变化转换成observables
4 observable变换
5 observable 过滤拦截
6 如何指定链式中的代码执行线程
7 如何合并多个observables

自定义类加载器加载加密类文件

https://blog.csdn.net/Android_SE/article/details/89923908


Android动态化框架App Bundles

App 动态化框架(即Android App Bundle,缩写为AAB),AAB是借助Split Apk完成动态加载,使用AAB动态下发方式,可以大幅度减少应用体积
https://www.jianshu.com/p/57cccc680bb6


MVC、MVP、MVVM

类型 创建过程 A/F 特点 缺点 应用建议
MVC C->M + V C 分离了Model和Controller Controller变得越来越复杂 简单的、不大修改的页面
MVP V -> P -> M V 在MVC的基础上通过Interface彻底分离了View和Model Presenter与View的交互会琐碎而复杂 核心、复杂、需求变更快页面
MVVM V -> VM -> M V 在MVP的基础上增加了Data Binding, 代码量更小 XML中包含代码 核心、复杂、需求变更快页面

Jetpack-MVVM-Best-Practice(Jetpack MVVM 最佳实践)
https://github.com/KunMinX/Jetpack-MVVM-Best-Practice


混合开发及Android WebView应用

混合开发涉及到的知识点主要包括:

  1. APP调用WebView加载url
  2. 掌握WebView的封装,了解所有的WebSettings配置,掌握WebViewClient、WebChromeClient
  3. 掌握WebView和Native双向通信机制,会自己封装双向通信中间件

对WebView的封装可参考:
GitHub:AgentWeb

对通信中间件原理理解:
GitHub:webprogress


Android屏幕适配全方位解析


Android中的Apk的加固(加壳)原理解析和实现

https://blog.csdn.net/zcmain/article/details/72887439


Android 中使用AOP

https://www.jianshu.com/p/83c46664b507


Android Studio编译过程

其中使用到的编译工具:
aapt、aidl、Java Compiler、dex、 zipalign

  1. 通过aapt打包res资源文件,生成R.java、resources.arsc和res文件(二进制 & 非二进制如res/raw和pic保持原样)
  2. 处理.aidl文件,生成对应的Java接口文件
  3. 通过Java Compiler编译R.java、Java接口文件、Java源文件,生成.class文件
  4. 通过dex命令,将.class文件和第三方库中的.class文件处理生成classes.dex
  5. 通过apkbuilder工具,将aapt生成的resources.arsc和res文件、assets文件和classes.dex一起打包生成apk
  6. 通过Jarsigner工具,对上面的apk进行debug或release签名
  7. 通过zipalign工具,将签名后的apk进行对齐处理。

Android APP 架构设计集合

Android APP 架构设计集合


其它安卓APP架构设计


对移动端架构的思考

  • MVC模式 优缺点
  • MVP模式 优缺点
  • MVVM模式 优缺点
  • CLEAN模式 优缺点
  • 组件化开发
  • 跨平台开发:Flutter、ReactNative 对比(RN未来要黄,了解一下就好)
    原文:https://mp.weixin.qq.com/s/OEzcsPZHCVkjeUCh6hMuWg

参考自:

  1. Android 开发有什么好的架构么?@知乎

相关系列文章推荐


本文地址:https://blog.csdn.net/CSqingchen/article/details/106355327