mcpField
A
android-viewsystem-foundations

android-viewsystem-foundations

github.com/krutikjain開発1476 回インストール31 週間前に更新
リポジトリ

android-viewsystem-foundations について

XML レイアウト、Fragment、RecyclerView、バインディングのライフサイクルを扱う Android 開発スキルです。従来の View システムの所有権と描画に重点を置き、Compose 連携や UI テストの深掘りが必要な場合は引き継ぎます。

主な機能

  1. 01XML と ConstraintLayout の指針
  2. 02Fragment とビューのライフサイクル管理
  3. 03ViewBinding と DataBinding のパターン
  4. 04RecyclerView と描画の問題修正
  5. 05構成変更と文字サイズの確認

活用シーン

  1. 01XML レイアウトの問題解決
  2. 02Fragment 再生成時のバインディング参照の修正
  3. 03RecyclerView や長文表示の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/krutikjain/android-agent-skills --skill android-viewsystem-foundations

インストール後、Claude Code で/android-viewsystem-foundationsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
official-links.md
patterns.md
scenarios.md
scripts/
run_examples.sh

詳細

Android ViewSystem の基礎

使用する場面

  • 次のようなリクエストでこのスキルを使用します:XML レイアウトの Android の問題、Android の Fragment ライフサイクル、ConstraintLayout の整理。
  • 主な成果:XML レイアウト、ConstraintLayout、Fragment、ViewBinding、DataBinding、および従来の Android UI ライフサイクルパターンに対応します。
  • 主な対象が Compose 優先の UI ではなく、XML、Fragment、RecyclerView、またはバインディングのライフサイクル作業である場合に、このスキルを使用します。
  • 対象範囲が広がる場合は、次のスキルに引き継ぎます:
  • android-compose-xml-interoperability
  • android-testing-ui

ワークフロー

  1. 対象の画面が Fragment、Activity、カスタムビュー、RecyclerView、または Compose と View の相互運用が混在する画面のいずれであるかを特定します。
  2. 所有関係を適切に設定します。ビューのバインディングはビューのライフサイクルに、アダプターは明示的なアイテムモデルに紐付け、ナビゲーションやトランザクションは子ビューの外で扱います。
  3. レイアウトや描画の問題は、まず従来の View ツールで解決します。ConstraintLayout、RecyclerView の差分更新、ウィンドウインセット、バインディングの安全な更新を活用します。
  4. 変更を完了とする前に、Fragment の再生成、長いテキスト、フォントスケール、RTL、プロセスライフサイクルの境界ケースを確認します。
  5. View システムの所有モデルが安定してから、Compose との相互運用や UI テストの詳細を関連スキルに引き継ぎます。

ガードレール

  • アニメーションや抽象化を追加する前に、状態の安定性と予測可能な描画を優先します。
  • アクセシビリティのセマンティクス、コントラスト、フォーカス順、タッチターゲットのガイダンスを標準で遵守します。
  • 明確な相互運用の境界なしに、Compose と View システムの所有関係を混在させないでください。
  • 早すぎるマイクロ最適化より、計測に基づいたパフォーマンス改善を優先します。
  • Fragment のビューが破棄されたら ViewBinding の参照をクリアし、ビューのライフサイクルを越えてビュー参照を保持しないでください。

アンチパターン

  • ナビゲーションやビジネスロジックを子 UI コンポーネントに直接埋め込む。
  • ローカライズや動的テキストで崩れる固定サイズを使用する。
  • セマンティクスを無視し、視覚的な変更だけを通知する。
  • メンタルモデルを適応させずに、XML のパターンをそのまま Compose に移植する。
  • ビューの再生成後も古いバインディング、ビュー参照、アダプターで Fragment のビュー状態を保持する。

例

期待どおりのケース
  • シナリオ:ViewBinding と Fragment に安全な明示的パターンを使って、XML の OrbitTasks 画面を改善します。
  • コマンド:cd examples/orbittasks-xml && ./gradlew :app:testDebugUnitTest
エッジケース
  • シナリオ:従来のレイアウトで、構成変更、ビューのライフサイクル、長いコンテンツに対応します。
  • コマンド:cd examples/orbittasks-xml && ./gradlew :app:connectedDebugAndroidTest
障害からの復旧
  • シナリオ:XML や Fragment のリクエストが Compose 優先のスキルに振り分けられないようにします。
  • コマンド:python3 scripts/eval_triggers.py --skill android-viewsystem-foundations

完了チェックリスト

  • 実装方針が明確かつ最小限で、適切な Android の対象に紐付いています。
  • 関連するサンプルコマンドとベンチマーク用プロンプトを実行または更新しました。
  • リクエストが境界をまたぐ場合は、関連スキルへの引き継ぎを記載しています。
  • 選択したパターンと、主な移行またはトラブルシューティングの手順を公式リファレンスで確認できます。

公式リファレンス

コメント