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_typeişaretini içerecek şekilde güncelleyin. Örneğin, Fitbit OAuth içinfitbit, Google OAuth içingooglekullanın.- Yeni Kullanıcılar: Varsayılan olarak Google Health API ve Google OAuth kitaplığı kullanılır.
oauth_typedeğerinigoogleolarak ayarlayın. - Mevcut Kullanıcılar: Yeniden izin verme akışını tamamlayana kadar Fitbit Web API'de kalır.
oauth_typedeğerinifitbitolarak ayarlayın.
- Yeni Kullanıcılar: Varsayılan olarak Google Health API ve Google OAuth kitaplığı kullanılır.
"Step-Up" yeniden izin akışı
Kullanıcıyı çıkış yapmaya zorlamak yerine kademeli yetkilendirme yaklaşımını kullanın:
- Fitbit Açık Kaynak Jetonunu Algılama: Bir Fitbit Web API kullanıcısı uygulamayı açtığında "Hizmet Güncellemesi" bildirimi tetiklenir.
- Google OAuth akışını başlatın: Kullanıcı "Güncelle"yi tıkladığında Google OAuth2 kitaplığı akışını başlatın.
- Değiştirme ve İptal Etme: Google OAuth jetonu başarıyla alındıktan sonra kullanıcı profiline kaydedin,
oauth_typedeğerinifitbitolarak güncelleyin ve (mümkünse) kullanıcının güvenlik profilini temiz tutmak için eskifitbitjetonunu 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.