Asks the receiver for encrypted signals. Signals are provided to the 3PAS at request time. The
receiver must call completionHandler with signals or an error.
This method is called on a non-main thread. The receiver should avoid using the main thread to
prevent signal collection timeouts.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-20 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eIMASecureSignalsAdapter\u003c/code\u003e provides secure signals from third-party sources to the IMA SDK for auctions.\u003c/p\u003e\n"],["\u003cp\u003eIt offers methods for initialization, retrieving adapter and SDK versions, and collecting encrypted signals.\u003c/p\u003e\n"],["\u003cp\u003eSignal collection is performed asynchronously on a background thread to avoid timeouts.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers need to implement the \u003ccode\u003ecollectSignals\u003c/code\u003e method to provide encrypted signals to the IMA SDK.\u003c/p\u003e\n"]]],["The `IMASecureSignalsAdapter` protocol provides third-party secure signals to the IMA SDK for auctions. It requires initialization via `init()`. The adapter's version is retrieved using `adapterVersion()`, and the ad SDK version with `adSDKVersion()`. `collectSignalsWithCompletion:` requests encrypted signals, which should be returned via a completion handler; this method must operate off the main thread to avoid timeouts.\n"],null,["IMASecureSignalsAdapter \n\n @protocol IMASecureSignalsAdapter \u003cNSObject\u003e\n\nAdapter that provides secure signal(3rd party signal only) to the IMA SDK to be included in an\n\n- auction.\n- `\n ``\n ``\n `\n\n [-init](#/c:objc(pl)IMASecureSignalsAdapter(im)init)`\n ` \n Initializes the Secure Signal adapter. \n\n Declaration \n Swift \n\n init?()\n\n Objective-C \n\n - (nullable instancetype)init;\n\n- `\n ``\n ``\n `\n\n [+adapterVersion](#/c:objc(pl)IMASecureSignalsAdapter(cm)adapterVersion)`\n ` \n The version of the adapter. \n\n Declaration \n Swift \n\n static func adapterVersion() -\u003e ../Classes/IMAVersion.html\n\n Objective-C \n\n + (nonnull ../Classes/IMAVersion.html *)adapterVersion;\n\n- `\n ``\n ``\n `\n\n [+adSDKVersion](#/c:objc(pl)IMASecureSignalsAdapter(cm)adSDKVersion)`\n ` \n The version of the ad SDK. \n\n Declaration \n Swift \n\n static func adSDKVersion() -\u003e ../Classes/IMAVersion.html\n\n Objective-C \n\n + (nonnull ../Classes/IMAVersion.html *)adSDKVersion;\n\n- `\n ``\n ``\n `\n\n [-collectSignalsWithCompletion:](#/c:objc(pl)IMASecureSignalsAdapter(im)collectSignalsWithCompletion:)`\n ` \n Asks the receiver for encrypted signals. Signals are provided to the 3PAS at request time. The\n receiver must call `completionHandler` with signals or an error.\n This method is called on a non-main thread. The receiver should avoid using the main thread to\n prevent signal collection timeouts. \n\n Declaration \n Swift \n\n func collectSignals() async throws -\u003e String\n\n Objective-C \n\n - (void)collectSignalsWithCompletion:\n (nonnull ../Type-Definitions.html#/c:IMASecureSignalsAdapter.h@T@IMASignalCompletionHandler)completion;\n\n Parameters\n\n |--------------------|-------------------------------------------------------|\n | ` `*completion*` ` | The block to call when signal collection is complete. |"]]