架构设计
采用分层架构:清晰分离UI、Domain、Data层
模块化拆分:按功能拆分为独立模块,提高编译速度和团队协作效率
避免内存泄漏,图片加载优化:Glide/Picasso的合理配置,生命周期感知
项目架构
在 Android 开发中,资源文件(colors、dimens、strings、styles)是应用设计和多语言/多设备适配的核心工具。在安卓开发中Value文件夹下colors,dimens,strings,styles的作用
colors.xml(颜色资源)
统一管理颜色:避免硬编码颜色值
dimens.xml(尺寸资源)
适配不同屏幕:分离尺寸定义与布局文件
strings.xml(字符串资源)
避免硬编码文本
styles.xml(样式资源)
统一按钮、文本等控件的视觉风格
menu存放项目菜单菜单
mipmap专门放图片,系统级优化:自动适配不同屏幕密度,避免图标模糊
res/
mipmap-ldpi/ # 低密度(已废弃)
mipmap-mdpi/ # 中等密度
mipmap-hdpi/ # 高密度
mipmap-xhdpi/ # 超高密度
mipmap-xxhdpi/ # 超超高密度
mipmap-xxxhdpi/ # 最高密度(主要用于应用商店展示)
mipmap-anydpi/ # 矢量图标(Android 8.0+)
drawable通用图形资源
存放所有非图标图形资源:
按钮背景、界面装饰元素、状态选择器(如按下状态)、矢量图形(SVG转换的XML)
assets资产文件
大量文件/文件夹结构,需文件名路径访问
raw原始文件
通过R资源ID访问,文件会被原样打包(不编译),适合音频、视频、数据库等二进制文件,一般用于小文件
MyApplication类
在AndroidManifest.xml里面的application里面加上android:name=".MyApplication"。告诉系统MyApplication是应用的全局入口点,继承自 android.app.Application它会在应用启动时最先初始化
Caches
caches类是一个轻量级的数据持久化管理工具,封装成一个工具类有利于所有SharedPreferences操作自动处理线程同步,降低程序的耦合性。
build.gradle.kts用来放置依赖
AndroidManifest.xml
用来注册四大组件,和添加声明权限。
活动的生存周期


碎片的声明周期



服务的声明周期

