Changelog — iOS SDK

Last Update:
Download & integrate the Chartboost SDK for iOS ▶
Download & integrate the Chartboost SDK for iOS Swift ▶


Version 6.6.3 (May 1, 2017) (current version)

Fixes & Improvements:

  • didCache and has delegates are no longer called when the ad is not ready to be displayed.
  • Fixed timing issue where prefetch calls at bootup might negatively affect get calls.

 



Version 6.6.2 (Mar. 13, 2017) 

Fixes & Improvements:

  • No longer freezes after backgrounding when post-roll is shown.
  • Removed MoreApps from Sample/Example project.
  • Clarified ad server error messaging when no publisher campaigns are available.
  • Modified NSUserDefaults category to resolve name-collisions with other SDKs.

 



Version 6.6.1 (Jan. 4, 2017)  

Features:

  • App Transport Security (ATS) added to Chartboost Example Project. ATS improves user security and privacy by requiring apps to use secure network connections over HTTPS.

Fixes & Improvements:

  • Video no longer freezes when app is backgrounded.
  • Reachability reports are more accurate.

 



Version 6.6.0 (Nov. 16, 2016)  

This library is built using Xcode 8 with bitcode enabled. In order to use it with prior versions of Xcode (including 7.3.1), bitcode must be disabled.
iOS 6 is no longer supported. iOS 7.0 is the minimum supported iOS Version.
closeImpression() functionality has been deprecated.

Features:

  • Added support for AerServ.

Fixes:

  • Black background now remains when a video ad is playing.
  • Fixed bug that could cause visual defects on ads when the app loses and regains focus.
  • App no longer freezes when backgrounding after a video plays.
  • MoreApps now respect the status bar app settings.

Improvements:

  • Improved the rendering performance when rotating an ad.

 



Version 6.5.2 (Sept. 28, 2016) 

iOS 6 is no longer supported. iOS 7.0 is the minimum supported iOS Version.

Fixes:

  • Fixed bug that could cause visual defects on ads when the app loses and regains focus.

 


Version 6.5.1 (Sept. 16, 2016)  

iOS 6 is no longer supported. iOS 7.0 is the minimum supported iOS Version.

Fixes:

  • Fixed bug that prevented MoreApps from showing.


Version 6.5.0 (Sept. 12, 2016)  

iOS 6 is no longer supported. iOS 7.0 is the minimum supported iOS Version.

Features & Improvements:

  • Networking stack has been upgraded to AFNetworking 3.0.
  • Added features to help support iOS changes to limit of ad tracking.
  • iOS 10 compatibility.

Fixes:

  • Fixed IFV reporting bug.
  • Fixed bug that could retain a bad ad unit in the cache.
  • Fixed bug that could send inaccurate list of local videos to the server.


Version 6.4.7 (July 25, 2016)  

Fixes:

  • Cache folders combined and various timing changes implemented to avoid possible issues with delivering impressions.
  • Video file sizes are now checked during download and maintenance to prevent corruption.
  • Framework file in the Example project has been replaced with a reference to the file in order to reduce download size.

Version 6.4.7 (legacy Xcode 6 compatible)* (July 25, 2016)

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.
Download legacy Xcode compatible SDK for iOS



Version 6.4.6 (June 22, 2016)

Fixes:

  • Various bug fixes.

Version 6.4.6 (legacy Xcode 6 compatible)* (June 22, 2016)

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.



Version 6.4.4 (May 5, 2016)

Fixes:

  • Various bug fixes.

Version 6.4.5 (May 5, 2016) (no bitcode support)*

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.



Version 6.4.2 (April 5, 2016)

Fixes:

  • Various bug fixes.

Version 6.4.3 (April 6, 2016) (no bitcode support)*

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.



Version 6.4.0 (Mar. 14, 2016)

  • With this SDK we will begin rolling out a brand new Chartboost Video experience, specially tailored for games. Upgrade now!
  • We've also improved key features like video caching, memory management, and data usage for optimal SDK performance.

