Konfiguracja

Biblioteka szuka pliku konfiguracji w folderze System.getProperty("user.home") + "/ads.properties". Możesz zastąpić tę ścieżkę i nazwę pliku na bieżąco podczas tworzenia obiektu GoogleAdsClient za pomocą jednego z tych mechanizmów:

  • Wywołaj fromPropertiesFile(PATH_TO_CONFIG_FILE), gdzie PATH_TO_CONFIG_FILE to ścieżka i nazwa pliku konfiguracji.
  • Ustaw zmienną środowiskową GOOGLE_ADS_CONFIGURATION_FILE_PATH na ścieżkę i nazwę pliku konfiguracji, a następnie wywołaj fromPropertiesFile().

Format pliku konfiguracji jest taki sam jak plik Właściwości Javy zawierający pary klucz-wartość. Obsługiwane klucze różnią się w zależności od wybranego procesu uwierzytelniania.

Obsługiwane klucze przepływów aplikacji na komputer i w aplikacjach internetowych

Jeśli korzystasz z aplikacji komputerowej lub internetowej, obsługiwane klucze to:

# 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

Obsługiwane klucze dla kont usługi

Jeśli korzystasz z procesu konta usługi, obsługiwane są te klucze:

# 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

Korzystanie ze zmiennych środowiskowych

Biblioteka obsługuje wszystkie zmienne środowiskowe wspólne dla wszystkich bibliotek klienta interfejsu Google Ads API. W tabeli poniżej znajdziesz zmienne środowiskowe odpowiadające poszczególnym właściwościom pliku konfiguracji.

Właściwość pliku konfiguracji Zmienna środowiskowa
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

Po ustawieniu odpowiednich zmiennych środowiskowych skonfiguruj GoogleAdsClient, wywołując fromEnvironment() w konstruktorze.

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

Łączenie metod konfiguracji

GoogleAdsClient i jego kreator obsługują połączenie różnych strategii konfiguracji. Możesz na przykład użyć zmiennych środowiskowych, aby skonfigurować dane logowania do instancji i plik właściwości dla innych atrybutów przy użyciu podanego niżej fragmentu kodu.

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

W tym przykładzie biblioteka klienta użyje wartości z pliku właściwości dla każdego atrybutu zdefiniowanego zarówno za pomocą zmiennej środowiskowej, jak i wpisu w pliku właściwości. Aby zachować odwrotność, po prostu wywołaj funkcję fromPropertiesFile() przed funkcją fromEnvironment().

Przed wywołaniem funkcji build() możesz wprowadzić dalsze zmiany w czasie działania, korzystając z innych metod konfiguracji konstruktora.