Skip to content

Çevrimdışı kuyruk ve otomatik yeniden deneme

Mobil uygulama, internet bağlantısı yokken yaptığınız işlemleri yerel kuyrukta saklar ve bağlantı geri geldiğinde otomatik olarak sunucuya gönderir.

Hangi işlemler kuyruklanır?

  • Geri yükleme onayı (yöneticiye gönderilen onay isteği)
  • Cihaz çıkışı (uzak oturum kapatma)
  • Hesap silme onayı (3 adımlı wizard'ın son adımı)
  • Push token güncellemesi

Yedek görüntüleme ve dashboard verileri kuyruklanmaz; bunlar bağlantı geldiğinde canlı çekilir (cache değil).

Görsel uyarı — RetryBanner

Bağlantı yoksa veya bir istek 4xx/5xx ile başarısız olursa ekranın üst kısmında turuncu bir banner görünür:

3 işlem sırada bekliyor · Bağlantı geldiğinde otomatik gönderilecek

Banner'a dokunarak kuyruktaki işlemleri görebilir, isterseniz tek tek iptal edebilirsiniz.

Otomatik replay mantığı

  1. NetInfo bağlantı değişimini dinler (netinfo.logic.ts)
  2. Bağlantı online + reachable olduğunda kuyruk açılır
  3. Her item için 3 deneme + exponential backoff (1s → 4s → 16s)
  4. 3 deneme sonrası başarısızsa kullanıcıya hata bildirimi + manuel "tekrar dene"

KVKK § 12 — Kuyrukta PII yok

Kuyruğa endpoint + headers + body yazılır ama hassas alanlar (parola, token, biyometrik) endpoint düzeyinde filtrelenir. Cihaz çalınırsa bile kuyruk dosyasından kullanıcı parolası elde edilemez.

Kuyruğu manuel temizleme

Hesap → Geliştirici → "Çevrimdışı kuyruğu temizle" (yalnızca Hesap → Geliştirici modunda görünür).

⚠️ Bu işlem bekleyen onayları siler. Onaylanmamış geri yükleme istekleri tekrar gönderilmez; baştan başlatmanız gerekir.

Edge case'ler

SenaryoDavranış
Uçak modu sırasında onay verdimKuyruğa yazılır; uçak modu kapanınca gönderilir
Bağlantı var ama sunucu 5033 deneme; sonra "hata" durumuna düşer
Aynı işlemi 2 kez yaptımIdempotency key ile sunucuda tek seferlik uygulanır
Telefonu kapatıp açtımKuyruk SQLite'da persiste edilir; uygulama açılınca devam eder

KVKK + TTK + VUK uyumlu yedekleme platformu