Genel bakış
Android için Google Fit'i kullanmak istiyorsanız Android uygulamaları için bir OAuth 2.0 istemci kimliğine ihtiyacınız vardır.
Tüm Android uygulamaları, özel anahtara sahip olduğunuz dijital bir sertifikayla imzalanır. Dijital sertifikalar hakkında daha fazla bilgi için uygulamalarınızı imzalamayla ilgili Android kılavuzuna bakın.
Android OAuth istemci kimlikleri belirli sertifika/paket çiftlerine bağlıdır. Uygulamada kaç kullanıcınız olursa olsun her sertifika için yalnızca bir kimlik gerekir.
Uygulamanızın kimliğini almak için uygulamanız gereken birkaç adım vardır. Bu adımlar aşağıda özetlenmiştir.
- Uygulamanızın sertifika bilgilerini bulun.
- Google API Konsolu'nda bir proje oluşturun veya değiştirin.
- OAuth 2.0 istemci kimliği isteyin.
Uygulamanızın sertifika bilgilerini bulma
API anahtarı, uygulamanızın dijital sertifikasının SHA-1 parmak izi olarak bilinen kısa bir biçimini 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 oluşturduğunuzda bu sertifikayı otomatik olarak oluşturur. Bu sertifikayı yalnızca test ettiğiniz uygulamalarla kullanın. Hata ayıklama sertifikasıyla imzalanmış bir uygulama yayınlamaya çalışmayın. Hata ayıklama sertifikası Android Geliştirici Belgeleri'ndeki Hata Ayıklama Modunda İmzalama bölümünde daha ayrıntılı olarak açıklanmıştır.
- Sürüm sertifikası: Sürüm derlemesi oluşturduğunuzda Android SDK araçları bu sertifikayı oluşturur. Bu sertifikayı
keytool
programını kullanarak da oluşturabilirsiniz. Uygulamanızı yayınlamaya hazır olduğunuzda bu sertifikayı kullanın.
-v
parametresini içeren 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 dokümanlarına bakın.
Hata ayıklama sertifikası parmak izini görüntüleme
Hata ayıklama anahtar deposu dosyanızı bulun. Dosya adı
debug.keystore
olup projenizi ilk oluşturduğunuzda 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 sertifika anahtar deposu dosyanızı bulun. Sürüm anahtar deposunun varsayılan konumu veya adı yoktur. Uygulamanızı yayınlanmak üzere derlediğinizde derlemeyi
.apk
için imzanız kalmaz. Yayınlamadan önce derlemeyi imzalamanız gerekir. Sürüm sertifikası için sertifika takma adına, anahtar deposunun sertifikasına ve sertifikaya da ihtiyacınız vardır. Bir anahtar deposundaki tüm anahtarlar için takma adları aşağıdaki şekilde listeleyebilirsiniz:keytool -list -keystore your_keystore_name
your_keystore_name
değerini,.keystore
uzantısı da dahil olmak üzere tam nitelikli anahtar deposunun ve anahtar deposunun adıyla değiştirin. Anahtar deposunun şifresi istenir. Daha sonrakeytool
, anahtar deposundaki tüm takma adları görüntüler. -
Bir terminal veya komut istemine aşağıdakileri girin:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
your_keystore_name
değerini,.keystore
uzantısı da dahil olmak üzere tam nitelikli anahtar deposunun ve anahtar deposunun adıyla değiştirin.your_alias_name
kısmını, oluşturduğunuz 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 nokta işaretiyle ayrılmış 20 basamaklı onaltılık sayı 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 için bu adımları uygulayın.
İşlem boyunca rehberlik almak 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 bu 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 ve OAuth İstemci Kimliği'ni seçin.
- Uygulama türü bölümünde Android'i seçin.
Açılan iletişim kutusunda uygulamanızın SHA-1 parmak izi 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
Create'i (Oluştur) tıklayın. Yeni Android OAuth 2.0 istemci kimliğiniz ve sırrınız, projenizin kimlik listesinde görünür. OAuth 2.0 istemci kimliği bir karakter dizesidir. Örneğin:
780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com