Features & Improvements:

  • Calls to cacheInterstitial and cacheRewarded have been optimized to require less memory.
  • Interstitials will now fail gracefully instead of showing with missing assets.
  • Added a retry mechanism for downloading failed assets.
  • Closing the "loading" view has moved to the main thread.

Fixes:

  • Updated documentation to use hasInterstitial instead of hasCachedInterstitial

Version 6.4.1 (Mar. 14, 2016) (no bitcode support)*

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.



Version 6.3.0 (Feb. 8, 2016) 

Features & Improvements:

  • Upgrade now to get ready for the new Chartboost Video V2 experience, rolling out in Q1.
  • Certain network request failures no longer cause a crash.

Version 6.3.1 (Feb. 8, 2016) (no bitcode support)*

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.



Version 6.2.0 (Jan. 13, 2016)

Features & Improvements:

  • New method getSDKVersion returns the current version of the Chartboost SDK.
  • New method setDelegate changes the Chartboost delegate object.
  • New method setAutoIAPTracking replaces the need to call trackInAppPurchaseEvent. If enabled, Chartboost will listen for purchase events.
  • Added imports to Foundation and UIKit in Chartboost.h.

Fixes:

  • Improved SDK stability when running with Address Sanitizer.
  • Blank ads no longer appear if the device is rotated into an unsupported orientation.
  • Fixed rare issue where MoreApps or a blank screen would sometimes be displayed when attempting to show an interstitial ad.

Version 6.2.1 (Jan. 13, 2016) (no bitcode support)*

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.



Version 6.1.0 (Nov. 12, 2015)

Features & Improvements:

  • Added support for iOS9 split screen mode
  • Added didInitialize delegate that is called when Chartboost has been initialized and which replaces didPrefetchVideo

Fixes:

  • Fixed a rare crash when reopening the application when an ad was just displayed
  • Fixed a bug causing the delegate didPrefetchVideo to fire twice where it should only fire once

Version 6.1.1 (Nov. 12, 2015) (no bitcode support)*

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.



Version 6.0.0 (Oct. 5, 2015)

Features & Improvements:

  • Video experience rebuilt from the ground up.
  • setMediation now uses enumerated constants for partners.
  • Removed deprecated Chartboost Newsfeed product.

Fixes:

  • cacheRewardedVideo no longer stops audio of the playing video
  • Removing headphones during the rewarded video confirmation screen no longer starts the video.
  • Accepting or declining a phone call during the rewarded video confirmation screen no longer starts the video.
  • Xcode 7 compiler warnings fixed.

Version 6.0.1 (Oct. 26, 2015) (no bitcode support)*

*This version is a variation of the SDK for developers who need to build on older versions of Xcode. This SDK version does not have bitcode support.

Fixes:

  • Addressed Xcode 7.0.1 compile error preventing archiving with Bitcode enabled.
  • Calls to cacheInterstitial and cacheRewardedVideo retry again when there are no available videos cached to the device
  • Fixed build warnings with Bitcode enabled


Version 5.5.4

Features & Improvements:

  • SDK now supports Bitcode submissions for iOS 9.


Version 5.5.3 (Aug. 5, 2015)

Features & Improvements:

  • SDK now builds with armv7s architecture.


Version 5.5.1 (Jul. 16, 2015)

Fixes:

  • Fixed bug that prevented InPlay button response in example app included in SDK download package.
  • Fixed an issue that crashed or hung the SDK while detecting jailbroken device status during initialization.


Version 5.5.0 (Jun. 29, 2015)

Compatible only with iOS 6.0+. If you need compatibility with older iOS versions, contact us!.

Features & Improvements:

  • Rewarded videos no longer need to wait until the video prefetch is complete before showing an existing video.
  • Mediation partners can now call setMediation:withVersion to set the library name and version.
  • AFNetworking library updated to version 2.5.4.
  • Sample app included in SDK download package now supports portrait orientation.

