Version 12.0.0 - 4/18/2022¶
Introduced the XCFramework in our build pipeline to replace legacy static library
Enhanced the minimum supported version to iOS 10.0, tvOS 10.0, and watchOS 3.0
Introduced NS_SWIFT_NAME() in header file for re-defining all external Flurry APIs and enums in swift
Fixed the background session reporting issue that caused long session duration
Fixed FlurryConsent crashes
APIs removed : * [Flurry setSessionReportsOnCloseEnabled:] * [Flurry setSessionReportsOnPauseEnabled:] * [Flurry logPaymentTransactionParamsWithTransactionId:productId:currency:productName:transactionState:userDefinedParams:statusCallback:] * [Flurry logFlurryPaymentTransactionParamsWithTransactionId:productId:quantity:price:currency:productName:transactionState:userDefinedParams:statusCallback:]
Version 11.4.0 - 11/29/2021¶
Introduced drop rule for user property
Added new APIs for Flurry
Add new manual payment log API
[Flurry logPaymentTransactionWithTransactionId:productId:quantity:price:currency:productName:transactionState:userDefinedParams:statusCallback:]
Add new setter APIs
Add [Flurry setAppVersion:]
Add [Flurry setSessionContinueSeconds:]
Add [Flurry setCountBackgroundSessions:]
API deprecations
[Flurry logFlurryPaymentTransactionParamsWithTransactionId:productId:quantity:price:currency:productName:transactionState:userDefinedParams:statusCallback:]
Fixed publisher segmentation registering internal listener during initialization
Changed all public enum to NS_ENUM for better swift compatibility
Fixed FlurryConfig memory leaks during initialization
Update Copyright (c) 2021 Yahoo
Version 11.3.0 - 8/12/2021¶
You asked for standard events and we are here to tell you, you are getting them! Standard Events help you track standardized actions that users take within your app – for example, making a purchase, adding a social comment, or clicking on an Ad. We are taking the guess work out on what to call the events and what parameters to pass in by providing an API to seamlessly log all of these standard actions within your app.
Fix missing crash report on tvOS SDK
Version 11.2.1 - 4/06/2021¶
Separates xcode11 and xcode 12 builds
FlurryMessaging auto integration crash fix
Fix UIApplication.endBackgroundTask(_:) risk
Fix incorrect crash report stacktrace for log error and exception
Version 11.2.0 - 11/30/2020¶
Separates xcode 11 and xcode 12 builds
Symbolication error fix
Background sessions fix
App orientation crash fix
Version 11.1.1 - 10/8/2020¶
Fixed location source threading warning
Potentially fixed interface orientation data source crash
Version 11.1.0 - 09/15/2020¶
Fixed duplicate symbol issue in crash reporter
Upgraded APIs level for Interface orientation data source and fixed potential race condition
Version 11.0.0 - 08/24/2020¶
Flurry Analytics Support for iOS 14.0, tvOS 14.0, watchOS 7.0
Added support for iOS 14 App Tracking Transparency.
Added SKAdNetwork Conversion Value: Publishers can use Flurry to manage & understand Conversion Value.
Fixed bugs in FlurryKVStorage for nested data types
Fixed crash on FlurrySignalConnectionTypeDataProvider KVC issue
Updated Flurry Ads to be compatible for Flurry Analytics 11.0.0
New APIs for FlurrySKAdNetwork
[FlurrySKAdNetwork flurryUpdateConversionValueWithEvent:]
[FlurrySKAdNetwork flurryUpdateConversionValue:]
API Deprecations
[Flurry logPaymentTransactionParamsWithTransactionId:productId:quantity:price:currency:productName:transactionState:userDefinedParams:statusCallback:]
[Flurry logPaymentTransactionParamsWithTransactionId:productId:quantity:price:currency:productName:transactionState:userDefinedParams:statusCallback:]
API Removals
[Flurry logAllPageViewsForTarget:]
[Flurry stopLogPageViewsForTarget:]
[Flurry logPageView]
Version 10.3.4 - 07/23/2020¶
Fixed crash analytics issue
Fixed App orientation data validation crash
Removed base64 encoded params for error frame
Version 10.3.3 - 6/24/2020¶
Fixed unarchiving exception with NSSecureCoding conformed
Fixed watchOS / iOS SDK connectivity issues
Version 10.3.2 - 6/11/2020¶
Fixed memory leaks in FlurryDataSender and FlurryDataSenderIndex
Fixed crash in FlurryiOSUtil while getting CoreTelephony data
Fixed missing launch options when session cold starts from push open using FlurryMessaging
Upgraded API levels for various iOS/watchOS frameworks
Version 10.3.1 - 4/23/2020¶
Fixed crash when session cold starts
Fixed crash on iPad iOS 12.x
Version 10.3.0 - 4/16/2020¶
Fixed Crash on FlurryWatchConnectivity when running an iPad
Fixed crash caused by fetching app state in background thread
Fixed crash caused by invalid pointer during URLSession construction
Added sanity check for userId to conform to data type String
Version 10.2.0 - 1/08/2020¶
- API Additions:
- New apis for FlurryUserProperties
Added [FlurryUserProperties set: values:]
Added [FlurryUserProperties set: value:]
Added [FlurryUserProperties add: values:]
Added [FlurryUserProperties add: value:]
Added [FlurryUserProperties remove: values:]
Added [FlurryUserProperties remove: value:]
Added [FlurryUserProperties remove:]
Added [FlurryUserProperties flag:]
Watchos streaming sdk watchconnectivity bug fix
Fixed bug when setCrashReportingEnable:NO
Version 10.1.0 - 12/02/2019¶
- API Additions:
- COPPA support:
[FlurryCCPA setDataSaleOptOut:]
[FlurryCCPA deleteData:]
[FlurryAgentBuilder withDataSaleOptOut:]
Fix for FConfig fetch fail
Fixed revenue APIs call back crash
Removed all references to UIWebView and now uses WKWebView for ad content.
Version 10.0.0 - 09/17/2019¶
Redesigned, slimmer SDK structured on the modular analytics session resulting in reduced SDK size, shorter cold start, and laying down the foundation for server-side configurable session definition.
Flurry Analytics Support for watchOS 5
Added a new set of [TVML JavaScript APIs](https://developer.yahoo.com/flurry/docs/analytics/gettingstarted/tvos/)
Added tvOS support for Flurry Messaging
Flurry.setUserId() can now be set/unset within the same session
Added logPaymentTransactionParamsWithTransactionId() to manually log payments
Fixed crash in FlurrySKAppstoreController caused by iOS 13
Fixed crash in FlurryAdActorDefferedQueue
Added withSessionOrigin(), withSessionOriginVersion(), withSessionOriginParameters(), withSessionDeeplink() and withSessionProperties() to FlurrySessionBuilder
Added multi platform support for podspec so that FlurrySDK pod can be used for iOS, tvOS and watchOS
API Deprecations¶
[Flurry logAllPageViewsForTarget:]
[Flurry stopLogPageViewsForTarget:]
[Flurry logPageView]
API Removals¶
[Flurry setAppVersion:]
[Flurry setTVEventFlushCount:]
[Flurry setTVSessionReportingInterval:]
[Flurry setDebugLogEnabled:]
[Flurry setSessionContinueSeconds:]
[Flurry setCrashReportingEnabled:]
[Flurry logAllPageViews:]
[Flurry setPulseEnabled:]
[Flurry setEventLoggingEnabled:]
[Flurry setBackgroundSessionEnabled:]
[Flurry setLatitude:longitude:horizontalAccurary:verticalAccuracy:]
Version 9.3.1 - 02/18/2019¶
Flurry Messaging fix: for auto-integrated messaging, on cold-start app open sends pushOpen event.
Version 9.3.0 - 01/15/2019¶
address GDPR consent collection approach; reach out to Flurry legal to inquire about providing consent
Fixed withIncludeBackgroundSessionInMetrics value getting reset
Version 9.2.1 - 10/12/2018¶
Runs on Xcode 10 environment
Adds missing arm64_32 armv7k archs for Apple Watch series 4
Version 9.2.0 - 09/28/2018¶
Added Flurry Remote Config. Learn more.
Support for Apple Watch series 4
Fixed for network status in outgoing ad requests
Upgraded ZipArchive library to v2.1.3
Version 9.1.0 - 09/06/2018¶
Add Flash Sale ad support
Add support for Portrait Video
Add Play / Pause control APIs to video ads
Version 9.0.0 - 06/13/2018¶
Refactored core ads and analytics modules
Version 8.6.1 - 05/14/2018¶
Fix for preCacheEventLogEXC_BAD_ACCESS KERN crash
Fix for session start report delay
Version 8.6.0 - 05/07/2018¶
Added support for Universal Links and Deep Links.
Version 8.5.0 - 04/12/2018¶
Added APIs for publishers to pass GDPR scope/ user consent
Added API for developers to take end users to Oath’s Privacy Dashboard for access/ download GDPR Data Subject Rights
Fix for preCacheEventLogEXC_BAD_ACCESS KERN_INVALID_ADDRESS crash
Deprecated Flurry Pulse API (note: Product will End of Life on 5/15)
Version 8.4.0 - 02/20/2018¶
Added frequency cap support for native ads
Added support for Crash Tags and Breadcrumbs in preparation for UI release in 2Q’18
Fix for Push Entitlement warning
Introduced withIncludeBackgroundSessionInMetrics API option on Builder
Deprecated setBackgroundSessionsEnabled API
Version 8.3.4 - 11/29/2017¶
Fix for FlurryReachabilityCallback crash
Fix for link issue for Watch apps
Version 8.3.3 - 11/28/2017¶
Fix for memory leak introduced in 8.3.2
Version 8.3.2 - 11/22/2017¶
Potential fix for FlurryReachabilityCallback crash
Deprecated Geo tracking API. Updated Geo tracking info.
Version 8.3.1 - 10/24/2017¶
Fix for app freeze related to ads on iOS 11
Xcode 9 and iOS 11 compatible
Version 8.3.0 - 10/12/2017¶
Fix for UIKit APIs called from background thread
Version 8.2.2 - 10/05/2017¶
Fix for ad calls blocking main thread
Version 8.2.1 - 09/12/2017¶
Fix for potential race condition during app foreground/ background transitions
Version 8.2.0 - 08/28/2017¶
Minor bug fixes
Version 8.1.0 - 05/30/2017¶
Support for re-engagement ads
Support for 3P viewability criteria for static ads
Added new 3P beacon for partially viewable ads
Version 8.0.2 - 4/25/2017¶
Updated analytics session reporting. A session fragment sent for a crashed session will now contain all events and errors that occurred during that session.
Version 8.0.1 - 04/05/2017¶
Updated pod file to reflect minimum version support as iOS 8.
Version 8.0.0 - 04/04/2017¶
Moved the Minimum OS version supported to iOS 8.
Ads video player update.
Added fixes for Revenue receipt validation.
Removed Flurry static Ads APIs.
Deprecated Tumblr in-app sharing APIs.
Bug fix for Ad Targeting.
Version 7.10.0 - 02/23/2017¶
Fix for native video ad callback delegate
Version 7.9.2 - 01/11/2017¶
Bug fix for memory corruption issue
Version 7.9.1 - 01/05/2017¶
Added API to enable auto-logging IAP as Revenue Analytics events
Deprecating API setEventLoggingEnabled
Minor bug fixes
Version 7.8.2 - 11/17/2016¶
Fix for crash in FlurryAdManager module
Support for new image ad asset called Thumbnail (180x180)
Minor bug fixes
Version 7.8.0 - 10/03/2016¶
Revenue Analytics to track revenue through inApp purchases. Learn more on Revenue Analytics here
Fix for crash in the FlurryContentLoadingManager module
Fix for crash in FlurryAdManager module
Version 7.6.6 - 07/07/2016¶
Portrait video support on interstitial ad spaces
Fix for crash in the FlurryContentLoadingManager module
Fix for Pulse crash caused during retransmission attempts
Version 7.6.4 - 06/07/2016¶
Improved synchronization for Pulse
Fixed crash when using avro to build Flurry Pulse requests
Pausing video on collapse
tvOS Support added
Version 7.6.3 - 05/12/2016¶
Fixed issues in Moat 3rd party video viewability
Version 7.6.0 - 04/04/2016¶
Support for Moat 3rd party video viewability, which allows demand side to attract additional brand advertisers who have Moat viewability as a table stakes requirement
Fixed crash with battery monitoring
Fixed unrecognized selector in Pulse
Version 7.5.2 - 03/09/2016¶
Flurry is dropping support for iOS5 from both analytics and Ads SDK. Minimum supported version from this release onwards is iOS6
Version 7.5.1 - 02/20/2016¶
Fix for unrecognized selector errors seen on iOS7 and below
Version 7.5.0 - 02/16/2016¶
Flurry Analytics support for watchOS 2
Support for VAST video demand from RTB Marketplace in native ad unit.
Fixed crash in data sender and ad manager asset loading modules
Fixed the corner scenarios when the video ads appear cut off
Version 7.3.0 - 10/29/2015¶
Moved SDK code to ARC to provide more stability
Support for expandable ad views for Gemini native ads. Publishers can construct an ad unit that is viewable in both collapsed and expanded format utilizing more detailed assets in the larger view.
Version 7.2.1 - 10/02/2015¶
Fixed issue with gesture handler that could cause accidental clicks on native ads
Version 7.2.0 - 9/24/2015¶
Support for Pulse 2.0, providing more flexibility to share app data to mobile partners without integrating their SDKs. Learn more on Pulse here
Fix for race condition where UI freezes when multiple ads are fetched
Version 7.1.1 - 9/15/2015¶
Fixed warning about bitcode compatibility on iOS 9. “ld: warning: full bitcode bundle could not be generated. The library must be generated from Xcode archive build with bitcode enabled (Xcode setting ENABLE_BITCODE)”
Version 7.1.0 - 9/08/2015¶
- iOS 9 Compatibility
Support for Bitcode
Ads SDK will open URLs in Safari view controller for iOS 9 devices
Minimum iOS version support moved to iOS 5 for both ads and analytics SDK, dropping support for armv6
Version 7.0.0 - 8/25/2015¶
Introducing Tumblr in-app sharing functionality that allows publishers to share content and deeplinks on Tumblr to drive installs and reengagement
Version 6.7.0 - 7/21/2015¶
Ads
Added support for Gemini native infeed video ads
Added call to action text, app categories, and app star ratings for native ads
Improved memory management for native ads
Analytics
Introducing support for specific attributes to be associated with sessions
Improved session reporting resulting in reduced report size
Version 6.6.0 - 6/26/2015¶
Safeguards against premature removal of native ad objects
Fixed crashes in asset precaching
Version 6.5.0 - 5/21/2015¶
Fixed conversion attribution in native ads
Version 6.4.0 - 4/22/2015¶
Analytics support for Apple watch. Please read Analytics readme included in 6.4.0 SDK package to integrate Flurry analytics in watchkit extension
Ad requests are queued if session is not yet created
Improved serving of install ads
Improved logging of ad events
Added spaceDidDismiss delegate callback for native ads
Support for legacy Static Ad APIs is deprecated
Version 6.3.0 - 3/26/2015¶
Support for new product - Flurry Pulse - currently in developer preview, which allows applications to send app usage data to comScore through Flurry SDK.
Fixed issue with slowness in main thread when using native ads
Fixed crashes in httpTaskDelegate, ad delegate callbacks and viewabilityTracker
Provided an API to check if native ad has expired
Provided an API to get current session ID and added callback at session start
Fixed issue with time stamp in session reports
Updated SDK support for display ads mediation Admob, Millennial and inMobi
Version 6.2.0 - 2/17/2015¶
Introduced Yahoo Gemini Native ads support. Flexible ads that can be tailored to fit the design of any app
Support for Brightroll demand in video adspaces
Minor fixes for MRAID and Video ads
Version 6.0.0 - 12/09/2014¶
New object oriented APIs to make integration easier. It is recommended to use these APIs.
Use of HTTPS is now mandatory
Inform server of launch options and developer’s preference on tracking background sessions
Fixed issues with VAST wrapper
logEvent() returns status code to indicate if event was recorded successfully
Version 5.4.0 - 09/23/2014¶
Support for iOS 8 and Xcode6 GM
Adapted to the view architecture of iPhone 6/iOS 8
Removed nonmodal view controller support for banners and full screen ads.
displayAdForSpace:modallyForViewController has been deprecated.
displayAdForSpace:onView:viewControllerForPresentation and fetchAndDisplayAdForSpace:view:viewController are the updated versions of banner and interstitial ad APIs and take in a view controller that will be used for presenting full screen ads.
Improved caching for videos served through VAST
Handles situation where no iOS identifiers are available for background apps
Version 5.3.0 - 08/20/2014¶
Support for iOS 8 and Xcode 6 builds (Tested with iOS 8 beta5)
Removed MAC address access for iOS 7 and above
Improved video ads caching for iOS 8
Support for mediation of Facebook audience network
Version 5.2.0 - 07/01/2014¶
Support more DSP partners for VAST ads
Improved handling of Client side RTB auction
Version 5.1.0 - 06/16/2014¶
Improved in-app iTunes store experience through VAST ads
Fix for “video did not play” error
Version 5.0.0 - 04/25/2014¶
Pre-caching feature is available for video ads
Support for VAST videos over RTB marketplace
Video ads can be made non-skippable through developer controlled setting
Support for client initiated marketplace auction at time of display
Stabilized experience for in-app app-store
Improved display of banner and full screen ads
logAllPageViews method is deprecated. logAllPageViewsForTarget and stopLogPageViewsForTarget should be used instead of the deprecated method.
Changed the adWillDisplayForSpace and adRequestComplete methods in FlurryCustomAdNetwork protocol to pass the ad space.
Version 4.4.0 - 03/27/2014¶
Fix to prevent pixel from firing early for banner ads served on marketplace
Support for click tracking on marketplace interstitials
Prevent back to back auctions
User Agent is included in the ad requests
Device orientation is included in ad request to get better sized ads
Fix to prevent crash in opening in-app appstore from landscape only application
Preventive check in logEvent to avoid crash if bad parameters are passed in
Enhanced user experience for banner ads and post view on video ads
Video completion callback (videoDidFinish) is only supported for rewarded ad spaces
Version 4.3.2 - 02/06/2014¶
Addressed issue related to referencing IdentifierForAdvertisers that could lead to app being flagged during Apple review process.
Version 4.3.1 - 01/09/2014¶
Fix for app freeze if user clicks multiple times while auto-redirecting to app store after watching a video
Fix for race condition that can cause video to close abruptly
Fix for crash reports showing up if application uses another solution with same underlying crash tool
Prevent Rich Media ads from showing two close buttons
Prevent ads from opening in external view before display has been called
Maintain different cache for portrait and landscape interstitial ads
Version 4.3.0 - 10/17/2013¶
Support for 64bit ARMv8 architecture
Fix for events logged during app resume to have correct event identifiers
Invalidate ads cache when values for keyword targeting are changed
Fix for race condition that can cause banner ad to disappear
Added support to honor frequency cap of 1
Appcircle & Appspot takeover ads in non-modal view will be locked to the screen orientation in which they were fetched
Please note that if app uses Flurry SDK for mediation of third party networks and is built with ARM64 slice, there may be issues in rendering of ads from those networks on iPhone5s and other ARM64 iOS devices. This is because some third party networks have not updated their SDKs to support ARM64.
Version 4.2.4 - 09/11/2013¶
Fix to prevent reporting of existing crashes on an abnormal exit of application
Fix for session reporting issue when application is in background
Version 4.2.3 - 08/09/2013¶
Compatible with iOS 7 beta releases
Updated getFlurryAgentVersion routine to retrieve a string that has the Flurry SDK release version number in addition to the agent version
Crash Analytics has been promoted from Beta to General Availability and is now recommended for all users. It is disabled by default to avoid conflicting with other crash reporting tools that may be in use
iOS Security framework is now required for Flurry Analytics
Improved handling of network connectivity loss for ads and analytics
Ad support framework is now required for Flurry Ads
Better error handling and improved ad rendering on interstitials
Improved metrics collection for ads
Jumptap mediation has been deprecated
Mobclix mediation supported through mobclix 3.2.0 only
Version 4.2.2 - 06/24/2013¶
Changed the library names from libFlurry*.a to libFlurry*_<ReleaseVersion>.a
Support to display ads modally on a view. Please refer to advertising readme for more information
New api setBackgroundSessionEnabled() to indicate if app is a background app. This setting is suitable for music and radio apps. Please refer to analytics readme for more information
New api setLogLevel() allows app to control Flurry’s log level
Support for InMobi SDK 3.7.0
Support for Millenial Media SDK 5.0.1
Fix for inapp appstore crash
Bug fixes for CPC/CPI ads, video ads
Support for oriented cache to show correct banner ads when screen orientation changes
Support for Click tracking for RTB
Secure transport option for ad request
Version 4.2.1 - 4/29/2013¶
Fix for linking errors associated with the Crash Reporter framework. Crash reporting is only supported for applications that target armv7 architectures (armv7s inclusive). If an applications is built for both armv6 and armv7 then it will continue to work as before when it runs on an armv6 device and will have crash reporting disabled.
Version 4.2.0 - 4/8/2013¶
Linked with a crash reporter framework that has fix for device kernel panics that were seen on iOS 6 devices with the earlier framework in version 4.1.1
Crash reporting and capturing stack traces for logged errors is turned off by default. Please see documentation on how to enable.
Fix to make video banner rotations consistent.
Fix for iAD blank banner ads.
Fix to prevent banner refreshes while the app is backgrounded.
Fixes incorrect ad impression counting for third party networks.
Improved handling of errors from third party networks.
Improved network usage while sending ad reports
Added change to reload mraid ad on takeovers.
Added change to support server redirection from specific mraid providers
Improved memory management.
Use of in-app appstore, on ios 6, for some of the ads that re-direct you to the app store.
Improvements to ad failovers in ad network waterfalls.
Version 4.1.0.6 - 3/14/2013¶
Changes the temporary storage location for files.
Version 4.1.1 - 2/21/2013¶
Crash Reporting (BETA)
fixes mediation/waterfall for ads
fixes for ad delegate callback not being fired
fixed for removing uipasteboard, added in sanity check
fixes for admob mediation takeovers
fixes for missing adlogs after video completion
fixes for no banners after video ads
allow same adnetwork in ad request
memory management in endTimedEvent
Version 4.1.0.5 - 2/13/2013¶
Fixes the memory corruption in the case where the notification pane is shown after ads are fetched or shown
Version 4.1.0.4 - 2/01/2013¶
Fixes crash in the case where ads are displayed on top of alerts.
Version 4.1.0.3 - 1/24/2013¶
Fixes issue where blank interstitials are displayed on apps running on iOS 4.3
Fixes crash that can arise with MallocScribble enabled
Version 4.1.0 - 11/29/2012¶
Support for Mraid v1.0 specification.
Fixes issue when app backgrounded with video confirmation dialog showing.
Version 4.0.9 - 11/16/2012¶
Incorporates additional ids for better conversion and ad tracking.
Version 4.0.8 - 11/08/2012¶
Fixes issue on letterboxed apps on iPhone 5. The close button on videos became non-responsive in landscape.
Version 4.0.7 - 10/28/2012¶
Updates initial display for autoplay videos
Updates video to disable FullScreen mode button
Fixes scenario where ad showing in landscape can initially appear with portrait layout
Updates to only reset window state for mraid ads if the ad was previously expanded
Fixes crash related to UIPasteboard
Version 4.0.6 - 10/15/2012¶
Updates ads from mediation networks to center within a view when the view is larger than the ad frame
Fixes issue in landscape only apps where ad rotation can cause future alerts to appear in portrait
Version 4.0.5 - 10/03/2012¶
Adds the following methods to fetch, check and display ads. These allow for finer control of ad display:
(void) fetchAdForSpace:(NSString*)space frame:(CGRect)frame size:(FlurryAdSize)size;
(BOOL) adReadyForSpace:(NSString*)space;
(void)displayAdForSpace:(NSString*)space onView:(UIView *)view;
(void)fetchAndDisplayAdForSpace:(NSString*)space view:(UIView *)viewContainer size:(FlurryAdSize)size;
Deprecates following methods to show ads and check availability in favor of the above:
(BOOL) isAdAvailableForSpace:(NSString*)space view:(UIView *)view size:(FlurryAdSize)size timeout:(int64_t)timeout;
(BOOL)showAdForSpace:(NSString*)space view:(UIView *)viewContainer size:(FlurryAdSize)size timeout:(int64_t)timeout;
Introduces new and updated delegates in FlurryAdDelegate.h
(void) spaceDidReceiveAd:(NSString*)adSpace;
(void) spaceDidFailToReceiveAd:(NSString*)adSpace error:(NSError *)error;
(BOOL) spaceShouldDisplay:(NSString*)adSpace interstitial:(BOOL)interstitial;
(void) spaceDidFailToRender:(NSString *)space error:(NSError *)error;
(void)spaceWillDismiss:(NSString *)adSpace interstitial:(BOOL)interstitial;
(void)spaceDidDismiss:(NSString *)adSpace interstitial:(BOOL)interstitial;
Adds new method in FlurryAds to register a custom network
(void) addCustomAdNetwork:(Class<FlurryCustomAdNetwork>)adNetworkClass withProperties:(id<FlurryCustomAdNetworkProperties>)adNetworkProperties;
Updates support for ad networks to the following versions:
inMobi 3.6.0
Mobclix 600
Millennial 4.6.1
Other changes:
Fixes issue where network calls at the end of a session could cause app to terminate instead of backgrounding
Fixes issue where the loss of connection in the middle of ad serving could block the main thread.
Updates all ad units to support larger display of iPhone5
Updates metric collection to better represent fill rate for mediation
Updates Custom ad network framework to make it easier to integrate ad networks that are not supported natively. The new files are included in the Mediation folder of the SDK download.
Version 4.0.4 - 09/17/2012¶
Removes Debug symbols that cause warnings during compilation
Version 4.0.3 - 09/13/2012¶
Built from Xcode 4.5 and includes support for iPhone 5 and armv7s
Strips symbols to avoid conflict with other JSON libraries
Disables context menu in ad
Disables scrolling for banners
Updates to Custom Network Framework
Adds support for iAd takeovers
Update to support Millennial 4.6
Version 4.0.2 - 07/30/2012¶
Updates reachability status changed notification to be namespaced to avoid collisions
Improvements to resolve memory leaks
Version 4.0.1 - 07/19/2012¶
Improves responsiveness when user closes an ad
Fixes issue of ads not appearing intermittently on iOS 4.3
Add reachability methods to determine network availability before showing pre-cached ads
Adds fix to prevent decoding issues in transmission of user cookies
Removes extraneous file that referenced CoreLocation framework
Version 4.0.0 - 06/14/2012¶
Adds method to check if an ad is available
Adds method initialize to allow precaching of ads at startup.
Adds methods setKeywordsForTargeting:(NSDictionary *)keywords and clearKeywords to allow campaign targeting based on developer supplied key-value pairs.
Updates showAdForSpace:viewContainer:size:timeout method to include default size parameter
Updates showAdForSpace:viewContainer:timeout to display ad completely asynchronously (without blocking) when timeout is set to 0. This is useful for the display of banners where interaction with the app can continue unimpeded by the ad display (in contrast to an interstital view).
Updates addUserCookies:(NSString *)key value:(NSString *)value to setUserCookies:(NSDictionary *)userCookies to allow for input of multiple cookies in a single line of code.
Updates ad tracking to specify unique key for every distinct frame.
Fixes issue where banner would no longer refresh if the next ad was unavailable.
Fixes issue where displaying a rewarded catalog only logged the impression for the first offer.
Fixes issues where a video ad couldn’t be closed and clicking on the fullscreen button caused the video to go black.
Fix for retaining reported ids in raw byte form rather than converting to hex strings.
Version 4.0.a.83 - 05/18/2012¶
Implementation of Rewarded Catalogs
Added a method to enable setting up individual ad spaces to receive test ads.
Fixes issue where adding an ad to a larger viewspace applies a double offset to the frame’s x and y coordinates, which caused misalignment.
Version 4.0.a.81 - 05/08/2012¶
Implementation of AdNetworks
iAd: banners
Admob: banners, interstitials
Millennial Media: banners, interstitials
inMobi: banners, interstitials
Greystripe: banners, insterstitials
Mobclix: banners, interstitals
Jumptap: banners, interstitials
Allows finer control of ad display with new method [FlurryAds removeAdFromSpace:]. This method allows a publisher to decide exactly when to remove an ad from a view (e.g. - in the viewDidDissapear selector).
Adds FlurryAdDelegate.h to FlurryAds bundle. This header file specifies the delegates that allow advanced interaction with ad serving.
Removes loading activity indicator that appeared over banners when switching to a new ad.
Prevents sending of ad logs at the end of session on devices and apps that do not support backgrounding. Invoking network connections in that scenario could lead to a crash.
Fixes case in which an ad can be over-released leading to a crash.
Fixes crash that can arise when automatically refreshing a banner ad.
Version 4.0.a.80 - 05/02/2012¶
Initial Release of Alpha SDK
Version 3.1.0¶
Removed UDID collection
Version 3.0.9¶
Maintenance build to improve performance
Version 3.0.8¶
Fix mem leaks in Analytics
Version 3.0.7¶
The Flurry iOS 3.0.7 SDK provides the following changes:
Fix for referencing deallocated Ad delegate in Clips
Reduce possible duplicate symbols between Analytics lib and Ad libs when compiling with -all_load option
Fix for the issue where at times the Reengagement banner expands from the top even though the collapsed banner is at the bottom of the screen
Update Reengagement documentation
Version 3.0.6¶
The Flurry iOS 3.0.6 SDK provides the following changes:
Unique Ids for events, errors, AppCircle ad logs
Ad callbacks updated to use unique Id and ad state offset params
In-App canvas view for AppCircle
Checksum for validating data integrity
Fix possible backup session file corruption
Version 3.0.5¶
The Flurry iOS 3.0.5 SDK provides the following changes:
prevents running startSession more than once if a session is already started
fixes a memory leak
fixes impression overcounting that can occur sometimes in updated banners
Version 3.0.4¶
The Flurry iOS 3.0.4 SDK provides the following changes:
resolves Pasteboard copy/paste issue
Version 3.0.3¶
The Flurry iOS 3.0.3 SDK provides the following changes:
Follows new policies on session data and backup rules for different iOS versions
Fix to use most appropriate ad version request to improve bandwidth usage
Reports another FlurryId which is expected to be more universal and easier for developers and partners to work with
Remove duplicates in ad reporting which had previously inflated impression and click counts before the backend workaround was put in place
Version 3.0.2¶
The Flurry iOS 3.0.2 SDK provides the following changes:
Adds an enhancement to the reporting protocol.
Updates to improve user experience of banners:
Only accepts a single click
No longer displays blank intermediary page
No longer show canvas page
Banner rotates when returning to app
Version 3.0.1¶
The Flurry iOS 3.0.1 SDK renames appName to avoid a naming conflict for apps submitted to AppStore.
Version 3.0.0¶
The Flurry iOS 3.0.0 SDK introduces a new modularized library structure, separating Analytics API functionality and AppCircle API functionality into FlurryAnalytics and FlurryAppCircle libraries.
Developers still get all the same functions and features as before but with the following added advantages of a new modularized library structure:
logical groupings of API functionality and features
reduced overhead of application size and memory footprint with independence to linking Advertisement libraries as desired
The FlurryAnalytics library has a new API method to optionally set session reporting requests to HTTPS.
Version 2.8.5¶
Marks the first release including AppCircle Clips.
Version 2.8.4¶
Disabled check for Jailbroken devices
Version 2.8.3¶
Added a new recommendation type (takeover) for iPhone AppCircle
Version 2.8.2¶
Change multiple method signatures to standardize SDK methods in different platforms
Remove libFlurryWithLocation and replaced with a generalized setLocation() function
Version 2.8.1¶
Added support for AppCircle in iPad applications including a new recommendation type (take over)
Improved speed of reporting on session start
Version 2.7¶
Supports Xcode 3.2.3 and above
Default pause session reporting is on for applications using iOS 4 features
Configurable pause time before new session is started
Displaying and closing canvas can be animated
Allow endTimedEvent to update event parameters
Change setAppVersion to be configured before session starts
To support OS 3.x, please set Base SDK to iPhone Device 4.0 and iPhone OS Deployment Target to iPhone OS 3.0. Extra linker flags may be needed if NSConcreteGlobalBlock and UIBackgroundTaskInvalid runtime error occur under 3.x.
The linker flags are:
weak_framework UIKit
weak_library /usr/lib/libSystem.B.dylib
Version 2.6¶
Improve memory usage in pause/resume cycle
Pausing the app will not send sessions by default
Fix AppCircle image parse error
Close AppCircle canvas on pause
Version 2.5¶
Send sessions data when paused.
May create a new session depending on length of pause or will continue the current session on resume.
Version 2.4¶
Supports Xcode 3.2.3 and below
Removed device data collection including Model Name, OS Version and Firmware Version
Version 2.3¶
Adds support for features from the old PinchMedia API including the ability to:
Track page views
Time events
Acquire age demographics
Version 2.2¶
AppCircle is now available to all developers!
Applications will attempt to send session reports at the end of the session by default to improve reporting speed. This can be disabled via the SDK.
Note thatAppCircle is disabled by default, please enable AppCircle from the SDK before using AppCircle banners.
Version 2.1:¶
AppCircle release candidate SDK for use in the Beta program
Version 2.0b18:¶
Added tracking of when sessions are paused for new analytics
Fixed jailbreak metrics reporting in the iPhone simulator
Version 1.4¶
Added the ability to detect jailbroken devices which will be shown as a metric soon.
Add automatic detection of the AppStore Id of the application to make categorization easier.
Version 1.3¶
Includes minor bug fixes including minor memory leak fixes.
Version 1.2¶
Added the option to enable session reports to be sent at the end of a user session. This will increase the speed at which event data, error logging and session length metrics are updated as it does not require waiting until the next session to report.
Version 1.1¶
Added the ability to track user paths and event parameters to allow for more robust reporting around custom events.