mcpField
A
android-serialization-offline-sync

android-serialization-offline-sync

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

android-serialization-offline-sync について

Android 開発者向けに、シリアライズ、キャッシュ、競合処理、オフライン優先の同期を扱うスキルです。型付きモデルとデータの永続性を重視し、再試行やプロセス終了後の動作も検証します。

主な機能

  1. 01シリアライズとオフライン同期の調整
  2. 02データ契約とモデルマッピングの定義
  3. 03キャッシュとデータ競合の処理
  4. 04再試行とプロセス終了時の動作検証

活用シーン

  1. 01オフライン優先のデータフロー設計
  2. 02ローカル編集とリモートデータの同期
  3. 03オフライン編集後のタイムスタンプ競合への対応

インストール

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

$npx skills add https://github.com/krutikjain/android-agent-skills --skill android-serialization-offline-sync

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

同梱ファイル

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

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

詳細

Android のシリアライズとオフライン同期

使用する場面

  • リクエストが次の内容に関する場合に、このスキルを使用します:Android のオフライン同期、Android のシリアライズモデルマッピング、Android の競合解決とキャッシュ。
  • 主な成果:Android アプリのシリアライズ、キャッシュ、競合処理、オフラインファーストの同期フローを調整します。
  • 対象範囲が広がる場合は、次のスキルに引き継ぎます:
  • android-networking-retrofit-okhttp
  • android-room-database

ワークフロー

  1. 関係するデータソース、永続化の境界、同期モデル、デバイスの機能を確認します。
  2. ネットワーク、ストレージ、メディア、バックグラウンドの API を接続する前に、コントラクトを明示的にモデル化します。
  3. 移行時に安全なデフォルトを備えた、推奨される AndroidX またはプラットフォームのパターンを適用します。
  4. サンプルアプリとシナリオを使って、オフライン時、再試行時、プロセス終了後の動作を検証します。
  5. 必要に応じて、セキュリティ、パフォーマンス、リリースのリスクについて、関連する支援スキルに引き継ぎます。

ガードレール

  • 場当たり的なマップやバンドルよりも、型付きモデルと明示的なシリアライザーを優先します。
  • バックグラウンド処理は冪等にし、キャンセルに対応させます。
  • ストレージ、メディア、ネットワークの詳細をプレゼンテーションコードに漏らさないでください。
  • ユーザーデータの耐久性、プライバシー、移行経路を実装の一部として扱います。

アンチパターン

  • ディスクまたはネットワークへの呼び出しでメインスレッドをブロックする。
  • 再試行可能な同期エラーを、ユーザー向けの回復不能なエラーとして扱う。
  • マッピング層を設けずに、キャッシュモデルとワイヤーモデルを混在させる。
  • より限定的な API があるにもかかわらず、広範なストレージまたは通知の機能を要求する。

例

正常系
  • シナリオ:明示的なマッピングを使って、ローカルのタスク編集内容をリモートモデルに同期します。
  • コマンド:cd examples/orbittasks-compose && ./gradlew :app:testDebugUnitTest
エッジケース
  • シナリオ:オフラインで編集した後、リモートとローカルのタイムスタンプが一致しない場合に復旧します。
  • コマンド:cd examples/orbittasks-xml && ./gradlew :app:testDebugUnitTest
失敗からの復旧
  • シナリオ:同期/シリアライズ処理を、ネットワーク処理のみ、または Room のみのリクエストと分離します。
  • コマンド:python3 scripts/eval_triggers.py --skill android-serialization-offline-sync

完了チェックリスト

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

公式リファレンス

コメント