Kitaplık, System.getProperty("user.home") + "/ads.properties"
konumunda bir yapılandırma dosyası arar. Aşağıdaki mekanizmalardan birini kullanarak GoogleAdsClient
oluştururken çalışma zamanında bu yolu ve dosya adını geçersiz kılabilirsiniz:
fromPropertiesFile(PATH_TO_CONFIG_FILE)
yöntemini çağırın (buradaPATH_TO_CONFIG_FILE
, yapılandırma dosyanızın yolu ve dosya adıdır).GOOGLE_ADS_CONFIGURATION_FILE_PATH
ortam değişkenini yapılandırma dosyanızın yolu ve dosya adıyla ayarlayın, ardındanfromPropertiesFile()
işlevini çağırın.
Yapılandırma dosyasının biçimi, anahtar/değer çiftleri içeren Java Özellikler dosyasıdır. Desteklenen anahtarlar, seçilen kimlik doğrulama akışına bağlı olarak farklılık gösterir.
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ında ortak olan tüm ortam değişkenlerini destekler. Aşağıdaki tabloda, her bir 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()
yöntemini ç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şturucusu, farklı yapılandırma stratejilerini birleştirmeyi destekler. Örneğin, aşağıdaki snippet'i kullanarak örneğin kimlik bilgilerini yapılandırmak için ortam değişkenlerini, diğer özellikler için "özellikler" dosyasını kullanabilirsiniz.
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
.fromEnvironment()
.fromPropertiesFile()
.build();
Bu örnekte istemci kitaplığı, özellikler dosyasındaki değeri hem ortam değişkeni hem de özellikler dosyasındaki bir giriş aracılığıyla tanımlanan herhangi bir özellik için kullanır. Karşıt davranış için fromEnvironment()
tarihinden önce fromPropertiesFile()
işlevini aramanız yeterlidir.
build()
yöntemini çağırmadan ö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ı 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ğruluyorsanız ayrıca aşağıdakileri de belirtmeniz gerekir:
api.googleads.loginCustomerId --> Manager account ID (with hyphens removed).