การกำหนดค่า

ไลบรารีจะค้นหาไฟล์การกำหนดค่าใน System.getProperty("user.home") + "/ads.properties" คุณสามารถลบล้างค่านี้ เส้นทางและชื่อไฟล์ขณะรันไทม์เมื่อสร้าง GoogleAdsClient โดยใช้ กลไกใดกลไกหนึ่งต่อไปนี้

  • โทรหา fromPropertiesFile(PATH_TO_CONFIG_FILE) ที่ PATH_TO_CONFIG_FILE คือเส้นทางและชื่อไฟล์ของไฟล์การกำหนดค่า
  • ตั้งค่าตัวแปรสภาพแวดล้อม GOOGLE_ADS_CONFIGURATION_FILE_PATH เป็น เส้นทางและชื่อไฟล์ของไฟล์การกำหนดค่า จากนั้นให้เรียกใช้ fromPropertiesFile()

รูปแบบไฟล์การกำหนดค่าเป็นรูปแบบไฟล์ของ Java พร็อพเพอร์ตี้ ไฟล์ของคู่คีย์-ค่า คีย์ที่รองรับจะแตกต่างกันไปตามคีย์ที่เลือก ขั้นตอนการตรวจสอบสิทธิ์

คีย์ที่รองรับสำหรับโฟลว์บนเดสก์ท็อปและเว็บแอปพลิเคชัน

หากคุณใช้เดสก์ท็อปหรือ การทำงานของแอปพลิเคชันเว็บ คีย์ที่รองรับ ดังนี้

# 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();

ในตัวอย่างนี้ ไลบรารีของไคลเอ็นต์จะใช้ค่าจากไฟล์พร็อพเพอร์ตี้ สำหรับแอตทริบิวต์ใดๆ ก็ตามที่กำหนดไว้ทั้งผ่านตัวแปรสภาพแวดล้อมและ ในไฟล์พร็อพเพอร์ตี้ สำหรับลักษณะการทำงานในทางตรงกันข้าม ให้เรียก fromPropertiesFile() ก่อน fromEnvironment()

คุณทำการเปลี่ยนแปลงเพิ่มเติมระหว่างรันไทม์ได้โดยใช้การกำหนดค่าอื่นๆ ของเครื่องมือสร้าง วิธีการก่อนเรียกใช้ build()