Google Health API, geliştiricilere izin verilmiş kullanıcı sağlığı verilerinin geniş bir yelpazesine ve çeşitli veri türlerine güçlü erişim sağlayan, sıfırdan oluşturulmuş kapsamlı bir çözümdür. Google Health API, uygulamalarınızı kaydetmek için yeni bir konsol, Google OAuth 2.0, yeni veri türleri, yeni uç nokta şeması ve yeni bir yanıt biçimi kullanır.
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. Kullanıcıları elde tutarken sorunsuz bir geçiş sağlamak için öneriler içerir.
Neden taşıma işlemi yapmalısınız?
Bu sadece bir güncelleme değil, uygulamalarınızın güvenliğini sağlamak ve sağlık teknolojisindeki gelecekteki gelişmelere hazır olmasını sağlamak için stratejik bir adım. Google Health API'yi kullanmanın bazı avantajları şunlardır:
- Kapsamlı Verilere Erişim: İzin verilmiş kullanıcı sağlık verileri ve çeşitli veri türleri gibi geniş bir yelpazede kapsamlı erişim elde edin.
- 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.
Fitbit Web API'den Google Health API'ye geçiş, teknik değişikliklerden daha fazlasını gerektirir. Yeni bir OAuth kitaplığına geçiş nedeniyle mevcut erişim ve yenileme jetonları aktarılamaz. Bu nedenle, kullanıcıların güncellenen entegrasyonunuz için yeniden izin vermesi gerekir.
Her iki giriş yöntemini de destekleyin
Fitbit Web API ve Google Health API, kullanıcı girişlerini işlemek için farklı sistemler kullandığından Fitbit Web API'leri hâlâ etkin durumdayken uygulamanızın geçici olarak her iki yöntemi de aynı anda desteklemesi gerekir.
Uygulamanızın verileri doğrudan istemesi yerine, belirli bir kullanıcı için Fitbit Web API veya Google Health API ile iletişim kurulup kurulmayacağına karar veren bir katman uygulayın. Böylece uygulamanızın geri kalanının ayrıntılarla ilgilenmesi gerekmez.
Kullanıcı veritabanınızı, hangi giriş sistemini kullandıklarını belirlemek için bir işaret (ör. oauth_type) içerecek şekilde güncelleyin.
- Yeni kullanıcılar için: Yeni Google Health API (
oauth_type: google) ile otomatik olarak kurulum yapın. - Mevcut kullanıcılar için: Kullanıcılar izinlerini güncelleyene (
oauth_type: fitbit) kadar Fitbit Web API'de kalmalarını sağlayın.
Kullanıcı deneyiminin kesintiye uğramaması için herkesin çıkış yapıp yeniden oturum açmasını zorunlu kılmamanızı öneririz. Bunun yerine:
- Fitbit Web API'lerine bağlı kalmaya devam eden bir kullanıcı uygulamanızla etkileşime geçtiğinde, bağlantısını güncellemesini teşvik eden bir bildirim gösterin.
- Kullanıcı güncelleme işlemini kabul ettiğinde Google Health giriş akışını hemen tetikleyin.
- Google ile giriş işlemi başarılı olduktan sonra yeni Google kimlik bilgilerini kullanıcının profiline kaydedin ve
oauth_typeişaretinifitbit'dangoogle'ye değiştirin. Kurulumunuz izin veriyorsa, her şeyi düzenli ve güvenli tutmak için jetonlarını iptal ederek eski Fitbit sisteminden programatik olarak oturumlarını kapatın.
Veri sürekliliğini sağlama
Bir entegrasyonu eski Fitbit Web API'den Google Health API'ye geçirirken geliştirici uygulamalarının kullanıcı tanımlama yapılarındaki değişikliği hesaba katması gerekir.
Eski Fitbit Web API, hesapları 6 karakterlik alfanümerik bir dize (ör. A1B2C3) kullanarak tanımlarken Google Health API, 63 basamak ve karakterden oluşan bir dize olarak biçimlendirilmiş bir healthUserId kullanır.
Geliştiriciler, kullanıcı bağlamını kaybetmeden bu boşluğu doldurmak için getIdentity uç noktasını sorgulayarak Fitbit ve Health kullanıcı kimliklerini alabilirler.
Bu uç nokta, hem legacyUserId hem de yeni healthUserId içeren bir yük döndürür. Böylece uygulamalar, mevcut kayıtlar ile yeni hesap sistemi arasında dinamik olarak bir eşleme oluşturabilir.
Geçmiş verileri doldurma
Kullanıcı, eski uç noktalar devre dışı bırakılmadan önce yeni Google Health API uç noktalarında kimlik doğrulaması yapmazsa cihazını Google Health uygulamasıyla senkronize etmeye devam ettiği sürece verileri kullanılabilir olmaya devam eder. Ancak bu kullanıcı için verilerde boşluk olabilir.
Kullanıcı yeni uç noktalarda yeniden kimlik doğruladığında verilerini doldurmak için Google Health API'mizi kullanarak geçmiş verilerini doldurabilirsiniz. Yol gösterici bilgiler için Geçmiş verileri sorgulama başlıklı makaleyi inceleyin.
İletişim ve zamanlama
Kullanıcılarınızın mevcut Fitbit OAuth'tan yeni Google OAuth'a geçiş yapmasına yardımcı olmak için aşağıdaki en iyi uygulamalardan yararlanın.
Önce değer sunan iletişim
"API'mizi güncelledik" ifadesiyle başlamayın. Google Health verilerini uygulamanıza entegre etmenin avantajlarını vurgulayın. Ancak verilerinin senkronize edilmesini istiyorlarsa yeniden kimlik doğrulamaları gerektiğini bildirin:
- Uygulamanızda entegrasyonla desteklenen hangi özelliklerin bulunduğunu net bir şekilde açıklayın ve mesajınızı, kullanıcının bu özelliklerden nasıl yararlanacağına göre uyarlayın.
- Teknik uygulama ayrıntıları yerine özelliklerinize odaklanın ve kullanım alanları sunun.
- Şunu söylemeyin: "Fitbit API'ye bağlanamayacaksınız."
- Şunu söyleyin: "Kalp atış hızı verileriyle ayrıntılı egzersizleri görmeye devam etmek için Google Health API'lerine yeniden izin verin."
Kullanıcılara ne zaman bildirim gönderilir?
Tüm kullanıcı iletişimlerinde Google Health marka yönergelerine uyun ve kapatılabilir banner'lar, kartlar veya uyarılar kullanın.
- Kullanıcı egzersiz yaparken veya bir şeyi manuel olarak kaydederken yeniden izin ekranını tetiklemeyin.
- Yeniden izni yalnızca birkaç hafta süren uyarıların ardından, resmi Fitbit Web API desteğinin sonlandırılma tarihleriyle aynı zamanda zorunlu hale getirin.
- Kullanıcı, kesin son tarihten sonra yeniden izin vermediyse sorunsuz bir kurtarma yolu sağlayın. Verilerinin neden eksik olduğunu ve nasıl düzeltileceğini anlamalarına yardımcı olmak için banner, kart veya ipucu şeklinde yardım mesajı gösterin.