Genel bakış

Google Health API, geliştiricilerin Fitbit kullanıcı verilerini sorgulamasına olanak tanıyan, baştan sona yeni bir API'dir. Bu sadece bir güncelleme değil, uygulamalarınızın güvenli, güvenilir ve sağlık teknolojisindeki gelecekteki gelişmelere hazır olmasını sağlayacak stratejik bir adım. API; uygulamalarınızı kaydetmek için yeni bir konsolu, Google OAuth 2.0 desteğini, yeni veri türlerini, yeni uç nokta şemasını ve yeni yanıt biçimini destekler.

Bu kılavuz, geliştiricilerin mevcut Fitbit Web API uygulamalarını yeni Google Health API'ye taşımasına yardımcı olmak için tasarlanmıştır.

Neden taşıma işlemi yapmalısınız?

Google Health API'yi kullanmanın avantajları şunlardır:

  • Gelişmiş güvenlik: Google'ın en iyi güvenlik uygulamalarına uygunluk, Google'ın güvenlik, gizlilik ve kimlik standartlarına uyum.
  • Tutarlılık: Daha sezgisel bir geliştirici deneyimi için veri biçimlerindeki, saat dilimlerindeki, ölçü birimlerindeki ve hata işlemeyle ilgili eski tutarsızlıkları ortadan kaldırır.
  • Ölçeklenebilirlik ve geleceğe hazırlık: Gelecekteki talepleri karşılayacak şekilde ölçeklenmek üzere tasarlanmıştır ve gRPC gibi modern protokolleri destekler.

Kullanıcılarınızı taşıma

Fitbit Web API'den Google Health API'ye geçiş, teknik bir güncellemeden daha fazlasıdır. OAuth kitaplığının değiştirilmesi nedeniyle kullanıcılarınızın yeni entegrasyonunuz için yeniden izin vermesi gerekir. Erişim jetonlarının ve yenileme jetonlarının Google Health API'ye aktarılması ve çalışması mümkün değildir. Taşıma işleminiz sırasında kullanıcıları elde tutmanıza yardımcı olmak için başarılı bir taşıma işlemine yönelik bazı teknik ve stratejik önerileri aşağıda bulabilirsiniz.

Çift kitaplık stratejisi

Fitbit Web API ve Google Health API farklı OAuth2 kitaplıklarını kullandığından, her iki kitaplığın da kod tabanınızda bulunduğu bir "köprüleme" dönemi yönetmeniz gerekir.

Paralel Yetkilendirme Yönetimi

  • İstemcileri Kapsülleme: "Sağlık Hizmetiniz" için bir soyutlama katmanı veya arayüz oluşturun. Bu sayede uygulamanızın geri kalanı, söz konusu kullanıcı için hangi kitaplığın (Fitbit OAuth veya Google OAuth) etkin olduğunu bilmeden veri isteyebilir.
  • Veritabanı Şema Güncellemesi: Kullanıcı tablonuzu oauth_type işaretini içerecek şekilde güncelleyin. Örneğin, Fitbit OAuth için fitbit, Google OAuth için google kullanın.
    • Yeni Kullanıcılar: Varsayılan olarak Google Health API ve Google OAuth kitaplığı kullanılır. oauth_type değerini google olarak ayarlayın.
    • Mevcut Kullanıcılar: Yeniden izin verme akışını tamamlayana kadar Fitbit Web API'de kalır. oauth_type değerini fitbit olarak ayarlayın.

"Step-Up" yeniden izin akışı

Kullanıcıyı çıkış yapmaya zorlamak yerine kademeli yetkilendirme yaklaşımını kullanın:

  1. Fitbit Açık Kaynak Jetonunu Algılama: Bir Fitbit Web API kullanıcısı uygulamayı açtığında "Hizmet Güncellemesi" bildirimi tetiklenir.
  2. Google OAuth akışını başlatın: Kullanıcı "Güncelle"yi tıkladığında Google OAuth2 kitaplığı akışını başlatın.
  3. Değiştirme ve İptal Etme: Google OAuth jetonu başarıyla alındıktan sonra kullanıcı profiline kaydedin, oauth_type değerini fitbit olarak güncelleyin ve (mümkünse) kullanıcının güvenlik profilini temiz tutmak için eski fitbit jetonunu programatik olarak iptal edin.google

Kullanıcıları elde tutma oranını en üst düzeye çıkarma

Yeniden izin alma, müşteri kaybı açısından "tehlikeli bölge"dir. Kullanıcıların uygulamayı terk etmesini önlemek için aşağıdaki kullanıcı deneyimi en iyi uygulamalarını uygulayın:

"Önce Değer" İletişimi

"API'mizi güncelledik" gibi bir ifadeyle başlamayın. Yeni Google destekli sistemin avantajlarını vurgulayın:

  • Gelişmiş güvenlik: Google'ın sektör lideri hesap koruma ve 2FA özelliklerinden bahsedin.
  • Güvenilirlik: Daha hızlı senkronizasyon süreleri ve daha kararlı veri bağlantıları.
  • Özellik Kilitleme: Kullanıcıları, yeni özellikler ve veri türleri için güncelleme yapılması gerektiği konusunda nazikçe bilgilendirin.

Akıllı Zamanlama

  • Yüksek Değerli Görevleri Kesintiye Uğratmayın: Kullanıcı antrenman yaparken veya yiyecekleri günlüğe kaydederken yeniden izin isteme ekranını asla tetiklemeyin.
  • "Hatırlatma" aşaması: İlk 30 gün boyunca kapatılabilir bir banner kullanın.
  • "Kesin Sonlandırma" Aşaması: Yeniden izni yalnızca resmi Fitbit Web API desteğinin sonlandırılmasıyla ilgili son tarihlerle aynı zamana denk gelecek şekilde, birkaç hafta boyunca uyarılar gönderdikten sonra zorunlu kılın.

Taşıma Akışı Karşılaştırması

Eski ve yeni akışlar arasındaki net görsel ayrım, geliştiricilerin mantığın nerede dallandığını anlamasına yardımcı olur.

Özellik Fitbit Web API (Eski) Google Health API (Google-Identity)
Auth Library Standart Açık Kaynak Google Kimlik Hizmetleri (GIS) / Google Kimlik Doğrulama
Kullanıcı Hesapları Fitbit Eski Kimlik Bilgileri Google Hesabı
Jeton Türü Fitbit'e özel erişim / yenileme Google tarafından verilen erişim/yenileme jetonları
Kapsam Yönetimi Geniş kapsamlı izinler Ayrıntılı / Artımlı izinler

Hesap taşıma işleminin inceliklerini ele alma

Fitbit'in dokümanlarına göre, hesaplarını Google'a taşıyan kullanıcılar genellikle üçüncü taraf bağlantılarını hemen kaybetmez. Ancak API sürümünü değiştirmek geliştirici tarafında zorunlu bir işlemdir.

  • Jeton Geçerliliğini Kontrol Etme: Fitbit jetonlarının "Yetkisiz" hatalarıyla başarısız olup olmadığını kontrol etmek için bir arka plan çalışanı kullanın. Bu durum, kullanıcının hesabını taşıdığını ancak uygulamanızın bu değişikliği henüz algılamadığını gösterebilir.
  • Graceful Failures: Bir Fitbit OAuth çağrısı başarısız olursa kullanıcıyı, özellikle yeni Google OAuth akışını kullanan özel bir "Fitbit'e yeniden bağlan" sayfasına yönlendirin.