安卓开发---写项目的注意事项

架构设计

采用分层架构:清晰分离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

用来注册四大组件,和添加声明权限。

活动的生存周期

碎片的声明周期

服务的声明周期

相关推荐
dalancon1 小时前
VSYNC 信号流程分析 (Android 14)
android
dalancon1 小时前
VSYNC 信号完整流程2
android
dalancon1 小时前
SurfaceFlinger 上帧后 releaseBuffer 完整流程分析
android
用户69371750013842 小时前
不卷AI速度,我卷自己的从容——北京程序员手记
android·前端·人工智能
程序员Android3 小时前
Android 刷新一帧流程trace拆解
android
墨狂之逸才3 小时前
解决 Android/Gradle 编译报错:Comparison method violates its general contract!
android
阿明的小蝴蝶4 小时前
记一次Gradle环境的编译问题与解决
android·前端·gradle
汪海游龙4 小时前
开源项目 Trending AI 招募 Google Play 内测人员(12 名)
android·github
qq_283720055 小时前
MySQL技巧(四): EXPLAIN 关键参数详细解释
android·adb
没有了遇见6 小时前
Android 架构之网络框架多域名配置<三>
android