Fixes:

  • Fixed bug that prevented video ads from resuming/being dismissed after incoming phone calls.
  • Corrected video prefetch behavior to prevent unwanted deletions of video ads prior to /show calls.
  • Fixed bug that prevented proper caching of new MoreApps page data after /more/show call.
  • Suppressed erroneous CoreData Unable to load class named 'CBHTTPRequestEntity' warning message.


Version 5.4.0 (Jun. 1, 2015)

Features & Improvements:

  • Added additional argument to setFramework to allow framework developers to include a version strings (Unity 4.6.0f1, for example).

Fixes:

  • didPrefetchVideo now returns when video prefetching is complete. Once this call returns, you can show rewarded videos.


Version 5.3.0 (May 7, 2015)

Features & Improvements:

  • Added Weeby to available frameworks.
  • Native iOS SDK now sends the version of the Unity wrapper SDK along with every request.
  • Added "rooted_device":true or "rooted_device":false to /api/install call REQUEST body to detect jailbroken devices.

Fixes:

  • Fixed issue that stalled video playback after declined phone calls.


Version 5.2.1 (Apr. 13, 2015)

Fixes:

  • Fixed issue that caused CoreData crash on first bootup.
  • Corrected symbol collision with third-party SDKs on audioRouteChangeListenerCallback.
  • Fixed bug preventing MoreApps page resize on device orientation change.


Version 5.2.0 (Apr. 6, 2015)

Features & Improvements:

  • Added new Core Data-backed persistence layer for the Chartboost request manager.
  • Added a developer-facing function, closeImpression, to force-close any visible impression or loading view.
  • Added a new method to CBAnalytics, trackInAppPurchaseEventWithString, that acts like the trackInAppPurchaseEvent but takes a string instead of raw receipt data to allow frameworks to pass in base64-encoded receipts.
  • PIA Level Tracking available in CBAnalytics (contact your account manager or Support for information about Level Tracking).
  • Improved SDK batch requests for an endpoint to cut down on outgoing network requests. Only enabled for Level Tracking.

Fixes:

  • Fixed issue that paused rewarded video and video interstitial playback when headphones were unplugged.
  • didFailToLoadRewardedVideo delegate method now fires if rewarded video is requested before prefetching finishes.
  • Fixed bug preventing loading view from displaying in a timely manner when setShouldDisplayLoadingViewForMoreApps was set to YES.
  • Rewarded and interstitial video ads will now pause and disappear so players can complete age gate selections and reappear and resume after user input.


Version 5.1.5 (Mar. 17, 2015)

Fixes:

  • Fixed bug affecting iOS Rewarded Video close buttons when videos shown on bootup.


Version 5.1.4 (Mar. 11, 2015)

Features & Improvements:

  • Added a new setStatusBarBehavior method to control how fullscreen video ads interact with iOS's status bar.
  • Added the location parameter, when available, to click, show, completed-view, and other relevant network requests.

Fixes:

  • Fixed issue causing duplicate SDK calls to creative URLs.
  • Max ads/hour setting is now respected when campaigns are configured to show one ad per hour and auto-caching is enabled.
  • Fixed bug that fired didDismissInterstitial or didDismissRewardedVideo during click events.
  • Fixed bug that prevented didClickInterstitial from firing on interstitial video clicks.
  • Corrected fullscreen video close button placement; close buttons no longer appear behind the iOS status bar.


Version 5.1.3 (Jan. 19, 2015)

Features & Improvements:

  • InPlay data can now be cached at multiple Named Locations.
  • Added orientation information to api/click and video/complete calls to facilitate better analytics.
  • Removed hardcoded affiliate token from SDK; now pulled from server.
  • Added example use of isAnyViewVisible delegate method to sample project (included in SDK download package).
  • Added InPlay button to Chartboost example app (included in SDK download package).

Fixes:

  • Added global flag to disable request retries by default (configurable in CBConfig).
  • Fixed multithreaded crashes.
  • Fixed silent failure when requesting assets with wrong orientation (now trackable via a CBLoadError).


Version 5.1.2 (Dec. 10, 2014)

