Flurry Blog

Flurry Product Updates

Current Articles | RSS Feed RSS Feed

New Flurry SDK Available for iPhone OS 4.0 (iOS)



Dear Developers,

As promised, Flurry is making available a modified version of its SDK based on its interpretation of the updatd iPhone Developer Program License Agreement (PLA).  This version of the Flurry SDK is compatible with XCode 3.2.3 and designed for OS 4.0 (iOS) applications.

In this version of the Flurry SDK, we modified which data is collected. This updated SDK version does not collect the following device data: device name, operating system version and firmware version. Because Apple allows the collection of UDID for the purpose of advertising, we continue to collect this data as the Flurry SDK includes AppCircle, Flurry's mobile advertising solution.

Please let us know if you have any questions or feedback about the SDK at support@flurry.com.  As always, we welcome your input. 

You can download this latest Flurry SDK here.


Peter Farago
VP Marketing


What assurances can you provide that Apple will not reject applications containing this new version of the SDK?
Posted @ Tuesday, June 15, 2010 5:51 PM by Jeff
I downloaded the new Flurry SDK Tuesday night, 16 June. I then submitted an update for one of my apps to Apple using the new Flurry SDK. I will post the results here!
Posted @ Wednesday, June 16, 2010 9:19 AM by Daniel
Does anyone know what happens to the Apps on the App Store that contain earlier Flurry SDK's? Would Apple remove them from sale because they now breach the new PLA or are they only targeting new Apps?
Posted @ Friday, June 18, 2010 3:17 AM by Nigel
Hi Peter, 
Thanks for the update. So if I understand this correctly; Apple is effectively removing the ability for any statics gathering of: 
1. What device the user even has (iPhone, iPod ot iPad) 
2. The OS version of said devices (e.g 3.1.2, 3.2 or 4.0)  
3. The firmware number of said devices (iPhone 3.1.3, iPhone 3.2, iPhone 4.0 etc) 
I will have no way of seeing this information in reports from iOS4 onwards. 
As a developer this sort of information is incredibly helpful when planning new features & supporting the existing user base. 
Posted @ Friday, June 18, 2010 1:11 PM by Malcolm Barclay
As I mentioned last week, I submitted an app update using the new Flurry SDK. Today the update was accepted by the app store and is ready for sale. 
Posted @ Monday, June 21, 2010 9:42 PM by Daniel
Every time I download and try to expand the SDK, i get various complaints from the various ZIP programs on OS X that the file is corrupted or something.  
Is there a version of the download the works properly? 
Using unzip on the command line we get: 
Archive: Flurry iPhone SDK v2.5.zip 
End-of-central-directory signature not found. Either this file is not 
a zipfile, or it constitutes one disk of a multi-part archive. In the 
latter case the central directory and zipfile comment will be found on 
the last disk(s) of this archive. 
unzip: cannot find zipfile directory in one of Flurry iPhone SDK v2.5.zip or 
Flurry iPhone SDK v2.5.zip.zip, and cannot find Flurry iPhone SDK v2.5.zip.ZIP, period. 
using the Finder, we get: 
Operation not permitted. 
Has anybody else seen / fixed this? 
Posted @ Tuesday, June 22, 2010 11:53 PM by Mark
Following up on my own comment – Looks to be an Interwebnets problem. Downloads are getting aborted. Will keep trying until I can get a full download of the SDK :P 
good luck! 
Posted @ Wednesday, June 23, 2010 12:11 AM by Mark
I could concede device name and hardware version but knowing which devices are using my apps is important. Do I add features to take advantage of a camera? Do I take advantage of newer OS functionality.
Posted @ Wednesday, June 23, 2010 11:01 PM by Tyler
Is the new sdk backward compatible with the earlier os? which sdk should we use for apps that run both in OS 4 and in OS lesser than 4.?
Posted @ Wednesday, July 14, 2010 1:19 AM by jithin
We are getting runtime errors against v2.7 that we don't get with v2.6 when deploying to a iOS 3.0 device: 
dyld: Symbol not found: __NSConcreteGlobalBlock 
Referenced from: /var/mobile/Applications/7907A760-52E7-44D8-A31B-860E4086678A/MyApp.app/MyApp 
Expected in: /usr/lib/libSystem.B.dylib 
Posted @ Tuesday, August 17, 2010 10:39 PM by derek
Getting the same runtime error as derek here. Have you compiled Flurry with LLVM gcc instead of gcc? There's a difference in how NSConcreteGlobalBlock is linked in both compilers.
Posted @ Wednesday, September 01, 2010 4:28 AM by hypo
I'm getting the same Symbol not fond error using 2.7 on a 3.1.x device.
Posted @ Thursday, September 02, 2010 9:01 AM by Rob LaRubbio
Yeah I am getting the same error, it seems to be present in OS versions below 4.0
Posted @ Thursday, September 02, 2010 4:07 PM by James from apple
I pinged iphonesupport@flurry.com, their answer was: 
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
Posted @ Thursday, September 02, 2010 4:31 PM by Rob LaRubbio
Just in time -- thanks for linker flags, worked perfectly!
Posted @ Friday, September 03, 2010 12:11 AM by James Skidmore
I'm having the same problem and can't seem to get those linker flags working. Any advice on how to set the linker flags up?
Posted @ Tuesday, October 05, 2010 6:54 PM by Warren
Following the instruction "set Base SDK to iPhone Device 4.0 and iPhone OS Deployment Target to iPhone OS 3.0." 
If I make a debug build the problem is solved, but I'm having the same problem making a release, even with the linker flags: 
Undefined symbols: 
"__NSConcreteGlobalBlock", referenced from: 
___block_holder_tmp_1.296 in libFlurry.a(FlurryAPI.o) 
"_UIBackgroundTaskInvalid", referenced from: 
_UIBackgroundTaskInvalid$non_lazy_ptr in libFlurry.a(FlurryAPI.o) 
(maybe you meant: _UIBackgroundTaskInvalid$non_lazy_ptr) 
ld: symbol(s) not found 
collect2: ld returned 1 exit status 
I'm using Xcode 3.2.4 and Flurry iPhone SDK v2.7 (Build: 42 Released: 7/12/10). 
If I try iOS4.x also as Deployment Target it makes no difference. 
Thanks in advance
Posted @ Monday, October 11, 2010 11:12 AM by Carlos
I got error " "_OBJC_CLASS_$_FlurryAPI", referenced from: 
" when I i was added both sdk 3.1.3 and 4.1 and urn it on 4.1 . 
It's run succesfully on 3.1.3 but show error when i run it on 4.1. 
I must require to use flurry in both version sdk. Can anybody help me for it that how to resolve this error? 
Posted @ Tuesday, November 02, 2010 7:16 AM by Dinesh Sharma
Remember to Clean All Targets when you experiment with the linker flags!  
I started out NOT doing so but then I solved dyld: Symbol not found: __NSConcreteGlobalBlock with linker flag (Linking - Other Linker Flags) -weak_library /usr/lib/libSystem.B.dylib Base SDK iOS 4.2 Deployment Target iOS 3.0 
Hope you do too
Posted @ Friday, December 03, 2010 4:28 AM by StrefanA
Hi, I´m using SDK iOS 4.1 and FlurryAPI 2.7, and I have the follow error: 
"_OBJC_CLASS_$_FlurryAPI", referenced from: objc-class-ref-to-FlurryAPI in MailComposerAppDelegate.o 
I don´t know how I can resolve it.... 
Posted @ Wednesday, January 26, 2011 4:27 PM by Israel San José González
Comments have been closed for this article.