Yapılandırma

Kitaplık System.getProperty("user.home") + "/ads.properties" içinde bir yapılandırma dosyası arar. GoogleAdsClient oluştururken aşağıdaki mekanizmalardan birini kullanarak çalışma zamanında bu yolu ve dosya adını geçersiz kılabilirsiniz:

  • fromPropertiesFile(PATH_TO_CONFIG_FILE) işlevini çağırın. Burada PATH_TO_CONFIG_FILE, yapılandırma dosyanızın yolu ve dosya adıdır.
  • Ortam değişkenini (GOOGLE_ADS_CONFIGURATION_FILE_PATH) yapılandırma dosyanızın yol ve dosya adına ayarlayın ve ardından fromPropertiesFile() çağrısı yapın.

Yapılandırma dosyasının biçimi, anahtar/değer çiftlerinin Java Properties dosyası biçimindedir. Desteklenen anahtarlar, seçilen kimlik doğrulama akışına bağlı olarak değişir.

Masaüstü ve web uygulaması akışları için desteklenen anahtarlar

Masaüstü veya web uygulama akışını kullanıyorsanız desteklenen anahtarlar aşağıdaki gibidir:

# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientId=INSERT_CLIENT_ID_HERE

# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientSecret=INSERT_CLIENT_SECRET_HERE

# Renewable OAuth credential associated with 1 or more Google Ads accounts.
api.googleads.refreshToken=INSERT_REFRESH_TOKEN_HERE

# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE

# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE

# Only required if explicitly instructed by the service documentation.
# api.googleads.linkedCustomerId=INSERT_LINKED_CUSTOMER_ID_HERE

Hizmet hesapları için desteklenen anahtarlar

Hizmet hesabı akışını kullanıyorsanız desteklenen anahtarlar aşağıdaki gibidir:

# Path to the service account secrets file in JSON format.
# Provided by console.cloud.google.com.
api.googleads.serviceAccountSecretsPath=INSERT_PATH_TO_JSON_HERE

# Email address of the user to impersonate.
# This should be a user who has access to your Google Ads account and is in the same
# Google Apps Domain as the service account.
api.googleads.serviceAccountUser=INSERT_USER_EMAIL_ADDRESS_HERE

# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE

# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE

Ortam değişkenlerini kullanma

Kitaplık, tüm Google Ads API istemci kitaplıkları için ortak olan tüm ortam değişkenlerini destekler. Aşağıdaki tabloda her yapılandırma dosyası özelliğine karşılık gelen ortam değişkeni gösterilmektedir.

Yapılandırma dosyası özelliği Ortam değişkeni
api.googleads.developerToken GOOGLE_ADS_DEVELOPER_TOKEN
api.googleads.clientId GOOGLE_ADS_CLIENT_ID
api.googleads.clientSecret GOOGLE_ADS_CLIENT_SECRET
api.googleads.refreshToken GOOGLE_ADS_REFRESH_TOKEN
api.googleads.serviceAccountSecretsPath GOOGLE_ADS_JSON_KEY_FILE_PATH
api.googleads.serviceAccountUser GOOGLE_ADS_IMPERSONATED_EMAIL
api.googleads.loginCustomerId GOOGLE_ADS_LOGIN_CUSTOMER_ID
api.googleads.linkedCustomerId GOOGLE_ADS_LINKED_CUSTOMER_ID

Uygun ortam değişkenlerini ayarladıktan sonra oluşturucuda fromEnvironment() özelliğini çağırarak GoogleAdsClient cihazınızı yapılandırın.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
  .fromEnvironment()
  .build();

Yapılandırma yaklaşımlarını birleştirme

GoogleAdsClient ve oluşturucu, farklı yapılandırma stratejilerinin birleştirilmesini destekler. Örneğin, aşağıdaki snippet'i kullanarak örneğin kimlik bilgilerini yapılandırmak için ortam değişkenlerini ve diğer özelliklerdeki bir özellikler dosyasını kullanabilirsiniz.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
    .fromEnvironment()
    .fromPropertiesFile()
    .build();

Bu örnekte istemci kitaplığı hem ortam değişkeniyle hem de özellikler dosyasındaki bir girişle tanımlanan tüm özellikler için özellikler dosyasındaki değeri kullanır. Karşıt davranış için fromEnvironment() tarihinden önce fromPropertiesFile() numaralı telefonu aramanız yeterlidir.

build() çalışmadan önce oluşturucunun diğer yapılandırma yöntemlerini kullanarak çalışma zamanında daha fazla değişiklik yapabilirsiniz.

Java için AdWords API istemci kitaplığındaki yapılandırma dosyalarını yeniden kullanma

AdWords API için kullandığınız ads.properties dosyasının aynısını kullanabilirsiniz. Aşağıdaki anahtarların satırlarını kopyalayıp api.adwords anahtardaki api.adwords ön ekini api.googleads olarak değiştirmeniz yeterlidir:

api.adwords.developerToken     --> api.googleads.developerToken
# For desktop or web OAuth credentials:
api.adwords.clientId           --> api.googleads.clientId
api.adwords.clientSecret       --> api.googleads.clientSecret
api.adwords.refreshToken       --> api.googleads.refreshToken
# For service account OAuth credentials:
api.adwords.jsonKeyFilePath    --> api.googleads.serviceAccountSecretsPath
api.adwords.serviceAccountUser --> api.googleads.serviceAccountUser

Yönetici hesabı olarak kimlik doğrulaması yapıyorsanız ek olarak şunları belirtmeniz gerekir:

api.googleads.loginCustomerId --> Manager account ID (with hyphens removed).