Upgrading from Version 1.1 to 1.2

Version 1.2 of the FeedAd iOS SDK brings some improvements that are also breaking changes:

Nullability and Swift Integrations (Possible Breaking Change)

Version 1.2 adds nullability specifiers to all header files.

If you have integrated the FeedAd SDK in Swift code files, this might mean that you have to update your code to work with the new nullability specifications by the SDK. You should expect having to remove optionals handling code that is now no longer needed.

Unified Error Handlers (Breaking Change)

Before version 1.2, the delegate protocols FAFeedAdDelegate, FAInterstitialAdDelegate and FAStandaloneAdDelegate contained two mandatory error handler methods (e.g. feedAd:didFailToLoadWithError: and feedAd:didFailToPlayWithError:).

These have been unified. Update your delegate implementations to implement the following error handler methods and remove any of the previous ones:

- (void)feedAd:(FAFeedAd *)feedAd didFailWithError:(NSError *)error;
- (void)standaloneAd:(FAStandaloneAd *)standaloneAd didFailWithError:(NSError *)error;
- (void)interstialAd:(FAInterstitialAd *)interstialAd didFailWithError:(NSError *)error;

Ad Configs (Breaking Change)

Version 1.2 changes the way that instances of FAFeedAd, FAInterstitialAd and FAStandaloneAd have to be initialized.

For all of these classes, the method initWithConfig: is the single available initializer, which takes an instance of the corresponding config classes (FAFeedAdConfig, FAInterstitialAdConfig and FAStandaloneAdConfig) as the single parameter. Any other intializers that previously existed, have been removed.

The config classes have a required property placementId and there should be properties for all optional parameters that have existed previously. There are also a few new optional parameters that you might want to check:

Parameter Type Description FeedAd InterstitialAd StandaloneAd
contentURL NSURL * Universal URL for the current screen ✓ 
placementType FAPlacementType Type of placement (standalone, preroll, midroll, postroll) ✓ 

Raised iOS Deployment Target to 9.0 (Possible Breaking Change)

Versions of iOS earlier than 9.0 will no longer be supported. If your deployment target is currently lower than 9.0, you will have to raise it to at least 9.0 to use version 1.2 of the FeedAd SDK.