diff --git a/KISSmetrics-iOS-SDK.xcworkspace/xcshareddata/KISSmetrics-iOS-SDK.xccheckout b/KISSmetrics-iOS-SDK.xcworkspace/xcshareddata/KISSmetrics-iOS-SDK.xccheckout index cee9215..5c9ca17 100644 --- a/KISSmetrics-iOS-SDK.xcworkspace/xcshareddata/KISSmetrics-iOS-SDK.xccheckout +++ b/KISSmetrics-iOS-SDK.xcworkspace/xcshareddata/KISSmetrics-iOS-SDK.xccheckout @@ -10,33 +10,33 @@ KISSmetrics-iOS-SDK IDESourceControlProjectOriginsDictionary - 0BE6AFAF-DCB1-4A72-9B22-E3AFAC6A8AFA + 8372B87BEE59222E93EC0068EBDE98ADE182F55F ssh://github.com/willrust/MockNSURLConnection.git - AA7FB4BF-5400-41A1-A158-7137AF0D9FCE + F3D139DFC5397739DBA0D653ED16217BDC9EBFA2 ssh://github.com/kissmetrics/KISSmetrics-iOS-SDK.git IDESourceControlProjectPath KISSmetrics-iOS-SDK.xcworkspace IDESourceControlProjectRelativeInstallPathDictionary - 0BE6AFAF-DCB1-4A72-9B22-E3AFAC6A8AFA + 8372B87BEE59222E93EC0068EBDE98ADE182F55F ../TestFrameworks/MockNSURLConnection - AA7FB4BF-5400-41A1-A158-7137AF0D9FCE + F3D139DFC5397739DBA0D653ED16217BDC9EBFA2 .. IDESourceControlProjectURL ssh://github.com/kissmetrics/KISSmetrics-iOS-SDK.git IDESourceControlProjectVersion - 110 + 111 IDESourceControlProjectWCCIdentifier - AA7FB4BF-5400-41A1-A158-7137AF0D9FCE + F3D139DFC5397739DBA0D653ED16217BDC9EBFA2 IDESourceControlProjectWCConfigurations IDESourceControlRepositoryExtensionIdentifierKey public.vcs.git IDESourceControlWCCIdentifierKey - AA7FB4BF-5400-41A1-A158-7137AF0D9FCE + F3D139DFC5397739DBA0D653ED16217BDC9EBFA2 IDESourceControlWCCName KISSmetrics-iOS-SDK @@ -44,7 +44,7 @@ IDESourceControlRepositoryExtensionIdentifierKey public.vcs.git IDESourceControlWCCIdentifierKey - 0BE6AFAF-DCB1-4A72-9B22-E3AFAC6A8AFA + 8372B87BEE59222E93EC0068EBDE98ADE182F55F IDESourceControlWCCName MockNSURLConnection diff --git a/KISSmetricsAPI/KMAArchiver.m b/KISSmetricsAPI/KMAArchiver.m index f3057f2..a1e627d 100644 --- a/KISSmetricsAPI/KMAArchiver.m +++ b/KISSmetricsAPI/KMAArchiver.m @@ -40,7 +40,7 @@ static NSString * const kKMABaseUrlKey = @"baseUrl"; static NSString * const kKMABaseUrlDefault = @"https://trk.kissmetrics.com"; static NSString * const kKMAAPIClientType = @"mobile_app"; -static NSString * const kKMAAPIUserAgent = @"kissmetrics-ios/2.1.0"; +static NSString * const kKMAAPIUserAgent = @"kissmetrics-ios/2.2.0"; static NSString * const kKMAKeychainAppVersionKey = @"KMAAppVersion"; static KMAArchiver *sSharedArchiver = nil; diff --git a/KISSmetricsAPI/UIDevice+KMAHardware.h b/KISSmetricsAPI/UIDevice+KMAHardware.h index 428956e..8421ec7 100644 --- a/KISSmetricsAPI/UIDevice+KMAHardware.h +++ b/KISSmetricsAPI/UIDevice+KMAHardware.h @@ -22,6 +22,8 @@ #define KMA_IPHONE_5_NAMESTRING @"iPhone 5" #define KMA_IPHONE_5C_NAMESTRING @"iPhone 5C" #define KMA_IPHONE_5S_NAMESTRING @"iPhone 5S" +#define KMA_IPHONE_6_NAMESTRING @"iPhone 6" +#define KMA_IPHONE_6PLUS_NAMESTRING @"iPhone 6 Plus" #define KMA_IPHONE_UNKNOWN_NAMESTRING @"Unknown iPhone" #define KMA_IPOD_TOUCH_1_NAMESTRING @"iPod touch 1" @@ -76,6 +78,8 @@ typedef enum { KMA_UIDeviceiPhone5CGSMCDMA, KMA_UIDeviceiPhone5SGSM, KMA_UIDeviceiPhone5SGSMCDMA, + KMA_UIDeviceiPhone6, + KMA_UIDeviceiPhone6Plus, KMA_UIDeviceiPodTouch1, KMA_UIDeviceiPodTouch2, diff --git a/KISSmetricsAPI/UIDevice+KMAHardware.m b/KISSmetricsAPI/UIDevice+KMAHardware.m index 04a3549..45b84cb 100644 --- a/KISSmetricsAPI/UIDevice+KMAHardware.m +++ b/KISSmetricsAPI/UIDevice+KMAHardware.m @@ -74,6 +74,8 @@ @implementation UIDevice (KMAHardware) iPhone5,4 -> iPhone 5C/GSM+CDMA, N49 iPhone6,1 -> iPhone 5S/GSM, N51 iPhone6,2 -> iPhone 5S/GSM+CDMA, N53 + iPhone7,1 -> iPhone 6 Plus, N56 + iPhone7,2 -> iPhone 6, N61 iPod1,1 -> iPod touch 1, N45 iPod2,1 -> iPod touch 2, N72 @@ -257,6 +259,8 @@ + (NSUInteger) kmac_platformTypeForString:(NSString *)platform if ([platform isEqualToString:@"iPhone5,4"]) return KMA_UIDeviceiPhone5CGSMCDMA; if ([platform isEqualToString:@"iPhone6,1"]) return KMA_UIDeviceiPhone5SGSM; if ([platform isEqualToString:@"iPhone6,2"]) return KMA_UIDeviceiPhone5SGSMCDMA; + if ([platform isEqualToString:@"iPhone7,1"]) return KMA_UIDeviceiPhone6Plus; + if ([platform isEqualToString:@"iPhone7,2"]) return KMA_UIDeviceiPhone6; // iPod if ([platform hasPrefix:@"iPod1"]) return KMA_UIDeviceiPodTouch1; @@ -340,6 +344,8 @@ + (NSString *) kmac_platformStringForType:(NSUInteger)platformType case KMA_UIDeviceiPhone5CGSMCDMA: return KMA_IPHONE_5C_NAMESTRING; case KMA_UIDeviceiPhone5SGSM: return KMA_IPHONE_5S_NAMESTRING; case KMA_UIDeviceiPhone5SGSMCDMA: return KMA_IPHONE_5S_NAMESTRING; + case KMA_UIDeviceiPhone6: return KMA_IPHONE_6_NAMESTRING; + case KMA_UIDeviceiPhone6Plus: return KMA_IPHONE_6PLUS_NAMESTRING; case KMA_UIDeviceUnknowniPhone: return KMA_IPHONE_UNKNOWN_NAMESTRING; case KMA_UIDeviceiPodTouch1: return KMA_IPOD_TOUCH_1_NAMESTRING; diff --git a/KISSmetricsSDK.framework/KISSmetricsSDK b/KISSmetricsSDK.framework/KISSmetricsSDK index ed28921..bb2b605 100644 Binary files a/KISSmetricsSDK.framework/KISSmetricsSDK and b/KISSmetricsSDK.framework/KISSmetricsSDK differ diff --git a/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAArchiverTests.m b/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAArchiverTests.m index cb06787..d3789e1 100644 --- a/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAArchiverTests.m +++ b/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAArchiverTests.m @@ -98,7 +98,7 @@ - (void)setUp _key = @"b8f68fe5004d29bcd21d3138b43ae755a16c12cf"; _clientType = @"mobile_app"; - _userAgent = @"kissmetrics-ios/2.1.0"; + _userAgent = @"kissmetrics-ios/2.2.0"; [KMAArchiver sharedArchiverWithKey:_key]; @@ -851,7 +851,7 @@ - (void)testArchiveData { NSMutableArray *sendQueue = [[KMAArchiver sharedArchiver] uth_getSendQueue]; - [sendQueue addObject:@"https://trk.kissmetrics.com/a?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_x=ios/2.1.0&_p=testnewuser%40example.com&_n=testolduser%40example.com"]; + [sendQueue addObject:@"https://trk.kissmetrics.com/a?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_x=ios/2.2.0&_p=testnewuser%40example.com&_n=testolduser%40example.com"]; NSLog(@"sendQueue = %@", sendQueue); diff --git a/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMADeviceHardwareTests.m b/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMADeviceHardwareTests.m index 17a5439..a29ae0f 100644 --- a/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMADeviceHardwareTests.m +++ b/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMADeviceHardwareTests.m @@ -43,7 +43,7 @@ @implementation KMADeviceHardwareTests - (void)testkmac_platformReturnsPlatfromString { NSArray *expectedPlatforms = @[@"iFPGA", - @"iPhone1,1", @"iPhone1,2", @"iPhone 3G", @"iPhone2,1", @"iPhone3,1", @"iPhone3,2", @"iPhone3,3", @"iPhone4,1", @"iPhone5,1", @"iPhone5,2", @"iPhone5,3", @"iPhone5,4", @"iPhone6,1", @"iPhone6,2", + @"iPhone1,1", @"iPhone1,2", @"iPhone 3G", @"iPhone2,1", @"iPhone3,1", @"iPhone3,2", @"iPhone3,3", @"iPhone4,1", @"iPhone5,1", @"iPhone5,2", @"iPhone5,3", @"iPhone5,4", @"iPhone6,1", @"iPhone6,2", @"iPhone7,1", @"iPhone7,2", @"iPod1,1", @"iPod2,1", @"iPod2,2", @"iPod3,1", @"iPod4,1", @"ipad0,1", @"iPad3,2", @"iPad3,3", @"iPad4,1", @"iPad4,2", @"iPad4,3", @"iProd2,1", @@ -129,6 +129,16 @@ - (void)testkmac_platformTypeForString_iPhone6_2 XCTAssert(([UIDevice kmac_platformTypeForString:@"iPhone6,2"] == KMA_UIDeviceiPhone5SGSMCDMA), @"Expected iPhone6,2 to return KMA_UIDeviceiPhone5SGSMCDMA"); } +- (void)testkmac_platformTypeForString_iPhone7_1 +{ + XCTAssert(([UIDevice kmac_platformTypeForString:@"iPhone7,1"] == KMA_UIDeviceiPhone6Plus), @"Expected iPhone7,1 to return KMA_UIDeviceiPhone6Plus"); +} + +- (void)testkmac_platformTypeForString_iPhone7_2 +{ + XCTAssert(([UIDevice kmac_platformTypeForString:@"iPhone7,2"] == KMA_UIDeviceiPhone6), @"Expected iPhone7,2 to return KMA_UIDeviceiPhone6"); +} + - (void)testkmac_platformTypeForString_iPod1 { XCTAssert(([UIDevice kmac_platformTypeForString:@"iPod1,1"] == KMA_UIDeviceiPodTouch1), @"Expected iPod1,1 to return KMA_UIDeviceiPodTouch1"); diff --git a/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAQueryEncoderTests.m b/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAQueryEncoderTests.m index fb830be..a9c236e 100644 --- a/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAQueryEncoderTests.m +++ b/KISSmetricsSDK_framework_builder/KISSmetricsSDK_UnitTests/KMAQueryEncoderTests.m @@ -53,7 +53,7 @@ - (void)setUp { _key = @"b8f68fe5004d29bcd21d3138b43ae755a16c12cf"; _clientType = @"mobile_app"; - _userAgent = @"kissmetrics-ios/2.1.0"; + _userAgent = @"kissmetrics-ios/2.2.0"; _queryEncoder = [[KMAQueryEncoder alloc] initWithKey:_key clientType:_clientType @@ -152,7 +152,7 @@ - (void)test_createUrlForEventAndProperties { identity:@"testuser@example.com" timestamp:timestamp]; - NSString *expectedUrl = @"/e?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_c=mobile_app&_u=kissmetrics-ios/2.1.0&_p=testuser%40example.com"; + NSString *expectedUrl = @"/e?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_c=mobile_app&_u=kissmetrics-ios/2.2.0&_p=testuser%40example.com"; expectedUrl = [expectedUrl stringByAppendingString:[NSString stringWithFormat:@"&_n=testEvent&_d=1&_t=%i&propertyOne=testPropertyOne&propertyTwo=testPropertyTwo", timestamp]]; XCTAssertEqualObjects(createdUrl, expectedUrl, @"URL incorrect"); @@ -167,7 +167,7 @@ - (void)test_createUrlForProperties { identity:@"testuser@example.com" timestamp:timestamp]; - NSString *expectedUrl = @"/s?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_c=mobile_app&_u=kissmetrics-ios/2.1.0&_p=testuser%40example.com&_d=1&_t="; + NSString *expectedUrl = @"/s?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_c=mobile_app&_u=kissmetrics-ios/2.2.0&_p=testuser%40example.com&_d=1&_t="; expectedUrl = [expectedUrl stringByAppendingString:[NSString stringWithFormat:@"%i", timestamp]]; expectedUrl = [expectedUrl stringByAppendingString:@"&propertyOne=testPropertyOne&propertyTwo=testPropertyTwo"]; @@ -180,7 +180,7 @@ - (void)test_createUrlForIdentity { NSString *createdUrl = [_queryEncoder createAliasQueryWithAlias:@"testnewuser@example.com" andIdentity:@"testolduser@example.com"]; - NSString *expectedUrl = @"/a?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_c=mobile_app&_u=kissmetrics-ios/2.1.0&_p=testnewuser%40example.com&_n=testolduser%40example.com"; + NSString *expectedUrl = @"/a?_k=b8f68fe5004d29bcd21d3138b43ae755a16c12cf&_c=mobile_app&_u=kissmetrics-ios/2.2.0&_p=testnewuser%40example.com&_n=testolduser%40example.com"; XCTAssertEqualObjects(createdUrl, expectedUrl, @"URL incorrect"); }