Fixes:

  • Fixed CBAppCall crash that occurred when resource path was not sent with URL.
  • Fixed race condition causing SKStoreProductViewController crash.
  • Fixed SKStoreProductViewController rotation issue with Unity.
  • Resolved concurrency issue in CBConfig.


Version 5.1.0 (Nov. 25, 2014)

Features & Improvements:

  • Added new framework tracking values for Cordova and CocoonJS.
  • Added new API to check visibility of Chartboost UI.
  • Changed delegate callbacks for click and close to be sent after closing or clicking the impression.
  • Changed auto-cache calls to delay execution for better performance.

Fixes:

  • Fixed race condition between video actions on replay.
  • Fixed loading screen that was causing issues with video and App Sheet.
  • Fixed issue causing interstitial video close button to appear at incorrect time in portrait orientation.
  • Fixed rewarded video auto-plays when previous display of video was dismissed instead of watched.
  • Fixed bug preventing api/config from executing on soft bootups.
  • Fixed problem with close button clipping the video player in corner.
  • Fix for various crashes due to memory pressure and concurrency.
  • Fix for api/track executing on hidden files for older devices.
  • Fix for issue causing video to display off screen after rotating iPhone 6/6+.
  • Fix for incorrect error code enumerations being used.
  • Fixed loading view not appearing for MoreApps page on devices with slow connections.
  • Fixed crash in CBAnalytics if sent an invalid NSDecimalNumber.


Version 5.0.3 (Oct. 1, 2014)

Fixes:

  • Bug fixes and stability improvements.


Version 5.0.2 (Sep. 12, 2014)

Features & Improvements:

  • Added functionality to close loading view if taking too long.

Fixes:

  • Bug fixes and stability improvements.


Version 5.0.1 (Sep. 9, 2014)

Fixes:

  • Critical bug fixes and stability improvements.


Version 5.0.0 (Sep. 4, 2014)

Features & Improvements:

  • Chartboost Video released.
  • Updated SDK interface to use static methods.
  • Removed deprecated Chartboost Store.
  • New ChartboostExample project included in SDK package.
  • Many delegate methods now "setter and getter" functions.
  • Introduced new Chartboost display methods that accept a UIViewController.
  • Full SKProductsViewController support added.
  • CBPostInstallAnalyticsTracker renamed to CBAnalytics.
  • Reduced overall size of SDK.
  • Symbols and frameworks now dynamically loaded.
  • Removed external dependencies.
  • Enabled logging in DEBUG builds via environment variable.
  • Bug fixes and stability improvements.


Version 4.5.1 (Jun. 30, 2014)

Fixes:

  • Minor bug fixes for session analytics.


Version 4.5.0 (Jun. 9, 2014)

Features & Improvements:



Version 4.4.1 (May 19, 2014)

Features & Improvements:

  • Now supports 64-bit Simulator.
  • Fixed support for iOS 5.1.1.


Version 4.4.0 (May 16, 2014)

Features & Improvements:

  • New MoreApps: Brand new look and feel, custom headers and close buttons, support for Named locations.
  • In app analytics, MoreApps page impressions now count toward total number of impressions.
  • New Chartboost initialization method: startWithAppId:appSignature:delegate:
  • Automatic caching now enabled after show calls.
  • New delegate method: didFailToRecordClick:withError: called when a click is registered, but the user is not forwarded to the App Store.
  • Orientation improvements: Ads will now be displayed in any orientation the game supports (according to the Chartboost dashboard), regardless of device orientation.
  • Numerous bug fixes.
  • Deprecated default location API calls.


Version 4.2.0 (Mar. 25, 2014)

Features & Improvements:

  • Non-default Apple frameworks (Quartzcore, System Configuration, Store Kit and Ad Support) no longer need to be linked manually.
  • Named Locations for caching/showing interstitials and MoreApps pages are now predefined. (A list of the enum values can be found in the Chartboost.h file.)
  • Added MoreApps page support for beta App Sheet program (contact us for more information)
  • Carrier information now included in default request parameters


Version 4.1.0 (Feb. 17, 2014)

