การตั้งค่าส่วนกลาง

เลือกแพลตฟอร์ม: Android iOS Unity

คลาส GADMobileAds มีการตั้งค่าส่วนกลางสำหรับการควบคุมข้อมูลบางอย่างที่ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google รวบรวม

การควบคุมระดับเสียงของโฆษณาวิดีโอ

หากแอปของคุณมีการควบคุมระดับเสียงในตัว เช่น ระดับเสียงเพลงหรือเอฟเฟกต์เสียงที่กำหนดเอง การเปิดเผยระดับเสียงของแอปต่อ Google Mobile Ads SDK จะช่วยให้โฆษณาวิดีโอเล่นตามระดับเสียงที่ตั้งค่าไว้ในแอปได้ ซึ่งจะช่วยให้ผู้ใช้ได้ยินเสียงโฆษณาวิดีโออย่างที่ควรจะเป็น

ระดับเสียงของอุปกรณ์ ซึ่งควบคุมผ่านปุ่มปรับระดับเสียงหรือแถบเลื่อนปรับระดับเสียงในระดับระบบปฏิบัติการ จะกำหนดระดับเสียงสำหรับเอาต์พุตเสียงของอุปกรณ์ อย่างไรก็ตาม แอปสามารถปรับระดับเสียงโดยอิสระ เมื่อเทียบกับระดับเสียงของอุปกรณ์เพื่อปรับแต่งประสบการณ์ด้านเสียง

สำหรับรูปแบบโฆษณา App Open, แบนเนอร์, โฆษณาคั่นระหว่างหน้า, โฆษณาที่มีการให้รางวัล และโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล คุณสามารถรายงานปริมาณแอปที่เกี่ยวข้องไปยัง Google Mobile Ads SDK ได้โดย การตั้งค่าพร็อพเพอร์ตี้ applicationVolume ค่าระดับเสียงโฆษณาที่ใช้ได้จะอยู่ในช่วง 0.0 (ไม่มีเสียง) ถึง 1.0 (ระดับเสียงปัจจุบันของอุปกรณ์) ตัวอย่างวิธี รายงานปริมาณแอปที่เกี่ยวข้องไปยัง SDK

Swift

func viewDidLoad() {
  super.viewDidLoad()
  // Set app volume to be half of the current device volume.
  MobileAds.shared.applicationVolume = 0.5
  ...
}

Objective-C

- (void)viewDidLoad {
  [super viewDidLoad];
  // Set app volume to be half of the current device volume.
  GADMobileAds.sharedInstance.applicationVolume = 0.5;
  ...
}

สำหรับรูปแบบโฆษณา App Open, แบนเนอร์, โฆษณาคั่นระหว่างหน้า, โฆษณาที่มีการให้รางวัล และโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล คุณสามารถแจ้ง Google Mobile Ads SDK ว่าแอปปิดเสียง แล้วได้โดยการตั้งค่าพร็อพเพอร์ตี้ applicationMuted ดังนี้

Swift

MobileAds.shared.applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

โดยค่าเริ่มต้น applicationVolume จะตั้งค่าเป็น 1 (ระดับเสียงปัจจุบันของอุปกรณ์) และ applicationMuted จะตั้งค่าเป็น NO

โฆษณาเนทีฟ

ดูวิธีการควบคุมการตั้งค่าปิดเสียงได้ที่ GADVideoOptions สำหรับโฆษณาเนทีฟ ระบบไม่รองรับการควบคุมระดับเสียงที่กำหนดเอง

เซสชันเสียง

เซสชันเสียงช่วยให้คุณแสดงความตั้งใจต่อระบบเกี่ยวกับลักษณะการทำงานของเสียงในแอป ดูข้อมูลเพิ่มเติมเกี่ยวกับเซสชันเสียงได้ในคู่มือการเขียนโปรแกรมเซสชันเสียงของ Apple ตัวเลือกที่มีสำหรับการจัดการเสียงของ Google Mobile Ads SDK คือผ่านพร็อพเพอร์ตี้ audioVideoManager

หากไม่ได้ใช้เสียงในแอป คุณก็ไม่จำเป็นต้องใช้ API เหล่านี้ Google Mobile Ads SDK จะจัดการหมวดหมู่เซสชันเสียงโดยอัตโนมัติเมื่อ เล่นเสียง หากคุณเล่นเสียงในแอปและต้องการควบคุมอย่างเข้มงวดมากขึ้นเกี่ยวกับ วิธีและเวลาที่ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เล่นเสียง คุณสามารถใช้ API เหล่านี้ได้

