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. 必要时将安全、性能或发布风险升级给相关支持技能。

防护措施

  • 优先使用类型化模型和显式序列化器,避免临时映射或 Bundle。
  • 确保后台工作具有幂等性,并能响应取消操作。
  • 不要将存储、媒体或网络细节泄漏到表示层代码中。
  • 将用户数据持久性、隐私和迁移路径视为实现的一部分。

反模式

  • 在主线程执行磁盘或网络调用,导致线程阻塞。
  • 将可重试的同步失败视为面向用户的终止错误。
  • 不通过映射层就混用缓存模型和网络传输模型。
  • 当存在范围更窄的 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 层面相对应。
  • 已运行或更新相关示例命令和基准提示词。
  • 请求涉及相邻技能时,已记录交接事项。
  • 官方参考资料涵盖所选模式以及主要迁移或故障排查路径。

官方参考资料

评论

支持 Markdown