Biblioteka szuka pliku konfiguracji w
System.getProperty("user.home") + "/ads.properties"
. Możesz zastąpić tę ścieżkę i nazwę pliku w czasie działania programu, tworząc GoogleAdsClient
za pomocą jednego z tych mechanizmów:
- Wywołaj
fromPropertiesFile(PATH_TO_CONFIG_FILE)
, gdziePATH_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łajfromPropertiesFile()
.
Format pliku konfiguracyjnego to format pliku Properties w języku Java, który zawiera pary klucz-wartość. Obsługiwane klucze różnią się w zależności od wybranego procesu uwierzytelniania.
Obsługiwane klucze w przypadku aplikacji komputerowych i internetowych
Jeśli używasz przepływu aplikacji na komputer lub internetowej, obsługiwane klucze są następujące:
# 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
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
Używanie zmiennych środowiskowych
Biblioteka obsługuje wszystkie zmienne środowiskowe wspólne dla wszystkich bibliotek klienta interfejsu Google Ads API. W tabeli poniżej znajdziesz zmienną środowiskową odpowiadającą każdej właściwości pliku konfiguracyjnego.
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 |
api.googleads.maxInboundMessageBytes |
GOOGLE_ADS_MAX_INBOUND_MESSAGE_BYTES |
Po ustawieniu odpowiednich zmiennych środowiskowych skonfiguruj GoogleAdsClient
, wywołując fromEnvironment()
w konstruktorze.
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
.fromEnvironment()
.build();
Łączenie podejść do konfiguracji
GoogleAdsClient
i jego konstruktor obsługują łączenie różnych strategii konfiguracji. Możesz na przykład użyć zmiennych środowiskowych do skonfigurowania danych logowania instancji i pliku właściwości dla innych atrybutów, korzystając z tego fragmentu kodu:
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
.fromEnvironment()
.fromPropertiesFile()
.build();
W tym przykładzie biblioteka klienta będzie używać wartości z pliku właściwości w przypadku każdego atrybutu, który jest zdefiniowany zarówno za pomocą zmiennej środowiskowej, jak i wpisu w pliku właściwości. Aby uzyskać odwrotne działanie, wywołaj fromPropertiesFile()
przed fromEnvironment()
.
Przed wywołaniem metody build()
możesz wprowadzić dodatkowe zmiany w czasie działania programu, korzystając z innych metod konfiguracji narzędzia do tworzenia.