android-compose-xml-interoperability について
Jetpack ComposeとViewシステムを組み合わせる画面を扱うAndroid開発者向けのスキルです。段階的な移行と相互運用を、状態やアクセシビリティ、描画への配慮とともに案内します。
主な機能
- 01ComposeとViewの相互運用パターン
- 02段階的な移行のガイダンス
- 03状態と副作用の扱い方
- 04アクセシビリティと応答性の確認
- 05サンプルアプリでのエッジケース検証
活用シーン
- 01XML画面へのCompose UIの埋め込み
- 02ComposeからのView画面の表示
- 03段階的なCompose移行の計画
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ krutikjain/ android-agent-skills --skill android-compose-xml-interoperabilityインストール後、Claude Code で/android-compose-xml-interoperabilityを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/official-links.mdpatterns.mdscenarios.mdscripts/run_examples.sh詳細
Android Compose XML 相互運用
使用する場合
- 次のようなリクエストでこのスキルを使用します:フラグメント内の Compose、Compose 内の AndroidView、段階的な Compose への移行。
- 主な目的:段階的な移行、相互運用画面、テーマの共有において、Compose と View システムを安全に連携させます。
- 対象範囲が広がる場合は、次のスキルに引き継ぎます:
android-viewsystem-foundationsandroid-compose-foundations
ワークフロー
- 対象の画面が Compose、View システム、または両者を相互運用する画面のどれにあたるかを特定します。
- レスポンシブ対応、アクセシビリティ、パフォーマンスの要件を満たす中で、最も手軽な UI パターンを選択します。
- 安定した状態、明示的な副作用、再利用可能なデザイントークンを基盤に UI を構築します。
- フィクスチャアプリで、長いテキスト、フォントの拡大、RTL、幅の狭いデバイスなどのエッジケースを検証します。
- 引き継ぎの前に、ユニットテスト、UI テスト、スクリーンショットによる確認に適したチェックで検証します。
ガードレール
- アニメーションや抽象化を追加する前に、安定した状態と予測可能なレンダリングを優先します。
- アクセシビリティのセマンティクス、コントラスト、フォーカス順序、タッチターゲットのガイダンスを標準で遵守します。
- 明確な相互運用の境界を設けずに、Compose と View システムの所有範囲を混在させないでください。
- 時期尚早なマイクロ最適化ではなく、計測に基づいたパフォーマンス改善を優先します。
アンチパターン
- ナビゲーションやビジネスロジックをリーフ UI コンポーネントに直接埋め込む。
- ローカライズや動的テキストで崩れる固定サイズを使用する。
- セマンティクスを無視し、視覚的な変更のみを通知する。
- メンタルモデルを適応させずに、XML のパターンをそのまま Compose に移植する。
例
基本的なケース
- シナリオ:所有範囲が曖昧にならないように、XML フィクスチャ内に Compose のタスク概要を埋め込みます。
- コマンド:
cd examples/orbittasks-xml && ./gradlew :app:assembleDebug
エッジケース
- シナリオ:段階的な移行中に、Compose のエントリーポイントから View ベースの画面をホストします。
- コマンド:
cd examples/orbittasks-compose && ./gradlew :app:assembleDebug
失敗からの復旧
- シナリオ:相互運用に関するプロンプトを、純粋な View または純粋な Compose のリクエストと分けます。
- コマンド:
python3 scripts/eval_triggers.py --skill android-compose-xml-interoperability
完了チェックリスト
- 実装パスが明確かつ最小限で、適切な Android の画面に対応しています。
- 関連するサンプルコマンドとベンチマーク用プロンプトを実行するか、更新しています。
- リクエストが境界をまたぐ場合、関連するスキルへの引き継ぎを文書化しています。
- 選択したパターンと、主な移行またはトラブルシューティングの手順を公式リファレンスで確認しています。
公式リファレンス
コメント
Markdown 対応