Features & Improvements:

  • Interstitials and MoreApps pages now change orientation with device (if app supports multiple orientations).
  • MoreApps header background now built from tileable image, providing better support for various screen resolutions.
  • Backgrounds when interstitials are displayed now blurred (if device and OS support it) to match iOS 7 UI.
  • Server responses now validated and will fail if any field is incorrect, increasing SDK reliability.
  • Age Gates can now be added after interstitials are clicked. Use delegate method shouldPauseClickForConfirmation to activate.
  • Fixed memory leak and improved SDK architecture via a comprehensive refactor.
  • Various other bug fixes.


Version 4.0.0 (Jan. 10, 2014)

Features & Improvements:

  • Bundle file scanning is now an option in the header, controlled by a boolean property set to false by default.
  • Files in the cache folder will be now deleted if they have not been used for 7 days.
  • Rate limiting of requests: only 3 interstitial requests per 90s per named location are allowed.
  • Error delegate methods now take an enum describing the error.
  • When an interstitial is not loaded because of first session interstitials being disabled (shouldRequestInterstitialsInFirstSession), didFailToLoadInterstitial is now triggered.
  • When an interstitial is the wrong orientation, it now also triggers an error.
  • User-agent updated to allow wrappers to suffix User-agent.
  • New delegate method, to be called when the App Store sheet is dismissed.
  • Completely removing deprecated library, CBAnalytics.
  • New example project is now part of the sdk download package.
  • When attempting to load an interstitial without having started a session, an error is triggered.


Version 3.3.1 (Oct. 30, 2013)

Features & Improvements:

  • Fixed bug causing MoreApps page crashes on iOS 7.
  • Fix crashes on iOS 5 devices related to the new 64-bit support.
  • New Feature: Xcode 5 now automatically displays integration tips (defined in chartboost.h), contextually presenting them while you code.


Version 3.3.0 (Oct. 17, 2013)

Features & Improvements:

  • Fully compatible with iOS 7 64-bit-only projects. Maintains support for 32-bit projects and iOS 5.1+ devices.


Version 3.2.2 (Oct. 10, 2013)

Features & Improvements:

  • Added a new public method (dismissChartboostView) to dismiss an interstitial or MoreApps view programmatically.
  • Fixed a bug causing indefinite loading after MoreApps page clicks while in Airplane Mode.
  • Fixed a crash bug that would occur if the SDK received corrupt image data.
  • Fixed bug affecting display of MoreApps button labels on iOS 7 devices.
  • Fixed bug causing crashes when user clicked interstitial with no iTunes URL set via the dashboard.


Version 3.2.1 (May 23, 2013)

Features & Improvements:

  • Improved long term memory management.
  • Better handles clicks on interstitials with malformed URLs.
  • Increased stability on repeated calls to hasCachedInterstitial.
  • Fixed issue where dismiss button could be pressed multiple times on a single interstitial.
  • Replaced third party JSON lib with Apple internal JSON serializer.
  • Compatible only with iOS 5.0+. If you need iOS 4.3+ compatibility, use SDK version 3.2 below.


Version 3.2.0 (April 19, 2013)

Features & Improvements:

  • UDID method removed. Use this SDK in any apps submitted to the App Store after May 1st, 2013.
  • MoreApps page better handles long app names.
  • Handles showing an interstitial at the same time as the Game Center login prompt.
  • Better time-outs on intermittent internet.
  • No longer shows blank interstitials when app orientation is misconfigured server-side.
  • Added support for targeting interstitials by language.
  • The window property has been changed to root view.
  • CBAnalytics beta features removed.

Note: "Unique" column of App Analytics temporarily shows 0 for apps using SDK v3.2. Please use "Installs" or "Bootups" for reference.



Version 3.1.1 (Nov. 27, 2012)

Features & Improvements:

  • Stability improvements for apps with over 300mb of bundled assets.
  • Fixed rare visual glitch where interstitial positions itself incorrectly relative to status bar after app rotation.


Version 3.1.0 (Oct. 12, 2012)

