تنظیمات جهانی

پلتفرم مورد نظر: اندروید، iOS و یونیتی

کلاس GADMobileAds تنظیمات سراسری برای کنترل اطلاعات خاص جمع‌آوری‌شده توسط SDK تبلیغات موبایلی گوگل ارائه می‌دهد.

کنترل صدای تبلیغات ویدیویی

اگر برنامه شما کنترل‌های صدای مخصوص به خود را دارد، مانند موسیقی سفارشی یا میزان صدای جلوه‌های صوتی، افشای میزان صدای برنامه به SDK تبلیغات موبایلی گوگل، به تبلیغات ویدیویی این امکان را می‌دهد که از تنظیمات صدای برنامه پیروی کنند. این امر تضمین می‌کند که کاربران تبلیغات ویدیویی را با میزان صدای مورد انتظار دریافت می‌کنند.

میزان صدای دستگاه که از طریق دکمه‌های تنظیم صدا یا اسلایدر صدای سیستم عامل کنترل می‌شود، میزان صدای خروجی دستگاه را تعیین می‌کند. با این حال، برنامه‌ها می‌توانند به طور مستقل میزان صدا را نسبت به صدای دستگاه تنظیم کنند تا تجربه صوتی را متناسب سازند.

برای فرمت‌های تبلیغات بینابینی، بنری، بینابینی، پاداشی و پاداشی، می‌توانید با تنظیم ویژگی applicationVolume میزان حجم نسبی برنامه را به SDK تبلیغات موبایلی گوگل گزارش دهید. مقادیر معتبر حجم تبلیغات از 0.0 (بی‌صدا) تا 1.0 (حجم فعلی دستگاه) متغیر است. در اینجا مثالی از نحوه گزارش حجم نسبی برنامه به SDK آورده شده است:

سویفت

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

هدف-سی

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

برای فرمت‌های تبلیغات App Open، Banner، Interstitial، Rewarded و Rewarded Interstitial، می‌توانید با تنظیم ویژگی applicationMuted به Google Mobile Ads SDK اطلاع دهید که صدای برنامه بی‌صدا شده است:

سویفت

MobileAds.shared.applicationMuted = true

هدف-سی

GADMobileAds.sharedInstance.applicationMuted = YES;

به طور پیش‌فرض، applicationVolume روی 1 (میزان صدای فعلی دستگاه) و applicationMuted روی NO تنظیم شده است.

تبلیغات بومی

برای دستورالعمل‌های مربوط به کنترل تنظیمات بی‌صدا، به GADVideoOptions مراجعه کنید. برای تبلیغات بومی، پشتیبانی از کنترل صدای سفارشی وجود ندارد.

جلسات صوتی

جلسات صوتی به شما امکان می‌دهند تا اهداف خود را برای رفتار صوتی برنامه‌تان به سیستم بیان کنید. اطلاعات بیشتر در مورد جلسات صوتی را می‌توانید در راهنمای برنامه‌نویسی جلسه صوتی اپل بیابید. گزینه‌های موجود برای مدیریت صدای SDK تبلیغات موبایل گوگل از طریق ویژگی audioVideoManager است.

اگر در برنامه خود از صدا استفاده نمی‌کنید، نیازی به استفاده از این APIها ندارید. SDK تبلیغات موبایل گوگل (Google Mobile Ads SDK) هنگام پخش صدا، به طور خودکار دسته‌بندی جلسه صوتی را مدیریت می‌کند. اگر در برنامه خود صدا پخش می‌کنید و می‌خواهید کنترل دقیق‌تری بر نحوه و زمان پخش صدا توسط SDK تبلیغات موبایل گوگل (Google Mobile Ads SDK) داشته باشید، می‌توانید از این APIها استفاده کنید.

در مدیریت صدا و تصویر، اگر می‌خواهید خودتان مسئولیت مدیریت دسته‌بندی جلسه صوتی را بر عهده بگیرید، می‌توانید ویژگی audioSessionIsApplicationManaged را روی YES تنظیم کنید.

اگر می‌خواهید دسته‌بندی جلسه صوتی را مدیریت کنید، می‌توانید GADAudioVideoManagerDelegate را پیاده‌سازی کنید و ویژگی delegate را در مدیر ویدیوی صوتی تنظیم کنید تا از رویدادهای پخش ویدیو و پخش صدا مطلع شود. سپس باید دسته‌بندی جلسه صوتی را طبق راهنمای برنامه‌نویسی جلسه صوتی اپل به دسته‌بندی مربوطه تغییر دهید.

در اینجا یک نمونه کد ساده شده وجود دارد که رویکرد پیشنهادی را در صورت پخش موسیقی توسط برنامه شما با استفاده از API های فوق نشان می‌دهد:

سویفت

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()
}

هدف-سی

- (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];
}

گزارش خرابی

کیت توسعه نرم‌افزاری تبلیغات موبایل گوگل (SDK) استثنائاتی را که در یک برنامه iOS رخ می‌دهد بررسی می‌کند و در صورتی که توسط SDK ایجاد شده باشند، آنها را ثبت می‌کند. سپس این استثنائات در نسخه‌های بعدی SDK برطرف می‌شوند.

گزارش خرابی به طور پیش‌فرض فعال است. اگر نمی‌خواهید استثنائات مربوط به SDK ثبت شوند، می‌توانید این ویژگی را با فراخوانی متد disableSDKCrashReporting غیرفعال کنید. بهترین زمان برای فراخوانی این متد هنگام راه‌اندازی برنامه است:

سویفت

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

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

    MobileAds.shared.disableSDKCrashReporting()
    return true
  }
}

هدف-سی

@import GoogleMobileAds;

@implementation AppDelegate

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

  [GADMobileAds disableSDKCrashReporting];
  return YES;
}

@end

اگر برنامه شما الزامات خاصی دارد، می‌توانید NSUserDefaults اختیاری gad_has_consent_for_cookies را تنظیم کنید. SDK تبلیغات موبایل گوگل، در صورتی که ترجیح gad_has_consent_for_cookies روی صفر تنظیم شده باشد ، تبلیغات محدود (LTD) را فعال می‌کند.

سویفت

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

هدف-سی

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