1.1 平台概览
- Android 基于 Linux 内核,应用层主要使用 Kotlin/Java 开发。
- 核心系统组件:Activity、Service、BroadcastReceiver、ContentProvider。
1.2 应用结构与模块
app 模块为应用入口,可按功能拆分子模块(如 feature-xxx)。
- 现代实践:MVVM 架构、Jetpack 组件(Lifecycle、ViewModel、LiveData/Flow、Navigation)。
1.3 四大组件简介
- Activity:界面与交互入口。
- Fragment:可复用的界面片段,配合 Navigation 管理。
- Service:长期后台任务(前台服务需通知)。
- BroadcastReceiver:系统或应用广播事件接收。
1.4 AndroidManifest 与权限
<manifest package="com.example.app">
<application>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.INTERNET" />
</manifest>
1.5 现代架构示例(MVVM)
class MainViewModel: ViewModel() {
private val _text = MutableStateFlow("Hello")
val text: StateFlow<String> = _text
}
class MainActivity: AppCompatActivity() {
private val vm: MainViewModel by viewModels()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
lifecycleScope.launchWhenStarted {
vm.text.collect { findViewById<TextView>(R.id.tvHello).text = it }
}
}
}