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

إرسال بيانات مخصّصة
بالإضافة إلى استخدام موفّر إشارات تابع لجهة خارجية، يمكنك أيضًا جمع الإشارات وتشفيرها وإرسالها باستخدام بيانات مخصّصة. قبل أن تتمكّن من إرسال إشارات آمنة باستخدام بيانات مخصّصة، عليك تفعيل الإشارات المخصّصة في "إدارة إعلانات Google".
لكل طلب إعلان، أنشئ عنصر IMASecureSignals
يحتوي على بياناتك المخصّصة المرمّزة كسلسلة. بعد ذلك، أضِف العنصر IMASecureSignals
إلى طلب الإعلان من خلال استدعاء السمة IMAAdsRequest.secureSignals
.
في ما يلي نماذج بلغة Objective-C وSwift:
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)
}
...
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eSecure signals, encoded data from client devices, are shared with specific bidders to enhance ad targeting.\u003c/p\u003e\n"],["\u003cp\u003eYou need to integrate a signal collector adapter and the IMA SDK (version 4.8.2 or higher for tvOS) to collect and send secure signals to Google Ad Manager.\u003c/p\u003e\n"],["\u003cp\u003eUtilize a third-party signal provider or, if eligible for a limited beta, send custom data as secure signals after enabling it in Ad Manager.\u003c/p\u003e\n"],["\u003cp\u003eRefer to the provided code examples (Objective-C and Swift) for implementation guidance on adding secure signals to your ad requests.\u003c/p\u003e\n"]]],[],null,["Secure signals are encoded data that is collected on the client device and\nshared with select bidders. This guide shows you how to collect and send secure\nsignals to Google Ad Manager using the IMA SDK.\n\nThe secure signals API requires version 4.8.2\nor higher of the IMA SDK for tvOS.\n\nTo select signals and bidders, and enable secure signal sharing, see [Share\nsecure signals with bidders](//support.google.com/admanager/answer/10488752).\n\nUse a third-party signal provider\n\nTo use secure signals, you must deploy a signal collector\n\nadapter class in your app\n\nto collect signals, encode them, and pass them to the IMA SDK.\n\n\u003cbr /\u003e\n\nFollow your third-party provider's instructions to set up an account with them,\n\n[include frameworks](//developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Tasks/IncludingFrameworks.html),\n\nand set up their secure signals adapter in your app.\n\nThe IMA SDK for tvOS automatically\ninitializes each secure signals adapter, without any additional changes to your\ncode.\n\nHere's an example of how you might add a secure signals adapter to your project:\n\n\u003cbr /\u003e\n\nSend custom data\n\nIn addition to using a third-party signal provider, you can also collect,\nencode, and send signals with custom data. Before you can send secure signals\nwith custom data, you must turn on custom signals in Ad Manager.\n\n\u003cbr /\u003e\n\nFor each ad request, create an `IMASecureSignals` object containing your\nencoded custom data as a string. Then, add the `IMASecureSignals` object to\nyour ad request by calling the `IMAAdsRequest.secureSignals` attribute.\n\nHere are samples in Objective-C and Swift: \n\nObjective-C\n\n**BasicExample/ViewController.m** \n\n ...\n - (void)requestAds {\n // Create an ad display container for ad rendering.\n IMAAdDisplayContainer *adDisplayContainer =\n [[IMAAdDisplayContainer alloc] initWithAdContainer:self.videoView\n viewController:self\n companionSlots:nil];\n // Create an ad request with our ad tag, display container, and optional user context.\n IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:kTestAppAdTagUrl\n adDisplayContainer:adDisplayContainer\n contentPlayhead:self.contentPlayhead\n userContext:nil];\n IMASecureSignals \\*signals =\n \\[\\[IMASecureSignals alloc\\] initWithCustomData:@\"My encoded signal string\"\\];\n request.secureSignals = signals;\n [self.adsLoader requestAdsWithRequest:request];\n }\n ...\n\nSwift\n\n**BasicExample/ViewController.swift** \n\n ...\n private func requestAds() {\n // Create ad display container for ad rendering.\n let adDisplayContainer = IMAAdDisplayContainer(\n adContainer: videoView, viewController: self, companionSlots: nil)\n // Create an ad request with our ad tag, display container, and optional user context.\n let request = IMAAdsRequest(\n adTagUrl: ViewController.testAppAdTagURL,\n adDisplayContainer: adDisplayContainer,\n contentPlayhead: contentPlayhead,\n userContext: nil)\n let signals = IMASecureSignals(customData: \"My encoded signal string\")\n request.secureSignals = signals\n adsLoader.requestAds(with: request)\n }\n ..."]]