Agent Skills
› cosmicstack-labs/mercury-agent-skills
› android-kotlin-patterns
android-kotlin-patterns
GitHub提供现代Android开发最佳实践,涵盖Jetpack Compose、MVVM、Hilt依赖注入、Room数据库及协程。包含标准项目结构、Compose状态提升与性能优化技巧,以及Play Store上架前的合规与安全配置指南。
Trigger Scenarios
需要搭建Android MVVM架构
使用Jetpack Compose开发UI
集成Hilt进行依赖注入
准备应用上架Google Play
Install
npx skills add cosmicstack-labs/mercury-agent-skills --skill android-kotlin-patterns -g -y
SKILL.md
Frontmatter
{
"name": "android-kotlin-patterns",
"metadata": {
"tags": [
"android",
"kotlin",
"jetpack-compose",
"mobile",
"google"
],
"author": "cosmicstack-labs",
"version": "1.0.0",
"category": "mobile"
},
"description": "Jetpack Compose, MVVM, Room, Coroutines, DI with Dagger\/Hilt, and Play Store submission"
}
Android Kotlin Patterns
Production Android development with Kotlin and Jetpack.
Architecture (Modern Android Dev)
Recommended Stack
- UI: Jetpack Compose with Material 3
- State: ViewModel + StateFlow
- DI: Hilt/Dagger
- DB: Room
- Network: Retrofit + OkHttp
- Async: Coroutines + Flow
- Navigation: Compose Navigation
Project Structure
app/
├── data/
│ ├── local/ (Room DAOs, entities)
│ ├── remote/ (Retrofit APIs, DTOs)
│ └── repository/
├── domain/
│ ├── model/
│ └── usecase/
├── ui/
│ ├── components/
│ ├── screens/
│ └── theme/
└── di/ (Hilt modules)
Jetpack Compose Patterns
State Hoisting
// State flows down, events flow up
@Composable
fun CounterScreen(viewModel: CounterViewModel = hiltViewModel()) {
val state by viewModel.state.collectAsStateWithLifecycle()
CounterContent(
count = state.count,
onIncrement = viewModel::increment
)
}
Performance
- Use
rememberandderivedStateOffor computations LazyColumnfor lists, notColumnwith scrolling- Stable types via
@Immutable/@Stableannotations
Play Store Submission
- Privacy Policy URL set
- App signing key backed up
- In-app reviews integrated
- Crash reporting (Firebase)
- proguard-rules.pro configured
- App bundles (.aab) for distribution
Version History
- 38e2523 Current 2026-07-05 19:40