ในเครื่องมือจัดการวิดีโอเสียง คุณสามารถตั้งค่าพร็อพเพอร์ตี้ audioSessionIsApplicationManaged เป็น YES หากต้องการรับผิดชอบในการจัดการหมวดหมู่เซสชันเสียงด้วยตนเอง

หากต้องการจัดการหมวดหมู่เซสชันเสียง คุณสามารถใช้ GADAudioVideoManagerDelegate และตั้งค่าพร็อพเพอร์ตี้ delegate ในเครื่องมือจัดการวิดีโอเสียงเพื่อรับการแจ้งเตือนเกี่ยวกับเหตุการณ์การเล่นโฆษณาวิดีโอและเสียง จากนั้นคุณควรเปลี่ยนหมวดหมู่เซสชันเสียงเป็นหมวดหมู่ที่เกี่ยวข้องตามคู่มือการเขียนโปรแกรมเซสชันเสียงของ Apple

ตัวอย่างโค้ดแบบย่อที่แสดงแนวทางที่แนะนำหากแอปของคุณเล่นเพลงโดยใช้ API ข้างต้นมีดังนี้

Swift

func setUp() {
  MobileAds.shared.audioVideoManager.delegate = self
  MobileAds.shared.audioVideoManager.audioSessionIsApplicationManaged = false
}

// MARK: - GADAudioVideoManagerDelegate
func audioVideoManagerWillPlayAudio(_ audioVideoManager: GADAudioVideoManager) {
  // The Google Mobile Ads SDK is notifying your app that it will play audio. You
  // could optionally pause music depending on your apps design.
  MyAppObject.shared.pauseAllMusic()
}

func audioVideoManagerDidStopPlayingAudio(_ audioVideoManager: GADAudioVideoManager) {
  // The Google Mobile Ads SDK is notifying your app that it has stopped playing
  // audio. Depending on your design, you could resume music here.
  MyAppObject.shared.resumeAllMusic()
}

Objective-C

- (void)setUp {
  GADMobileAds.sharedInstance.audioVideoManager.delegate = self;
  GADMobileAds.sharedInstance.audioVideoManager.audioSessionIsApplicationManaged = NO;
}

#pragma mark - GADAudioVideoManagerDelegate

- (void)audioVideoManagerWillPlayAudio:(GADAudioVideoManager *)audioVideoManager {
  // Google Mobile Ads SDK is notifying your app that it will play audio. You
  // could optionally pause music depending on your apps design.
  [MyAppObject.sharedInstance pauseAllMusic];
}

- (void)audioVideoManagerDidStopPlayingAudio:(GADAudioVideoManager *)audioVideoManager {
    // Google Mobile Ads SDK is notifying your app that it has stopped playing
    // audio. Depending on your design, you could resume music here.
  [MyAppObject.sharedInstance resumeAllMusic];
}

รายงานข้อขัดข้อง

Google Mobile Ads SDK จะตรวจสอบข้อยกเว้นที่เกิดขึ้นในแอป iOS และ บันทึกไว้หากเกิดจาก SDK จากนั้นเราจะ แก้ไขข้อยกเว้นเหล่านี้ใน SDK เวอร์ชันต่อๆ ไป

การรายงานข้อขัดข้องจะเปิดใช้อยู่โดยค่าเริ่มต้น หากไม่ต้องการบันทึกข้อยกเว้นที่เกี่ยวข้องกับ SDK คุณสามารถปิดใช้ฟีเจอร์นี้ได้โดยเรียกใช้เมธอด disableSDKCrashReporting ช่วงเวลาที่ดีที่สุดในการเรียกใช้เมธอดนี้คือเมื่อ แอปเปิดตัว

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  func application(_ application: UIApplication,
      didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    MobileAds.shared.disableSDKCrashReporting()
    return true
  }
}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  [GADMobileAds disableSDKCrashReporting];
  return YES;
}

@end

หากแอปมีข้อกำหนดพิเศษ คุณสามารถตั้งค่าNSUserDefaults gad_has_consent_for_cookiesที่ไม่บังคับได้ Google Mobile Ads SDK จะเปิดใช้โฆษณาแบบจำกัด (LTD) หากตั้งค่าgad_has_consent_for_cookiesเป็น 0

Swift

UserDefaults.standard.set(0, forKey: "gad_has_consent_for_cookies")

Objective-C

NSUserDefaults.standardUserDefaults().setObject(Int(0),
    forKey: "gad_has_consent_for_cookies");