Konfiguracja

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Biblioteka szuka pliku konfiguracji w System.getProperty("user.home") + "/ads.properties". Tę ścieżkę i nazwę pliku możesz zastąpić w czasie wykonywania, tworząc GoogleAdsClient z użyciem 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().

Plik konfiguracji ma format Właściwości Javy par klucz-wartość. Obsługiwane klucze różnią się w zależności od wybranego procesu uwierzytelniania.

Obsługiwane klucze dla aplikacji komputerowych i internetowych

Jeśli korzystasz z procesu tworzenia aplikacji na komputery lub internetowej, obsługiwane klucze:

# 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 kont usługi

Jeśli używasz przepływu konta usługi, obsługiwane klucze są następujące:

# 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. Poniższa tabela przedstawia zmienną środowiskową, która odpowiada każdej właściwości 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

Gdy ustawisz odpowiednie zmienne środowiskowe, skonfiguruj GoogleAdsClient, wywołując fromEnvironment() w konstruktorze.

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

Podejścia do konfiguracji

GoogleAdsClient i jego kreator umożliwiają łączenie różnych strategii konfiguracji. Na przykład możesz użyć zmiennych środowiskowych do skonfigurowania danych logowania instancji i pliku właściwości innych atrybutów za pomocą poniższego fragmentu.

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

W tym przykładzie biblioteka klienta użyje wartości z pliku właściwości dla dowolnego atrybutu zdefiniowanego za pomocą zmiennej środowiskowej i wpisu w pliku właściwości. W przeciwnym razie po prostu wywołaj fromPropertiesFile() przed fromEnvironment().

Dalsze zmiany możesz wprowadzać w czasie działania, korzystając z metod konfiguracji oraz kreatora, zanim wywołasz funkcję build().

Ponowne wykorzystanie plików konfiguracyjnych z biblioteki klienta interfejsu API AdWords dla języka Java

Możesz użyć tego samego pliku ads.properties, co w przypadku interfejsu AdWords API. Skopiuj wiersze kluczy i zmień prefiks api.adwords w każdym kluczu z api.adwords na api.googleads:

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

Jeśli uwierzytelniasz się jako konto menedżera, musisz też podać:

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