diff --git a/Classes/BITHockeyHelper.h b/Classes/BITHockeyHelper.h index 012da489f3..6f42322cf6 100644 --- a/Classes/BITHockeyHelper.h +++ b/Classes/BITHockeyHelper.h @@ -30,10 +30,6 @@ #import #import "HockeySDKEnums.h" -/* NSString helpers */ -NSString *bit_URLEncodedString(NSString *inputString); -NSString *bit_base64String(NSData * data, unsigned long length); - NSString *bit_settingsDir(void); BOOL bit_validateEmail(NSString *email); @@ -53,7 +49,12 @@ BOOL bit_hasEmbeddedMobileProvision(void); BITEnvironment bit_currentAppEnvironment(void); BOOL bit_isRunningInAppExtension(void); +/* NSString helpers */ +NSString *bit_URLEncodedString(NSString *inputString); +NSString *bit_base64String(NSData * data, unsigned long length); + #if !defined (HOCKEYSDK_CONFIGURATION_ReleaseCrashOnly) && !defined (HOCKEYSDK_CONFIGURATION_ReleaseCrashOnlyExtensions) +/* AppIcon helper */ NSString *bit_validAppIconStringFromIcons(NSBundle *resourceBundle, NSArray *icons); NSString *bit_validAppIconFilename(NSBundle *bundle, NSBundle *resourceBundle); diff --git a/Classes/BITHockeyHelper.m b/Classes/BITHockeyHelper.m index d14096ea7f..d777c8d4bf 100644 --- a/Classes/BITHockeyHelper.m +++ b/Classes/BITHockeyHelper.m @@ -35,38 +35,7 @@ #import #endif -#pragma mark NSString helpers - -NSString *bit_URLEncodedString(NSString *inputString) { - - // Requires iOS 7 - if ([inputString respondsToSelector:@selector(stringByAddingPercentEncodingWithAllowedCharacters:)]) { - return [inputString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet characterSetWithCharactersInString:@"!*'();:@&=+$,/?%#[]"].invertedSet]; - - } else { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - return CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, - (__bridge CFStringRef)inputString, - NULL, - CFSTR("!*'();:@&=+$,/?%#[]"), - kCFStringEncodingUTF8) - ); -#pragma clang diagnostic pop - } -} - -NSString *bit_base64String(NSData * data, unsigned long length) { - SEL base64EncodingSelector = NSSelectorFromString(@"base64EncodedStringWithOptions:"); - if ([data respondsToSelector:base64EncodingSelector]) { - return [data base64EncodedStringWithOptions:0]; - } else { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - return [data base64Encoding]; -#pragma clang diagnostic pop - } -} +#pragma mark - Helpers NSString *bit_settingsDir(void) { static NSString *settingsDir = nil; @@ -324,8 +293,44 @@ BOOL bit_isRunningInAppExtension(void) { return isRunningInAppExtension; } +#pragma mark NSString helpers + +NSString *bit_URLEncodedString(NSString *inputString) { + + // Requires iOS 7 + if ([inputString respondsToSelector:@selector(stringByAddingPercentEncodingWithAllowedCharacters:)]) { + return [inputString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet characterSetWithCharactersInString:@"!*'();:@&=+$,/?%#[]"].invertedSet]; + + } else { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" + return CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, + (__bridge CFStringRef)inputString, + NULL, + CFSTR("!*'();:@&=+$,/?%#[]"), + kCFStringEncodingUTF8) + ); +#pragma clang diagnostic pop + } +} + +NSString *bit_base64String(NSData * data, unsigned long length) { + SEL base64EncodingSelector = NSSelectorFromString(@"base64EncodedStringWithOptions:"); + if ([data respondsToSelector:base64EncodingSelector]) { + return [data base64EncodedStringWithOptions:0]; + } else { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" + return [data base64Encoding]; +#pragma clang diagnostic pop + } +} + + #if !defined (HOCKEYSDK_CONFIGURATION_ReleaseCrashOnly) && !defined (HOCKEYSDK_CONFIGURATION_ReleaseCrashOnlyExtensions) +#pragma mark AppIcon helpers + /** Find a valid app icon filename that points to a proper app icon image