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

架构设计

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

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

活动的生存周期

碎片的声明周期

服务的声明周期

相关推荐
好的佩奇4 小时前
蓝牙之通信架构
android·flutter·蓝牙
FlightYe4 小时前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
诸神黄昏EX5 小时前
Android fw BatteryService
android
alexhilton5 小时前
提升 Android Compose 页面的流畅度
android·kotlin·android jetpack
撩得Android一次心动7 小时前
Android中Gradle网络下载超时、更改存放位置(解决方案)
android·gradle
HQL_seven8 小时前
【Activity】Android Activity详解
android
AI2中文网8 小时前
安卓 15/16 手机软键盘遮挡输入框、布局顶不上去?已解决:重新编译即可
android·智能手机
字节暗面8 小时前
Android APP 加固横评记录:爱加密、梆梆、网易易盾与腾讯 ACE
android·逆向工程·加固
落魄Android在线炒饭9 小时前
Android 实战问题反推 OpenGL 概念(上)
android·opengl
booboosui9 小时前
DeepSeek 的 Worker 调得动 GitHub,调不动微信:三类 Worker 的实现差别
android