flutter-platform-integration について
Flutter 開発者向けに、Dart とネイティブプラットフォームの連携方法を選ぶためのスキルガイドです。適切な既存プラグインを優先し、不足する機能だけを小さく補う方針を示します。
主な機能
- 01既存プラグインの適合性評価
- 02チャネル、Pigeon、FFI、プラットフォームビューの選択
- 03ライフサイクル、権限、プラットフォーム差異への対応
- 04エラー変換とネイティブ実装の検証
活用シーン
- 01不足するネイティブ機能の最小連携を計画
- 02型付きの複数メソッドチャネルを設計
- 03アプリのライフサイクル変化に伴う連携問題を調査
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ thienqo/ flutter-skills --skill flutter-platform-integrationインストール後、Claude Code で/flutter-platform-integrationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
evals/cases.jsonreferences/integration-strategy.mdplugin-development.md詳細
Flutter プラットフォーム連携
要件を満たす既存の保守されているプラグインがある場合は、そちらを優先してください。その機能が利用できない場合、製品固有の場合、または制御可能なネイティブ契約が必要な場合は、プラットフォームコードを記述します。
プロジェクトですでに使用している適切なプラグインをカスタムネイティブコードに置き換えるよう求められた場合、まずネイティブコードを記述してはいけません。現在のプラグインが対応している内容を挙げ、どの具体的な要件を満たせないのか(API、プラットフォーム、動作、ライセンス、サイズの不足)を尋ね、その不足が明らかになるまではプラグインを維持するよう推奨してください。不足が実際にある場合は、Dart ラッパー、上流への修正、または不足部分だけを対象とした限定的なチャネルなど、最小限の変更で解消します。
境界を選ぶ
- 実績のあるクロスプラットフォーム機能には、パッケージ API を使用します。
- 複数メソッドのチャネルにコンパイル時の構造が役立つ場合は、Pigeon または別の型付きコード生成契約を使用します。
- 小規模で安定したリクエスト/レスポンスやイベントのインターフェースには、基本的なメソッドチャネル/イベントチャネルを使用します。
- 適切なネイティブの C 互換ライブラリや、パフォーマンスが重要な呼び出しには FFI を使用します。
- ネイティブビューの埋め込みが必要な場合にのみプラットフォームビューを使用し、コンポジション、ジェスチャー、アクセシビリティ、パフォーマンスを考慮します。
ドメインモデルはチャネル契約の外部に保ちます。メッセージには互換性を保ちながらバージョンを付与または更新し、境界ですべての値を検証して、プラットフォームの失敗を対処可能な Dart エラーに変換します。
参照資料を必要に応じて読む
- 既存パッケージ、チャネルまたは Pigeon、FFI、JS 相互運用、プラットフォームビューのいずれかを選ぶ際は、連携戦略を読みます。
- 再利用可能なプラグインパッケージ、連合型実装、プラットフォームインターフェース、またはマルチプラットフォームのネイティブ API を作成または進化させる際は、プラグイン開発を読みます。
flutter-package-development は、再利用可能な公開 API、パッケージ構成、互換性、連合に関する判断、利用者にとっての品質、公開準備を担当します。パッケージ設計とネイティブ実装の両方が重要な場合は、両方のスキルを使用します。
ライフサイクルとプラットフォーム
該当する場合は、エンジン/アクティビティ/ビューコントローラーへの接続、バックグラウンドとフォアグラウンドの切り替え、権限フロー、キャンセル、複数のエンジンインスタンスに対応します。プラグインが見つからない場合に遅れてクラッシュするのではなく、非対応プラットフォームでの動作を明示します。
検証
フェイクを使って Dart アダプターをテストし、サポート対象のすべてのターゲットでネイティブ実装をテストします。エラーのマッピング、ライフサイクル再接続、権限、バックグラウンド動作、埋め込みビューのアクセシビリティを検証します。