توفّر الفئة GADMobileAds
إعدادات عامة للتحكّم في معلومات معيّنة يتم جمعها من خلال "حزمة تطوير البرامج (SDK) لعرض الإعلانات للأجهزة الجوّالة".
التحكّم في مستوى صوت إعلانات الفيديو
إذا كان تطبيقك يتضمّن عناصر تحكّم في مستوى الصوت، مثل مستويات مخصّصة للموسيقى أو المؤثرات الصوتية، يؤدي الإفصاح عن مستوى صوت التطبيق لحزمة "SDK لإعلانات Google على الأجهزة الجوّالة" إلى السماح لإعلانات الفيديو بمراعاة إعدادات مستوى الصوت في التطبيق. ويضمن ذلك عرض إعلانات الفيديو للمستخدمين بمستوى الصوت المتوقّع.
يحدِّد مستوى صوت الجهاز، الذي يتم التحكّم فيه من خلال أزرار التحكّم في مستوى الصوت أو شريط التمرير الخاص بمستوى الصوت على مستوى نظام التشغيل، مستوى صوت إخراج الصوت من الجهاز. ومع ذلك، يمكن للتطبيقات ضبط مستويات الصوت بشكل مستقل بالنسبة إلى مستوى صوت الجهاز لتخصيص تجربة الصوت.
بالنسبة إلى أشكال "الإعلانات على شاشة فتح التطبيق" و"إعلانات البانر" و"الإعلانات البينية" و"الإعلانات التي تضم مكافأة" و"الإعلانات البينية التي تضم مكافأة"، يمكنك الإبلاغ عن حجم التطبيق النسبي في حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" من خلال ضبط السمة applicationVolume
. تتراوح القيم الصالحة لمستوى صوت الإعلانات بين
0.0
(صامت) و1.0
(مستوى صوت الجهاز الحالي). في ما يلي مثال على كيفية
الإبلاغ عن حجم التطبيقات النسبي لحزمة تطوير البرامج (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;
...
}
بالنسبة إلى أشكال إعلانات "فتح التطبيق" و"إعلان البانر" و"الإعلان البيني" و"الإعلان الذي يضم مكافأة" و"الإعلان البيني الذي يضم مكافأة"، يمكنك إبلاغ حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" بأنّه تم كتم صوت التطبيق من خلال ضبط السمة applicationMuted
:
Swift
GADMobileAds.sharedInstance().applicationMuted = true
Objective-C
GADMobileAds.sharedInstance.applicationMuted = YES;
يتم ضبط applicationVolume
تلقائيًا على 1
(مستوى صوت الجهاز الحالي)
وapplicationMuted
على NO
.
إعلانات مدمجة مع المحتوى
اطّلِع على
GADVideoOptions
للحصول على تعليمات حول التحكّم في إعدادات كتم الصوت. لا تتوفّر ميزة التحكّم المخصّص في مستوى الصوت للإعلانات المدمجة مع المحتوى.
جلسات صوتية
تتيح لك جلسات الصوت التعبير للنظام عن نواياه بشأن
سلوك الصوت في تطبيقك. يمكن العثور على معلومات إضافية حول جلسات الصوت في دليل برمجة جلسات الصوت
من Apple.
يمكن الوصول إلى الخيارات المتاحة لإدارة الصوت في حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" من خلال
المَعلمة
audioVideoManager
.
إذا كنت لا تستخدم الصوت في تطبيقك، لن تحتاج إلى استخدام واجهات برمجة التطبيقات هذه. تدير حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" فئة الجلسة الصوتية تلقائيًا عند تشغيل الصوت. إذا كنت تشغّل الصوت في تطبيقك وتريد التحكّم بشكلٍ أكبر في كيفية تشغيل حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" للصوت ووقت تشغيله، يمكنك الاستفادة من واجهات برمجة التطبيقات هذه.
في "مدير الصوت والفيديو"، يمكنك ضبط القيمة YES
على audioSessionIsApplicationManaged
إذا أردت تولي مسؤولية إدارة فئة جلسة المعالجة الصوتية بنفسك.
إذا كنت تريد إدارة فئة جلسة الصوت، يمكنك تنفيذ
GADAudioVideoManagerDelegate
وضبط السمة delegate
في "مدير الصوت والفيديو" للحصول على إشعارات بأحداث تشغيل الإعلانات المرئي والصوتي. بعد ذلك، عليك تغيير فئة جلسة الصوت إلى
الفئة ذات الصلة وفقًا لدليل Apple المتعلق ببرمجة جلسات الصوت
.
إليك نموذج رمز مبسّط يعرض الطريقة المقترَحة إذا كان تطبيقك يشغِّل الموسيقى باستخدام واجهات برمجة التطبيقات المذكورة أعلاه:
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];
}
تقارير الأعطال
تفحص حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" الاستثناءات التي تحدث في تطبيق iOS وتسجّلها إذا كانت ناتجة عن حزمة تطوير البرامج (SDK). وبعد ذلك، تتم معالجة هذه الاستثناءات في إصدارات حزمة تطوير البرامج (SDK) المستقبلية.
تكون ميزة "إعداد تقارير الأعطال" مفعَّلة تلقائيًا. إذا كنت لا تريد تسجيل استثناءات حزمة SDK
، يمكنك إيقاف هذه الميزة من خلال استدعاء الأسلوب
disableSDKCrashReporting
. أفضل وقت لاستدعاء هذه الطريقة هو عند
إطلاق التطبيق:
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
الموافقة على إعدادات ملفات تعريف الارتباط
إذا كان تطبيقك يتضمّن متطلبات خاصة، يمكنك ضبط الرمز الاختياري
NSUserDefaults
gad_has_consent_for_cookies
. تتيح حزمة "SDK لإعلانات Google على الأجهزة الجوّالة"
الإعلانات المحدودّة (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");