Features & Improvements:

  • Added support for the iOS 6 App Sheet so your users can download apps without ever leaving your app! You must include StoreKit.framework for access to the App Sheet.
  • MoreApps status bar fixed, now auto-adjusts position when status bar is visible.
  • Fixed rare crasher in CBCrypto.
  • Note: This version and all versions in the future are compatible with iOS version 4.3 and higher ONLY (armv7 and armv7s).


Version 3.0.7

Features & Improvements:

  • REQUIRED: You must include AdSupport.framework for access to the identifierForAdvertising.
  • Added compatibility with Xcode 4.5 and armv7s. This SDK includes armv6, armv7, and armv7s.
  • Fixed shouldRequestInterstitialsInFirstSession delegate method; now requests interstitials only after 2nd startSession call.
  • Internal API upgrades.


Version 3.0.6 (Sep. 13, 2012)

Features & Improvements:

  • Automatic interstitial caching now uses a version fallback if your app does not include CFBundleShortVersionString in the info.plist. For best interstitial caching, add CFBundleShortVersionString key and value to your info.plist.


Version 3.0.5 (Aug. 28, 2012)

Features & Improvements:

  • Fixed rare crash in web image caching library.


Version 3.0.4 (Aug. 16, 2012)

Features & Improvements:

  • Added SDK support for targeting wi-fi devices.


Version 3.0.3 (Jul. 31, 2012)

Features & Improvements:

  • Removed automatic removal of interstitials and MoreApps view when backgrounding app.


Version 3.0.2 (Jul. 20, 2012)

Features & Improvements:

  • Improves click tracking in race conditions.
  • Fixes issue where cached ads appear during backgrounding.
  • Fixed JSON crasher in CB Analytics.


Version 3.0.1 (Jul. 6, 2012)

Features & Improvements:

  • Improved compatibility with iOS versions 4.0 to 4.2.


Version 3.0 (Jul. 2, 2012)

Features & Improvements:

  • Delegate methods now return location strings (no longer pass in a view) -- i.e. didFailToLoadInterstitial will pass in the specific location identifier that failed.
  • Removed methods: loadInterstitial, install -- now use showInterstitial, startSession.
  • Requirement: rename ChartBoost class to Chartboost (lowercase b, no camelCase) Feeling hardcore? Run this bash command in your project directory to update camelcase ChartBoost in all your files: bash for ext in '*.m' '*.h' '*.c' '*.mm'; do find . -name "$ext" -exec sed -i '' 's/ChartBoost/Chartboost/g' '{}' \; ; done.
  • New native interstitials: faster, less memory.
  • New native MoreApps page: faster, less memory, less network activity.
  • Asset caching: individual assets are cached and only downloaded if they don't exist in cache -- all assets stored in caches folder so the OS handles memory appropriately.
  • Cache expiration: cached interstitials automatically expire after 24 hours.
  • Multi orientation support: if your app works in both orientations, simply select both (landscape and portrait) in the dashboard.
  • Orientation override: SDK detects orientation using the statusbar location, you may override this detection
  • UDID replacement: iOS 6 compatible.
  • didCacheInterstitial: called when an interstitial is successfully cached from the server, interstitial location identifier passed in.
  • didCacheMoreApps: called when the MoreApps page is successfully cached from the server.
  • shouldRequestInterstitialsInFirstSession: default is YES, you may override to NO if you don't want interstitials displayed until after the 2nd startSession (for compliance with Human Interface Guidelines).
  • Version notifications: if a new version of the SDK is released, you'll get a version notification in the Xcode console if current device is iPhone Simulator.
  • Bundle assets: you may include frame and cross promotion assets into your binary.
  • Displaying interstitial no longer fails when there is no appDelegate window property.
  • Fixed memory leaks.
  • SDK supported - coming soon to the dashboard: Interstitial animations: four, configurable from the dashboard.
  • SDK supported - coming soon to the dashboard: Retina support for interstitials and MoreApps
  • SDK supported - coming soon to the dashboard: New cell types.