الإشارات الآمنة هي بيانات مشفّرة يتم جمعها على جهاز العميل ومشاركتها مع مقدّمي عروض أسعار محدّدين. يوضّح لك هذا الدليل كيفية جمع الإشارات الآمنة وإرسالها إلى إدارة إعلانات Google باستخدام حزمة IMA SDK.
تتطلّب واجهة برمجة التطبيقات للإشارات الآمنة الإصدار 4.8.2 من حزمة IMA SDK لنظام التشغيل tvOS أو إصدارًا أحدث.
لاختيار الإشارات ومقدّمي عروض الأسعار وتفعيل مشاركة الإشارات الآمنة، يُرجى الاطّلاع على مقالة مشاركة الإشارات الآمنة مع مقدّمي عروض الأسعار.
استخدام مقدّم إشارات تابع لجهة خارجية
لاستخدام الإشارات الآمنة، عليك نشر فئة محوّل مجمِّع الإشارات في تطبيقك لجمع الإشارات وتشفيرها وتمريرها إلى حزمة IMA SDK.
اتّبِع تعليمات مقدّم الخدمة الخارجي لإعداد حساب معه، تضمين الأُطر، وإعداد محوّل الإشارات الآمنة في تطبيقك.
تعمل حزمة IMA SDK لنظام التشغيل tvOS تلقائيًا على تهيئة كل محوّل إشارات آمنة، بدون إجراء أي تغييرات إضافية على الرمز البرمجي.
في ما يلي مثال على كيفية إضافة محوّل إشارات آمنة إلى مشروعك:

إرسال بيانات مخصّصة
بالإضافة إلى استخدام مقدّم إشارات تابع لجهة خارجية، يمكنك أيضًا جمع الإشارات وتشفيرها وإرسالها باستخدام بيانات مخصّصة. قبل أن تتمكّن من إرسال إشارات آمنة باستخدام بيانات مخصّصة، عليك تفعيل الإشارات المخصّصة في Ad Manager.
لكل طلب عرض الإعلان، اتّبِع الخطوات التالية:
- أنشِئ عنصر
IMASecureSignalsيحتوي على بياناتك المخصّصة المشفّرة كسلسلة. - أضِف عنصر
IMASecureSignalsإلى طلب عرض الإعلان من خلال ضبط السمةIMAAdsRequest.secureSignals:
Objective-C
BasicExample/ViewController.m
...
- (void)requestAds {
// Create an ad display container for ad rendering.
IMAAdDisplayContainer *adDisplayContainer =
[[IMAAdDisplayContainer alloc] initWithAdContainer:self.videoView
viewController:self
companionSlots:nil];
// Create an ad request with our ad tag, display container, and optional user context.
IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:kTestAppAdTagUrl
adDisplayContainer:adDisplayContainer
contentPlayhead:self.contentPlayhead
userContext:nil];
IMASecureSignals *signals =
[[IMASecureSignals alloc] initWithCustomData:@"My encoded signal string"];
request.secureSignals = signals;
[self.adsLoader requestAdsWithRequest:request];
}
...
Swift
BasicExample/ViewController.swift
...
private func requestAds() {
// Create ad display container for ad rendering.
let adDisplayContainer = IMAAdDisplayContainer(
adContainer: videoView, viewController: self, companionSlots: nil)
// Create an ad request with our ad tag, display container, and optional user context.
let request = IMAAdsRequest(
adTagUrl: ViewController.testAppAdTagURL,
adDisplayContainer: adDisplayContainer,
contentPlayhead: contentPlayhead,
userContext: nil)
let signals = IMASecureSignals(customData: "My encoded signal string")
request.secureSignals = signals
adsLoader.requestAds(with: request)
}
...