API Anahtarlarını Kullanma

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Platform seçin: Android iOS JavaScript Web Hizmeti

Başlamadan önce

Android için Yerler SDK'sını kullanmaya başlamadan önce, faturalandırma hesabı ve Android için Yerler SDK'sı etkin bir projeye ihtiyacınız vardır. Daha fazla bilgi edinmek için Cloud Console'da kurma başlıklı makaleye bakın.

API anahtarları oluşturma

API anahtarı, kullanım ve faturalandırma amaçları için projenizle ilişkilendirilen isteklerin kimliğini doğrulayan benzersiz bir tanımlayıcıdır. Projenizle ilişkilendirilmiş en az bir API anahtarınız olmalıdır.

API anahtarı oluşturmak için:

Konsol

  1. Google Haritalar Platformu > Kimlik Bilgileri sayfasına gidin.

    Kimlik bilgisi sayfasına git

  2. Kimlik bilgileri sayfasında Kimlik bilgisi oluştur ve API anahtarı'nı tıklayın.
    API anahtarı oluşturuldu iletişim kutusunda yeni oluşturduğunuz API anahtarı gösterilir.
  3. Kapat'ı tıklayın.
    Yeni API anahtarı, Kimlik bilgileri sayfasında API anahtarları altında listelenir.
    (API'yi üretimde kullanmadan önce anahtarı kısıtlamayı unutmayın.)

Google Cloud SDK

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Google Cloud SDK, Google Cloud SDK yüklemesi ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:

API anahtarlarını kısıtlama

Google, API anahtarlarınızın kullanımını yalnızca uygulamanız için gereken API'lerle sınırlandırarak önemle tavsiye eder. API anahtarlarının kısıtlanması, uygulamanızı istenmeyen isteklerden koruyarak uygulamanıza güvenlik ekler. Daha fazla bilgi için API güvenliğiyle ilgili en iyi uygulamalar bölümüne bakın.

API anahtarınızı kısıtladığınızda uygulamayı imzalamak için kullanılan imzalama anahtarının SHA-1 sertifika parmak izini sağlamanız gerekir. İki sertifika türü vardır:

  • Hata ayıklama sertifikası: Bu sertifika türünü yalnızca test ettiğiniz uygulamalar ve üretim dışı diğer kodlarla kullanın. Hata ayıklama sertifikasıyla imzalanmış bir uygulamayı yayınlamayı denemeyin. Android SDK araçları, bir hata ayıklama derlemesi çalıştırdığınızda bu sertifikayı otomatik olarak oluşturur.
  • Sürüm sertifikası: Uygulamanızı bir uygulama mağazasına yayınlamaya hazır olduğunuzda bu sertifikayı kullanın. Android SDK araçları, bir sürüm derlemesi çalıştırdığınızda bu sertifikayı oluşturur.

Dijital sertifikalar hakkında daha fazla bilgi için Uygulamanızı imzalama kılavuzuna bakın.

Sertifikanızın dijital parmak izini alma hakkında bilgi edinmek için İstemcinizin Kimlik Doğrulamasını inceleyin. Bunun yerine Play Uygulama İmzalama'yı kullanıyorsanız sertifika parmak izinizi almak için Play Console'daki uygulama imzalama sayfasına gitmeniz gerekir.

Bir API anahtarını kısıtlamak için:

Konsol

  1. Google Haritalar Platformu > Kimlik Bilgileri sayfasına gidin.

    Kimlik bilgisi sayfasına git

  2. Kısıtlama ayarlamak istediğiniz API anahtarını seçin. API anahtarı mülk sayfası görünür.
  3. Anahtar kısıtlamaları altında, aşağıdaki kısıtlamaları ayarlayın:
    • Uygulama kısıtlamaları:
      1. Android uygulamaları'nı seçin.
      2. + Paket adı ve parmak izi ekle'yi tıklayın.
      3. Paket adınızı ve SHA-1 sertifika parmak izini girin. Örneğin:
        com.example.android.mapexample
        BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    • API kısıtlamaları:
      1. Anahtarı kısıtla'yı tıklayın.
      2. API'leri seç açılır menüsünden Places API'yi seçin. Places API listelenmemişse bunu etkinleştirmeniz gerekir.
  4. Değişikliklerinizi tamamlamak için Kaydet'i tıklayın.

Google Cloud SDK

Mevcut anahtarları listeleyin.

gcloud services api-keys list --project="PROJECT"

Mevcut anahtardaki mevcut kısıtlamaları temizleyin.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

Mevcut anahtar için yeni kısıtlamalar belirleyin.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api_target="places-backend.googleapis.com"
    --allowed-application="sha1_fingerprint=SHA1_FINGERPRINT,package_name=ANDROID_PACKAGE_NAME"

Google Cloud SDK, Google Cloud SDK yüklemesi ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:

Uygulamanızın sertifika bilgilerini bulma

API anahtarı, uygulamanızın dijital sertifikasının kısa bir halini temel alır. Bu sertifika, SHA-1 parmak izi olarak bilinir. 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 uygulamalarla kullanın. Hata ayıklama sertifikasıyla imzalanmış bir uygulamayı yayınlamayı denemeyin. Hata ayıklama sertifikası, Android Geliştirici Belgeleri'ndeki Hata Ayıklama Modunda Oturum Açma bölümünde daha ayrıntılı olarak açıklanmıştır.
  • Sürüm sertifikası: Android SDK araçları, bir sürüm derlemesi yaptığınızda bu sertifikayı oluşturur. Bu programı keytool programını kullanarak da oluşturabilirsiniz. Uygulamanızı tüm dünyaya sunmaya hazır olduğunuzda bu sertifikayı kullanın.

Gradle'ı kullanma

Gradle, uygulamanızın imzalama bilgilerini almanızı çok kolaylaştırır. ./gradlew signingReport uygulamasını çalıştırmanız yeterli.

Çıkış aşağıdaki gibi görünecektir:

Task :app:signingReport

Variant: debug
Config: debug
Store: ~/.android/debug.keystore
Alias: AndroidDebugKey
MD5: 76:4E:BF:C3:59:DA:D3:8F:98:D6:3C:DB:87:A4:5B:E7
SHA1: 99:8E:73:B8:3A:A3:A3:C4:C1:D4:19:08:F6:7E:9E:F6:75:29:4C:B2
SHA-256: 6C:01:12:53:90:94:73:B5:66:D6:07:FF:A5:6F:AB:30:AE:99:20:55:0F:B3:12:22:4C:46:7E:02:3D:7E:6D:1D
Valid until: Friday, June 25, 2049
----------
Variant: release
Config: release
Store: app/keystore.jks
Alias: keystore
MD5: 1E:63:0F:14:67:E0:04:BD:98:4C:EB:2B:09:EF:7E:1E
SHA1: 2C:DF:9F:D1:A3:0D:1E:01:48:34:5D:91:52:0B:D8:8A:5A:07:45:C3
SHA-256: 12:66:CE:4B:90:FD:64:1A:4D:79:9E:78:AD:59:0C:21:D8:53:61:EE:2B:90:E4:67:CE:65:A0:76:04:13:23:89
Valid until: Tuesday, September 29, 2116

Manuel Olarak

-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ı

Hata ayıklama sertifikası parmak izini görüntüleme

  1. Hata ayıklama anahtar deposu dosyanızı bulun. Dosya adı debug.keystore şeklindedir ve 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\
  2. SHA-1 parmak izini listeleyin:

    • Linux veya macOS için bir terminal penceresi açın ve aşağıdakileri girin:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • Windows Vista ve Windows 7 için şu komutu çalıştırın:

      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

Yayın sertifikası

Sürüm sertifikası parmak izi gösteriliyor

  1. Sürüm sertifikası 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 imzasız bırakır. Yayınlamadan önce derlemeyi imzalamanız gerekir. Sürüm sertifikası için sertifikanın takma adına, anahtar deposuna ve sertifikaya ait şifrelere de ihtiyacınız vardır. Bir anahtar deposundaki tüm anahtarların takma adlarını aşağıdaki bilgileri girerek listeleyebilirsiniz:

    keytool -list -keystore your_keystore_name

    your_keystore_name öğesini, .keystore uzantısı da dahil olmak üzere anahtar deposunun tam nitelikli yolunu ve adıyla değiştirin. Anahtar deposunun şifresi girmeniz istenir. Ardından keytool, anahtar deposundaki tüm takma adları görüntüler.

  2. Bir terminal veya komut istemine aşağıdakileri girin:

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    your_keystore_name öğesini, .keystore uzantısı da dahil olmak üzere anahtar deposunun tam nitelikli yolunu ve adıyla değiştirin. your_alias_name değerini, 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 üst üste ile ayrılmış iki basamaklı onaltılık sayı dizisidir.

Sırada ne var?

Artık bir API anahtarınız olduğuna göre Android Studio Projesi oluşturma bölümünde açıklandığı gibi bir proje oluşturup yapılandırın.