設定

程式庫會在 System.getProperty("user.home") + "/ads.properties"。您可以覆寫這項設定 使用以下程式碼建構 GoogleAdsClient 時,在執行階段使用的路徑和檔案名稱 使用下列任一機制:

  • 呼叫 fromPropertiesFile(PATH_TO_CONFIG_FILE),位置:PATH_TO_CONFIG_FILE 是設定檔的路徑和檔案名稱。
  • 將環境變數 GOOGLE_ADS_CONFIGURATION_FILE_PATH 設為 設定檔的路徑和檔案名稱,然後呼叫 fromPropertiesFile()

設定檔的格式是 Java 資源 分為鍵/值組合檔案支援的鍵會因所選的 驗證流程

支援的電腦版和網頁應用程式流程金鑰

如果您使用電腦版web 應用程式流程,支援的金鑰 如下:

# 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

# Maximum allowed response payload size, in bytes.
# Customize this to allow response sizes for GoogleAdsService.search and
# GoogleAdsService.searchStream API calls to exceed the default limit of 64MB.
# api.googleads.maxInboundMessageBytes=INSERT_MAX_INBOUND_MESSAGE_BYTES_HERE

服務帳戶支援的金鑰

如果您使用服務帳戶 支援的鍵如下:

# 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

使用環境變數

該程式庫支援所有 Google Ads API 通用的環境變數 用戶端程式庫。下表顯示了 環境變數。

設定檔屬性 環境變數
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
api.googleads.maxInboundMessageBytes GOOGLE_ADS_MAX_INBOUND_MESSAGE_BYTES

設定適當的環境變數之後,請設定 GoogleAdsClient,方法是在建構工具上呼叫 fromEnvironment()

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

結合設定方法

GoogleAdsClient 及其建構工具支援合併不同設定 舉例來說,您可以使用環境變數 執行個體憑證和其他屬性的屬性檔案 下列程式碼片段。

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

在本範例中,用戶端程式庫會使用屬性檔案中的值 對透過環境變數和 輸入屬性檔案中的一個項目如果是相反行為,只要呼叫 fromEnvironment()fromPropertiesFile()

在執行階段中,您可以使用建構工具的其他設定進一步變更 方法,然後再呼叫 build()