سیگنالهای امن دادههای کدبندیشدهای هستند که در دستگاه مشتری جمعآوری میشوند و با پیشنهاددهندگان قیمت منتخب همرسانی میشوند. این راهنما نحوه جمعآوری و ارسال سیگنالهای ایمن به Google Ad Manager را بااستفاده از IMA SDK نشان میدهد.
میانای برنامهسازی کاربردی سیگنالهای امن به نسخه ۴.۸.۲ یا بالاتر از کیت توسعه نرمافزار IMA برای tvOS نیاز دارد.
برای انتخاب نشانها و پیشنهاددهندگان قیمت و فعال کردن همرسانی نشان امن، به همرسانی نشانهای امن با پیشنهاددهندگان قیمت مراجعه کنید.
استفاده از ارائهدهنده سیگنال طرف سوم
برای استفاده از سیگنالهای ایمن، باید کلاس آداپتور جمعآوریکننده سیگنال را در برنامهتان پیادهسازی کنید تا سیگنالها را جمعآوری کند، آنها را کدبندی کند، و به «کیت توسعه نرمافزار IMA» منتقل کند.
دستورالعملهای ارائهدهنده طرف سوم را برای راهاندازی حساب با آنها دنبال کنید، چارچوبها را اضافه کنید، و آداپتور سیگنالهای امن آنها را در برنامهتان راهاندازی کنید.
«کیت توسعه نرمافزار IMA برای tvOS» بهطور خودکار هر آداپتور سیگنالهای ایمن را بدون نیاز به هیچ تغییر اضافهای در کد شما مقداردهی اولیه میکند.
در اینجا مثالی از نحوه افزودن آداپتور سیگنالهای امن به پروژهتان آورده شده است:

ارسال دادههای سفارشی
علاوهبر استفاده از ارائهدهنده سیگنال شخص ثالث، میتوانید سیگنالها را با دادههای سفارشی جمعآوری، کدگذاری، و ارسال کنید. قبلاز اینکه بتوانید سیگنالهای ایمن با دادههای سفارشی ارسال کنید، باید سیگنالهای سفارشی را در Ad Manager روشن کنید.
برای هر درخواست آگهی، موارد زیر را انجام دهید:
- شیء
IMASecureSignalsحاوی دادههای سفارشی کدبندیشدهتان را بهصورت رشته ایجاد کنید. - شیء
IMASecureSignalsرا با تنظیم مشخصهIMAAdsRequest.secureSignalsبه درخواست آگهیتان اضافه کنید:
آبجکتیو-سی
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)
}
...