Setelan Global

Class GADMobileAds menyediakan setelan global untuk mengontrol informasi tertentu yang dikumpulkan oleh Mobile Ads SDK.

Kontrol volume iklan video

Jika aplikasi Anda memiliki kontrol volume sendiri, seperti musik khusus atau volume efek suara, pengungkapan volume aplikasi ke Google Mobile Ads SDK memungkinkan iklan video mengikuti setelan volume aplikasi. Hal ini memastikan pengguna menerima iklan video dengan volume audio yang diharapkan.

Volume perangkat, yang dikontrol melalui tombol volume atau penggeser volume tingkat OS, menentukan volume untuk output audio perangkat. Namun, aplikasi dapat menyesuaikan tingkat volume secara independen berdasarkan volume perangkat untuk menyesuaikan pengalaman audio.

Untuk format iklan Layar Pembuka Aplikasi, Banner, Interstisial, Reward, dan Interstisial Reward, Anda dapat melaporkan volume aplikasi relatif ke Google Mobile Ads SDK dengan menetapkan properti applicationVolume. Nilai volume iklan yang valid berkisar dari 0.0 (senyap) hingga 1.0 (volume perangkat saat ini). Berikut adalah contoh cara melaporkan volume aplikasi relatif ke SDK:

Swift

func viewDidLoad() {
  super.viewDidLoad()
  // Set app volume to be half of the current device volume.
  GADMobileAds.sharedInstance().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;
  ...
}

Untuk format iklan Layar Pembuka Aplikasi, Banner, Interstisial, Reward, dan Interstisial Reward, Anda dapat memberi tahu Google Mobile Ads SDK bahwa volume aplikasi telah dinonaktifkan dengan menyetel properti applicationMuted:

Swift

GADMobileAds.sharedInstance().applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

Secara default, applicationVolume disetel ke 1 (volume perangkat saat ini) dan applicationMuted disetel ke NO.

Iklan native

Lihat GADVideoOptions untuk mendapatkan petunjuk cara mengontrol setelan bisukan. Untuk iklan native, tidak ada dukungan untuk kontrol volume kustom.

Sesi audio

Sesi audio memungkinkan Anda mengekspresikan kepada sistem maksud Anda untuk perilaku audio aplikasi. Informasi tambahan tentang sesi audio dapat ditemukan di Audio Session Programming Guide Apple. Opsi yang tersedia untuk mengelola audio Google Mobile Ads SDK adalah melalui properti audioVideoManager.

Jika Anda tidak menggunakan audio di aplikasi, Anda tidak perlu menggunakan API ini. Google Mobile Ads SDK secara otomatis mengelola kategori sesi audio saat memutar audio. Jika Anda memutar audio di aplikasi dan ingin kontrol yang lebih ketat terkait bagaimana dan kapan Google Mobile Ads SDK memutar audio, Anda dapat menggunakan API ini.

Di pengelola video audio, Anda dapat menetapkan properti audioSessionIsApplicationManaged ke YES jika Anda ingin bertanggung jawab untuk mengelola sendiri kategori sesi audio.

Jika ingin mengelola kategori sesi audio, Anda dapat menerapkan GADAudioVideoManagerDelegate dan menetapkan properti delegate di pengelola video audio agar diberi tahu tentang peristiwa pemutaran video dan audio iklan. Kemudian, Anda harus mengubah kategori sesi audio ke kategori yang relevan sesuai dengan Panduan Pemrograman Sesi Audio Apple.

Berikut adalah contoh kode sederhana yang menunjukkan pendekatan yang direkomendasikan jika aplikasi Anda memutar musik, menggunakan API di atas:

Swift

func setUp() {
  GADMobileAds.sharedInstance().audioVideoManager.delegate = self
  GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = false
}

// MARK: - GADAudioVideoManagerDelegate
func audioVideoManagerWillPlayAudio(_ audioVideoManager: GADAudioVideoManager) {
  // The 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()
}

func audioVideoManagerDidStopPlayingAudio(_ audioVideoManager: GADAudioVideoManager) {
  // The 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()
}

Objective-C

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

#pragma mark - GADAudioVideoManagerDelegate

- (void)audioVideoManagerWillPlayAudio:(GADAudioVideoManager *)audioVideoManager {
  // The 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 {
    // The 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];
}

Pelaporan kerusakan

Google Mobile Ads SDK memeriksa pengecualian yang terjadi di aplikasi iOS dan mencatatnya jika disebabkan oleh SDK. Pengecualian ini kemudian akan ditangani di versi SDK mendatang.

Pelaporan kerusakan diaktifkan secara default. Jika tidak ingin pengecualian terkait SDK direkam, Anda dapat menonaktifkan fitur ini dengan memanggil metode disableSDKCrashReporting. Waktu terbaik untuk memanggil metode ini adalah saat aplikasi diluncurkan:

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

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

    GADMobileAds.disableSDKCrashReporting()
    return true
  }
}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

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

  [GADMobileAds disableSDKCrashReporting];
  return YES;
}

@end

Jika aplikasi Anda memiliki persyaratan khusus, Anda dapat menetapkan NSUserDefaults gad_has_consent_for_cookies opsional. Google Mobile Ads SDK memungkinkan iklan terbatas (LTD) jika preferensi gad_has_consent_for_cookies ditetapkan ke nol.

Swift

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

Objective-C

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