Additional Apple Requirements

App Transport Security (ATS)

The NSAllowsArbitraryLoadsInWebContent key for Info.plist file gives a convenient way to allow non-secured ad requests for HTML/MRAID content ads.

If you use this key in combination with video ads, the Fyber Secure Mode should be enabled. If your ATS global restriction is enabled, Fyber Secure Mode should be enabled as well.
It can be enabled in the IAAdRequest object.
Example:

Enabling the secure mode
IAAdRequest *request = [IAAdRequest build:^(id<IAAdRequestBuilder>  _Nonnull builder) {
    ...
    ...
    ...
    builder.useSecureConnections = YES;
}];

Important

Starting from the iOS 10.0, in case there are two keys present in the info.plist - both NSAllowsArbitraryLoadsInWebContent and NSAllowsArbitraryLoads, the NSAllowsArbitraryLoads will not have any effect.

If you need a global permission, you should keep only the NSAllowArbitraryLoads with YES in your .plist file, and the key NSAllowArbitraryLoadsInWebContent should be deleted. Otherwise, it won't work, because the NSAllowArbitraryLoadsInWebContent cancels out the previous one.

The same is for these keys as well:

  • NSAllowsArbitraryLoadsForMedia
  • NSAllowsLocalNetworking

Also it is important to understand, that the NSAllowsArbitraryLoadsForMedia does not excludes the VAST/VPAID videos, in terms of ATS, it does not have any effect on the Fyber Marketplace SDK and will only override the global NSAllowsArbitraryLoads key, which will result in a secure request, even it was not intended so.

Note

The Fyber Marketplace SDK will not necessarily send a secure request. If the SDK determines, that the request can be sent as insecure, it will be sent as insecure. This is in order to improve a fill, since there are more DSP sources for such requests.

On the other hand - if the SDK detects inconsistency in the ATS configuration, it will send a secure request, regardless of the ATS/IAAdRequest configuration/intention.

Apple has recently extended their secure networking obligation to an unknown date. Updates will be sent out to all publishers once Apple reinstates their security demands.

Enabling Global Permissons

To enable a global permission to a non-secured HTTP request, you'll need to add this to your Info.plist file:

XML
<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

ATS configuration and Fyber Marketplace SDK table

Location

There is no need in the location permissions. Fyber Marketplace SDK does not use the location services, it only expects to receive the CLLocation object in order to fetch the location data from it and pass it in the ad request.

IDFA Key Information

Starting with iOS 10: in the event that a user has enabled the Privacy -> Advertising -> Limit Ad Tracking, the IDFA key will be "filled" with zeroes: 00000000-0000-0000-0000-000000000000.

Bitcode Support

The IASDK static library is compiled with bitcode flag enabled. This means the project that integrates IASDK could be compiled with bitcode flag enabled.

More information about Bitcode can be found here

Multitasking Enhancements for iPad (Slide Over, Split View)

IASDK supports the new screen modes for iPad - Slide Over, Split View.

More information about Multitasking Enhancements for iPad can be found here.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request