1. Android Studio项目结构深度解析
作为一名从2013年就开始接触Android开发的老兵,我见过太多新手在刚接触Android Studio时被复杂的目录结构搞得晕头转向。今天我就带大家彻底拆解这个开发环境,让你从第一行代码开始就建立清晰的工程认知。
1.1 核心模块解剖
先看最关键的app模块,这是你90%的开发工作发生的地方:
bash复制app/
├── src/
│ ├── main/
│ │ ├── java/ # 你的战场:Kotlin/Java代码
│ │ ├── res/ # 资源武器库
│ │ │ ├── layout/ # XML布局文件
│ │ │ ├── drawable/# 图片资源
│ │ │ ├── values/ # 字符串/颜色等配置
│ │ │ └── mipmap/ # 应用图标
│ │ └── AndroidManifest.xml # 应用身份证
├── build/ # 编译产物
└── build.gradle # 模块构建配置
这里有个实战经验:永远不要手动修改build目录!这是Gradle自动生成的,你改完下次编译就会被覆盖。我见过有新手在这里改APK签名结果浪费了半天时间。
1.2 资源文件管理艺术
res目录的资源命名有个潜规则:必须全小写+下划线。比如ic_launcher.png是对的,iconLauncher.png就会导致编译失败。这是Android的资源系统限制,不是IDE的问题。
values目录下的文件组织也有讲究:
strings.xml:所有文本内容colors.xml:颜色值定义dimens.xml:尺寸定义styles.xml:主题样式
经验之谈:永远不要在布局文件里写死字符串或尺寸!一定要引用资源文件。这样后续做多语言适配时你会感谢自己的这个习惯。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Android开发基础核心概念
2.1 Activity生命周期实战
Activity是Android的"页面"概念,它的生命周期是面试必考题。但纸上谈兵没用,我们来看实际场景:
kotlin复制class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) // 必须调用父类!
setContentView(R.layout.activity_main)
// 这里初始化UI和数据
Log.d("Lifecycle", "onCreate")
}
override fun onStart() {
super.onStart()
// Activity可见但未获得焦点
Log.d("Lifecycle", "onStart")
}
override fun onResume() {
super.onResume()
// Activity获得焦点,可以交互
Log.d("Lifecycle", "onResume")
}
// 其他生命周期方法...
}
常见坑点:
- 忘记调用
super.onCreate()会导致崩溃 - 在
onCreate()里执行耗时操作会导致界面卡顿
