Skip to content

Commit f4c33c4

Browse files
Merge pull request #260 from Countly/appVerion-metrics
Incorporated the addition of the app version to all API requests.
2 parents fc6eec7 + f721d5c commit f4c33c4

9 files changed

+41
-15
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
- Added `requestDropAgeHours` initial config property to set a time limit after which the requests would be removed if not sent to the server
33
- Added a call to enroll users to A/B tests when getting a remote config value: 'getValueAndEnroll'
44
- Added a call to enroll users to A/B tests when getting all remote config values: 'getAllValuesAndEnroll'
5+
- Added app version in all API requests.
56

67
- Fixed sending '--' as carrier name due to platform changes from iOS version 16.4. This version and above will now not send any carrier information due to platform limitations.
78
- Mitigated an issue where users could not enroll to an A/B tests if enrollment request has failed

CountlyConfig.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,8 @@ extern CLYMetricKey const CLYMetricKeyLocale;
9494
extern CLYMetricKey const CLYMetricKeyHasWatch;
9595
extern CLYMetricKey const CLYMetricKeyInstalledWatchApp;
9696

97+
extern NSString* const kCountlyAppVersionKey;
98+
9799
//NOTE: Attribution keys
98100
typedef NSString* CLYAttributionKey NS_EXTENSIBLE_STRING_ENUM;
99101
extern CLYAttributionKey const CLYAttributionKeyIDFA;

CountlyConnectionManager.m

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,9 @@ - (void)sendCrashReport:(NSString *)report immediately:(BOOL)immediately;
458458

459459
[CountlyPersistency.sharedInstance saveToFileSync];
460460

461+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
462+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
463+
461464
NSString* serverInputEndpoint = [self.host stringByAppendingString:kCountlyEndpointI];
462465
NSMutableURLRequest* request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:serverInputEndpoint]];
463466
request.HTTPMethod = @"POST";

CountlyDeviceInfo.m

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@
3333
CLYMetricKey const CLYMetricKeyHasWatch = @"_has_watch";
3434
CLYMetricKey const CLYMetricKeyInstalledWatchApp = @"_installed_watch_app";
3535

36+
NSString* const kCountlyAppVersionKey = @"av";
37+
3638
@interface CountlyDeviceInfo ()
3739
@property (nonatomic) BOOL isInBackground;
3840
#if (TARGET_OS_IOS)

CountlyFeedbackWidget.m

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,9 @@ - (NSURLRequest *)dataRequest
150150
kCountlyFBKeyPlatform, CountlyDeviceInfo.osName,
151151
kCountlyFBKeyShown, @"1",
152152
kCountlyFBKeyWidgetID, self.ID];
153+
154+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
155+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
153156

154157
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
155158

@@ -185,6 +188,9 @@ - (NSURLRequest *)displayRequest
185188
kCountlyFBKeyAppVersion, CountlyDeviceInfo.appVersion,
186189
kCountlyFBKeyPlatform, CountlyDeviceInfo.osName,
187190
kCountlyFBKeyWidgetID, self.ID];
191+
192+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
193+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
188194

189195
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
190196

CountlyFeedbacks.m

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,9 @@ - (NSURLRequest *)widgetCheckURLRequest:(NSString *)widgetID
331331
NSString* queryString = [CountlyConnectionManager.sharedInstance queryEssentials];
332332

333333
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyFBKeyWidgetID, widgetID];
334+
335+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
336+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
334337

335338
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
336339

@@ -361,6 +364,9 @@ - (NSURL *)widgetDisplayURL:(NSString *)widgetID
361364
queryString = [queryString stringByAppendingFormat:@"&%@=%@&%@=%@",
362365
kCountlyFBKeyWidgetID, widgetID,
363366
kCountlyFBKeyAppVersion, CountlyDeviceInfo.appVersion];
367+
368+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
369+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
364370

365371
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
366372

@@ -476,6 +482,9 @@ - (NSURLRequest *)feedbacksRequest
476482
kCountlyQSKeyDeviceID, CountlyDeviceInfo.sharedInstance.deviceID.cly_URLEscaped,
477483
kCountlyQSKeySDKName, CountlyCommon.sharedInstance.SDKName,
478484
kCountlyQSKeySDKVersion, CountlyCommon.sharedInstance.SDKVersion];
485+
486+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
487+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
479488

480489
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
481490

CountlyPersistency.m

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,9 @@ - (void)addToQueue:(NSString *)queryString
7979

8080
if (!queryString.length || [queryString isEqual:NSNull.null])
8181
return;
82+
83+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
84+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
8285

8386
@synchronized (self)
8487
{

CountlyRemoteConfigInternal.m

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -255,14 +255,17 @@ - (NSURLRequest *)remoteConfigRequestForKeys:(NSArray *)keys omitKeys:(NSArray *
255255
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyRCKeyOmitKeys, [omitKeys cly_JSONify]];
256256
}
257257

258+
if (self.enrollABOnRCDownload) {
259+
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyRCKeyAutoOptIn, @"1"];
260+
}
261+
258262
if (CountlyConsentManager.sharedInstance.consentForSessions)
259263
{
260264
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyQSKeyMetrics, [CountlyDeviceInfo metrics]];
261265
}
262266

263-
if (self.enrollABOnRCDownload) {
264-
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyRCKeyAutoOptIn, @"1"];
265-
}
267+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
268+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
266269

267270
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
268271

@@ -654,10 +657,8 @@ - (NSURLRequest *)downloadVariantsRequest
654657

655658
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyQSKeyMethod, kCountlyRCKeyFetchVariant];
656659

657-
if (CountlyConsentManager.sharedInstance.consentForSessions)
658-
{
659-
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyQSKeyMetrics, [CountlyDeviceInfo metrics]];
660-
}
660+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
661+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
661662

662663
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
663664

@@ -783,10 +784,8 @@ - (NSURLRequest *)downloadExperimentInfoRequest
783784

784785
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyQSKeyMethod, kCountlyRCKeyFetchExperiments];
785786

786-
if (CountlyConsentManager.sharedInstance.consentForSessions)
787-
{
788-
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyQSKeyMetrics, [CountlyDeviceInfo metrics]];
789-
}
787+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
788+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
790789

791790
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
792791

@@ -824,10 +823,8 @@ - (NSURLRequest *)enrollInVarianRequestForKey:(NSString *)key variantName:(NSStr
824823
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyRCKeyVariant, variantName.cly_URLEscaped];
825824
}
826825

827-
if (CountlyConsentManager.sharedInstance.consentForSessions)
828-
{
829-
queryString = [queryString stringByAppendingFormat:@"&%@=%@", kCountlyQSKeyMetrics, [CountlyDeviceInfo metrics]];
830-
}
826+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
827+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
831828

832829
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
833830

CountlyServerConfig.m

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,9 @@ - (NSURLRequest *)serverConfigRequest
130130
kCountlyQSKeySDKName, CountlyCommon.sharedInstance.SDKName,
131131
kCountlyQSKeySDKVersion, CountlyCommon.sharedInstance.SDKVersion];
132132

133+
queryString = [queryString stringByAppendingFormat:@"&%@=%@",
134+
kCountlyAppVersionKey, CountlyDeviceInfo.appVersion];
135+
133136
queryString = [CountlyConnectionManager.sharedInstance appendChecksum:queryString];
134137

135138
NSMutableString* URL = CountlyConnectionManager.sharedInstance.host.mutableCopy;

0 commit comments

Comments
 (0)