המחלקות GADMobileAds
מספקות הגדרות גלובליות לשליטה במידע מסוים שנאסף על ידי Mobile Ads SDK.
שליטה בעוצמת הקול של מודעות וידאו
אם לאפליקציה יש פקדי עוצמת קול משלה, כמו לחצנים מותאמים אישית לשליטה בעוצמת הקול של המוזיקה או האפקטים, חשיפת עוצמת הקול של האפליקציה ל-Google Mobile Ads SDK מאפשרת למודעות וידאו לפעול בהתאם להגדרות עוצמת הקול של האפליקציה. כך המשתמשים יקבלו מודעות וידאו עם עוצמת הקול הרצויה.
עוצמת הקול של המכשיר, שנשלטת באמצעות לחצני עוצמת הקול או פס עוצמת הקול ברמת מערכת ההפעלה, קובעת את עוצמת הקול של פלט האודיו של המכשיר. עם זאת, אפליקציות יכולות לשנות את עוצמת הקול באופן עצמאי ביחס לעוצמת הקול של המכשיר, כדי להתאים את חוויית האודיו.
בפורמטים של מודעות בפתיחת אפליקציה, מודעות באנר, מודעות מעברון, מודעות מתגמלות ומודעות מעברון מתגמלות, אפשר לדווח על עוצמת הקול היחסית באפליקציה ל-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;
...
}
בפורמטים של מודעות מסוג 'פתיחת אפליקציה', באנר, מעברון, מתגמלת ומעברון מתגמל, אפשר להודיע ל-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 מנהל באופן אוטומטי את הקטגוריה של סשן האודיו כשהוא משמיע אודיו. אם אתם מפעילים אודיו באפליקציה שלכם ואתם רוצים לשלוט בצורה מדויקת יותר באופן ההפעלה של האודיו ב-Google Mobile Ads SDK ובזמן ההפעלה שלו, אתם יכולים להשתמש בממשקי ה-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 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 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 {
// 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];
}
דיווח על קריסה
פלטפורמת 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
הסכמה להגדרות של קובצי Cookie
אם לאפליקציה שלכם יש דרישות מיוחדות, אתם יכולים להגדיר את התג האופציונלי
NSUserDefaults
gad_has_consent_for_cookies
. Google Mobile Ads SDK מאפשר להציג מודעות מוגבלות (LTD) אם ההעדפה gad_has_consent_for_cookies
מוגדרת לאפס.
Swift
UserDefaults.standard.set(0, forKey: "gad_has_consent_for_cookies")
Objective-C
NSUserDefaults.standardUserDefaults().setObject(Int(0),
forKey: "gad_has_consent_for_cookies");