From ea69a6fec559253c7bf204529433f797a33f37a8 Mon Sep 17 00:00:00 2001 From: Andreas Linde Date: Mon, 23 Sep 2013 15:23:08 +0200 Subject: [PATCH] Provide an iOS 5 compatible C helper for getting a UUID --- Classes/BITHockeyHelper.h | 1 + Classes/BITHockeyHelper.m | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/Classes/BITHockeyHelper.h b/Classes/BITHockeyHelper.h index 678938d917..985c7040bd 100644 --- a/Classes/BITHockeyHelper.h +++ b/Classes/BITHockeyHelper.h @@ -40,6 +40,7 @@ NSComparisonResult bit_versionCompare(NSString *stringA, NSString *stringB); NSString *bit_mainBundleIdentifier(void); NSString *bit_encodeAppIdentifier(NSString *inputString); NSString *bit_appName(NSString *placeHolderString); +NSString *bit_UUID(void); NSString *bit_appAnonID(void); /* UIImage helpers */ diff --git a/Classes/BITHockeyHelper.m b/Classes/BITHockeyHelper.m index 927d8b08aa..a2d498dde0 100644 --- a/Classes/BITHockeyHelper.m +++ b/Classes/BITHockeyHelper.m @@ -158,6 +158,24 @@ NSString *bit_appName(NSString *placeHolderString) { return appName; } +NSString *bit_UUID(void) { + NSString *resultUUID = nil; + + id uuidClass = NSClassFromString(@"NSUUID"); + if (uuidClass) { + resultUUID = [NSUUID UUID]; + } else { + // Create a new UUID + CFUUIDRef uuidObj = CFUUIDCreate(nil); + + // Get the string representation of the UUID + resultUUID = (NSString*)CFBridgingRelease(CFUUIDCreateString(nil, uuidObj)); + CFRelease(uuidObj); + } + + return resultUUID; +} + NSString *bit_appAnonID(void) { // try iOS6 identifierForVendor SEL vendoridSelector = NSSelectorFromString(@"identifierForVendor");