Genel Bakış
Android için Google Fit'i kullanmak istiyorsanız Android uygulamaları için OAuth 2.0 istemci kimliğine ihtiyacınız vardır.
Tüm Android uygulamaları, özel anahtarını sizin tuttuğunuz bir dijital sertifikayla imzalanır. Dijital sertifikalar hakkında daha fazla bilgi için uygulamalarınıza imza atmayla ilgili Android kılavuzunu inceleyin.
Android OAuth istemci kimlikleri belirli sertifika/paket çiftlerine bağlıdır. Uygulamanızda kaç kullanıcınız olursa olsun her sertifika için yalnızca bir kimliğe ihtiyacınız vardır.
Uygulamanız için kimlik edinmek birkaç adımdan oluşur. Bu adımlar aşağıda açıklanmıştır.
- Uygulamanızın sertifika bilgilerini bulun.
- Google API Konsolu'nda proje oluşturma veya mevcut bir projeyi değiştirme
- OAuth 2.0 istemci kimliği isteyin.
Uygulamanızın sertifika bilgilerini bulma
API anahtarı, uygulamanızın dijital sertifikasının kısa bir formunu (SHA-1 parmak izi olarak bilinir) temel alır. Sertifikanızın SHA-1 parmak izini görüntülemek için önce doğru sertifikayı kullandığınızdan emin olun. İki sertifikanız olabilir:
- Hata ayıklama sertifikası: Android SDK araçları, hata ayıklama derlemesi yaptığınızda bu sertifikayı otomatik olarak oluşturur. Bu sertifikayı yalnızca test ettiğiniz uygulamalarda kullanın. Hata ayıklama sertifikasıyla imzalanmış bir uygulama yayınlamaya çalışmayın. Hata ayıklama sertifikası, Android geliştirici dokümanlarında yer alan Hata Ayıklama Modunda İmzalama bölümünde daha ayrıntılı olarak açıklanmıştır.
- Sürüm sertifikası: Android SDK araçları, sürüm derlemesi yaptığınızda bu sertifikayı oluşturur. Bu sertifikayı
keytool
programını kullanarak da oluşturabilirsiniz. Uygulamanızı herkese sunmaya hazır olduğunuzda bu sertifikayı kullanın.
-v
parametresini kullanarak keytool
programını kullanarak bir sertifikanın SHA-1 parmak izini görüntülemek için aşağıdaki adımları uygulayın. Keytool hakkında daha fazla bilgi için Oracle belgelerine bakın.
Hata ayıklama sertifikası parmak izini görüntüleme
Hata ayıklama anahtar paketi dosyanızı bulun. Dosya adı
debug.keystore
şeklindedir ve projenizi ilk kez derlediğinizde oluşturulur. Varsayılan olarak Android sanal cihaz (AVD) dosyalarınızla aynı dizinde depolanır:- macOS ve Linux:
~/.android/
- Windows Vista ve Windows 7:
C:\Users\your_user_name\.android\
- macOS ve Linux:
SHA-1 parmak izini listeleyin:
Linux veya macOS için bir terminal penceresi açıp aşağıdakileri girin:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Windows Vista ve Windows 7 için:
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Aşağıdakine benzer bir çıkış görürsünüz:
Alias name: androiddebugkey Creation date: Jan 01, 2013 Entry type: PrivateKeyEntry Certificate chain length: 1 Certificate[1]: Owner: CN=Android Debug, O=Android, C=US Issuer: CN=Android Debug, O=Android, C=US Serial number: 4aa9b300 Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033 Certificate fingerprints: MD5: AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9 SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75 Signature algorithm name: SHA1withRSA Version: 3
Sürüm sertifikası parmak izi gösteriliyor
-
Sürüm sertifikası anahtar deposu dosyanızı bulun. Sürüm anahtar ambarının varsayılan konumu veya adı yoktur. Uygulamanızı yayınlamak için derlediğiniz sırada bir
.apk
belirtmezseniz derleme işlemi,.apk
dosyanızı imzalamaz ve yayınlamadan önce imzalamanız gerekir. Sürüm sertifikası için sertifikanın takma adının yanı sıra anahtar deposunun ve sertifikanın şifrelerine de ihtiyacınız vardır. Aşağıdakileri girerek bir anahtar deposundaki tüm anahtarların takma adlarını listeleyebilirsiniz:keytool -list -keystore your_keystore_name
your_keystore_name
yerine,.keystore
uzantısı dahil olmak üzere anahtar Anahtar ambarının şifresini girmeniz istenir. Ardındankeytool
, anahtar deposundaki tüm takma adları gösterir. -
Terminale veya komut istemine aşağıdakileri girin:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
your_keystore_name
yerine,.keystore
uzantısı dahil olmak üzere anahtaryour_alias_name
kısmını, oluşturduğunuzda sertifikaya atadığınız takma adla değiştirin.
Aşağıdakine benzer bir çıkış görürsünüz:
Alias name: <alias_name> Creation date: Feb 02, 2013 Entry type: PrivateKeyEntry Certificate chain length: 1 Certificate[1]: Owner: CN=Android Debug, O=Android, C=US Issuer: CN=Android Debug, O=Android, C=US Serial number: 4cc9b300 Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033 Certificate fingerprints: MD5: AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9 SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75 Signature algorithm name: SHA1withRSA Version: 3
SHA1
ile başlayan satır, sertifikanın SHA-1 parmak izini içerir. Parmak izi, iki noktayla ayrılmış 20 iki basamaklı on altılık sayının dizisidir.
Google API Konsolu'nda OAuth 2.0 istemci kimliği isteme
Google API Konsolu'nda uygulamanız için proje oluşturmak veya mevcut bir projeyi değiştirmek, Fitness API'yi etkinleştirmek ve OAuth 2.0 istemci kimliği istemek üzere aşağıdaki adımları uygulayın.
Süreç boyunca size rehberlik edilmesini ve Fitness API'yi otomatik olarak etkinleştirmek istiyorsanız
Alternatif olarak, Google API Konsolu'nda Fitness API'yi etkinleştirmek ve OAuth 2.0 istemci kimliği almak için aşağıdaki adımları uygulayın.
- Google API Konsolu'na gidin.
- Bir proje seçin veya yeni bir proje oluşturun. Uygulamanızın Android ve REST sürümleri için aynı projeyi kullanın.
- Fitness API'yi etkinleştirmek için Devam'ı tıklayın.
- Kimlik bilgilerine git'i tıklayın.
- Yeni kimlik bilgileri'ni tıklayın, ardından OAuth istemci kimliği'ni seçin.
- Uygulama türü bölümünde Android'i seçin.
Açılan iletişim kutusuna uygulamanızın SHA-1 parmak izini ve paket adını girin. Örneğin:
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
com.example.android.fit-example
Oluştur'u tıklayın. Yeni Android OAuth 2.0 istemci kimliğiniz ve gizli anahtarınız, projenizin kimlik listesinde görünür. OAuth 2.0 istemci kimliği, aşağıdaki gibi bir karakter dizisidir:
780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com