کاربر موبایل ممکن است در آسانسور، مترو یا نقطهٔ ضعیف شبکه باشد. اپلیکیشن خوب در این شرایط هم کار می‌کند.

اصول

  • ذخیرهٔ محلی: داده را در پایگاه محلی (SQLite، Room، Core Data، Hive) نگه دارید و رابط را از همان بخوانید.
  • صف تغییرات: کارهای کاربر را در صف بگذارید و هنگام اتصال ارسال کنید.
  • همگام‌سازی و تضاد: قاعدهٔ حل تعارض (مثلاً آخرین تغییر برنده) مشخص باشد.
  • بازخورد واضح: وضعیت آفلاین و همگام‌سازی را نشان دهید.

این رویکرد هم تجربهٔ کاربر را بهتر می‌کند و هم مصرف داده و باتری را کم می‌کند؛ فقط پیچیدگی همگام‌سازی را از ابتدا در طراحی بگنجانید.