設定
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
程式庫會在 System.getProperty("user.home") + "/ads.properties"
中尋找設定檔。建構 GoogleAdsClient
時,您可以使用下列任一機制,在執行階段覆寫這個路徑和檔案名稱:
- 呼叫
fromPropertiesFile(PATH_TO_CONFIG_FILE)
,其中 PATH_TO_CONFIG_FILE
是設定檔的路徑和檔案名稱。
- 將環境變數
GOOGLE_ADS_CONFIGURATION_FILE_PATH
設為設定檔的路徑和檔案名稱,然後呼叫 fromPropertiesFile()
。
設定檔的格式為鍵/值組合的 Java Properties 檔案。支援的金鑰會因所選的驗證流程而異。
電腦和網頁應用程式流程支援的金鑰
如果您使用桌面或網頁應用程式流程,支援的按鍵如下:
# 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 |
設定適當的環境變數後,請在建構工具上呼叫 fromEnvironment()
,設定 GoogleAdsClient
。
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
.fromEnvironment()
.build();
結合設定方法
GoogleAdsClient
和其建構工具支援合併不同的設定策略。舉例來說,您可以使用環境變數設定執行個體的憑證,並使用下列程式碼片段設定其他屬性的屬性檔案。
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
.fromEnvironment()
.fromPropertiesFile()
.build();
在本例中,如果屬性是透過環境變數和屬性檔案中的項目定義,用戶端程式庫會使用屬性檔案中的值。如要反向操作,只要在 fromEnvironment()
之前呼叫 fromPropertiesFile()
即可。
呼叫 build()
之前,您可以使用建構工具的其他設定方法,在執行階段進行進一步變更。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-08-26 (世界標準時間)。
[null,null,["上次更新時間:2025-08-26 (世界標準時間)。"],[[["\u003cp\u003eThe Google Ads API Java client library uses a configuration file (\u003ccode\u003eads.properties\u003c/code\u003e by default) or environment variables for settings like credentials and customer IDs.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can authenticate using desktop/web application flows (client ID, secret, refresh token) or service accounts (JSON key file path, impersonated email).\u003c/p\u003e\n"],["\u003cp\u003eThe configuration file format follows Java Properties standards, with specific keys for each authentication method.\u003c/p\u003e\n"],["\u003cp\u003eEnvironment variables can override or complement the configuration file, offering flexibility in setting up the client.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eGoogleAdsClient\u003c/code\u003e builder allows combining configuration approaches, prioritizing the last method called for overlapping settings.\u003c/p\u003e\n"]]],[],null,["# Configuration\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nThe library looks for a configuration file in\n`System.getProperty(\"user.home\") + \"/ads.properties\"`. You can override this\npath and file name at runtime when constructing the `GoogleAdsClient` using\neither of the following mechanisms:\n\n- Call `fromPropertiesFile(PATH_TO_CONFIG_FILE)`, where `PATH_TO_CONFIG_FILE` is the path and file name of your configuration file.\n- Set the environment variable `GOOGLE_ADS_CONFIGURATION_FILE_PATH` to the path and file name of your configuration file, and then call `fromPropertiesFile()`.\n\nThe format of the configuration file is that of a Java\n[Properties](//docs.oracle.com/javase/tutorial/essential/environment/properties.html)\nfile of key value pairs. The supported keys vary depending on the chosen\nauthentication flow.\n\nSupported keys for desktop and web application flows\n----------------------------------------------------\n\nIf you are using the [desktop](/google-ads/api/docs/client-libs/java/oauth-desktop) or\n[web](/google-ads/api/docs/client-libs/java/oauth-web) application flow, the supported keys\nare as follows: \n\n # Credential for accessing Google's OAuth servers.\n # Provided by console.cloud.google.com.\n api.googleads.clientId=INSERT_CLIENT_ID_HERE\n\n # Credential for accessing Google's OAuth servers.\n # Provided by console.cloud.google.com.\n api.googleads.clientSecret=INSERT_CLIENT_SECRET_HERE\n\n # Renewable OAuth credential associated with 1 or more Google Ads accounts.\n api.googleads.refreshToken=INSERT_REFRESH_TOKEN_HERE\n\n # Token which provides access to the Google Ads API in general. It does not\n # grant access to any particular ad account (OAuth is used for this purpose).\n api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE\n\n # Required for manager accounts only: Specify the login customer ID used to\n # authenticate API calls. This will be the customer ID of the authenticated\n # manager account. You can also specify this later in code if your application\n # uses multiple manager account + OAuth pairs.\n #\n # api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE\n\n # Only required if explicitly instructed by the service documentation.\n # api.googleads.linkedCustomerId=INSERT_LINKED_CUSTOMER_ID_HERE\n\n # Maximum allowed response payload size, in bytes.\n # Customize this to allow response sizes for GoogleAdsService.search and\n # GoogleAdsService.searchStream API calls to exceed the default limit of 64MB.\n # api.googleads.maxInboundMessageBytes=INSERT_MAX_INBOUND_MESSAGE_BYTES_HERE\n\nSupported keys for service accounts\n-----------------------------------\n\nIf you are using the [service account](/google-ads/api/docs/client-libs/java/oauth-service)\nflow, the supported keys are as follows: \n\n # Path to the service account secrets file in JSON format.\n # Provided by console.cloud.google.com.\n api.googleads.serviceAccountSecretsPath=INSERT_PATH_TO_JSON_HERE\n\n # Email address of the user to impersonate.\n # This should be a user who has access to your Google Ads account and is in the same\n # Google Apps Domain as the service account.\n api.googleads.serviceAccountUser=INSERT_USER_EMAIL_ADDRESS_HERE\n\n # Token which provides access to the Google Ads API in general. It does not\n # grant access to any particular ad account (OAuth is used for this purpose).\n api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE\n\n # Required for manager accounts only: Specify the login customer ID used to\n # authenticate API calls. This will be the customer ID of the authenticated\n # manager account. You can also specify this later in code if your application\n # uses multiple manager account + OAuth pairs.\n #\n # api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE\n\nUsing environment variables\n---------------------------\n\nThe library supports all of the [environment variables common to all Google Ads API\nclient libraries](/google-ads/api/docs/client-libs#configuration). The table below shows the\nenvironment variable that corresponds to each configuration file property.\n\n| Configuration file property | Environment variable |\n|-------------------------------------------|----------------------------------------|\n| `api.googleads.developerToken` | `GOOGLE_ADS_DEVELOPER_TOKEN` |\n| `api.googleads.clientId` | `GOOGLE_ADS_CLIENT_ID` |\n| `api.googleads.clientSecret` | `GOOGLE_ADS_CLIENT_SECRET` |\n| `api.googleads.refreshToken` | `GOOGLE_ADS_REFRESH_TOKEN` |\n| `api.googleads.serviceAccountSecretsPath` | `GOOGLE_ADS_JSON_KEY_FILE_PATH` |\n| `api.googleads.serviceAccountUser` | `GOOGLE_ADS_IMPERSONATED_EMAIL` |\n| `api.googleads.loginCustomerId` | `GOOGLE_ADS_LOGIN_CUSTOMER_ID` |\n| `api.googleads.linkedCustomerId` | `GOOGLE_ADS_LINKED_CUSTOMER_ID` |\n| `api.googleads.maxInboundMessageBytes` | `GOOGLE_ADS_MAX_INBOUND_MESSAGE_BYTES` |\n\nOnce you have set the appropriate environment variables, configure your\n`GoogleAdsClient` by calling `fromEnvironment()` on the builder. \n\n GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()\n .fromEnvironment()\n .build();\n\nCombining configuration approaches\n----------------------------------\n\nThe `GoogleAdsClient` and its builder support combining different configuration\nstrategies. For example, you can use environment variables to configure the\ncredentials of the instance and a properties file for other attributes using\nthe following snippet. \n\n GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()\n .fromEnvironment()\n .fromPropertiesFile()\n .build();\n\nIn this example, the client library will use the value from the properties file\nfor any attribute that is defined both through its environment variable and an\nentry in the properties file. For the opposite behavior, simply call\n`fromPropertiesFile()` before `fromEnvironment()`.\n\nYou can make further changes at runtime using the builder's other configuration\nmethods before calling `build()`."]]