kotlin-android について
kotlin-android は、Jetpack ライブラリを使った Android 開発向けのスキルです。MVVM、Compose UI、型安全なナビゲーション、よくある問題のトラブルシューティングを扱います。
主な機能
- 01MVVM パターンの例
- 02Compose UI の例
- 03型安全なナビゲーション
- 04Compose の再コンポーズ問題の診断
- 05ViewModel 再生成問題の診断
活用シーン
- 01MVVM による Android アプリの構築
- 02Compose による UI 作成
- 03型安全なアプリナビゲーションの実装
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ pluginagentmarketplace/ custom-plugin-kotlin --skill kotlin-androidインストール後、Claude Code で/kotlin-androidを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/config.yamlschema.jsonreferences/GUIDE.mdPATTERNS.mdscripts/validate.py詳細
Kotlin Android スキル
Jetpack ライブラリを使った本番環境向けの Android 開発。
対応トピック
MVVM パターン
@HiltViewModel
class UserViewModel @Inject constructor(
private val repository: UserRepository
) : ViewModel() {
private val _uiState = MutableStateFlow(UiState())
val uiState = _uiState.asStateFlow()
fun load() = viewModelScope.launch {
_uiState.update { it.copy(isLoading = true) }
repository.getUsers()
.onSuccess { users -> _uiState.update { it.copy(users = users, isLoading = false) } }
}
}
Compose UI
@Composable
fun UserScreen(viewModel: UserViewModel = hiltViewModel()) {
val state by viewModel.uiState.collectAsStateWithLifecycle()
UserContent(state)
}
型安全なナビゲーション
@Serializable
data class ProfileRoute(val userId: String)
composable<ProfileRoute> { entry ->
val route: ProfileRoute = entry.toRoute()
}
トラブルシューティング
| 問題 | 解決策 |
|---|---|
| 再コンポジションのループ | クラスに @Stable を指定するか、derivedStateOf を使用します |
| ViewModel が再作成される | viewModel() ではなく hiltViewModel() を使用します |
使用方法
Skill("kotlin-android")
コメント
Markdown 対応