Skip to content

Commit 48ae1bb

Browse files
authored
Merge pull request #239 from adjust/v4381
Version 4.38.1
2 parents 2b1b3c4 + 36fc62d commit 48ae1bb

31 files changed

+632
-483
lines changed

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
### Version 4.38.1 (30th April 2024)
2+
#### Added
3+
- Added sending of the additional iOS SDK observability parameters for debugging purposes.
4+
5+
#### Fixed
6+
- Removed nullability type specifier warnings (https://github.com/adjust/ios_sdk/issues/703).
7+
8+
#### Native SDKs
9+
- [[email protected]][ios_sdk_v4.38.2]
10+
- [[email protected]][android_sdk_v4.38.3]
11+
12+
---
13+
114
### Version 4.38.0 (27th March 2024)
215
#### Added
316
- Added iOS Privacy Manifest for the Adjust SDK.
@@ -645,6 +658,7 @@
645658
[ios_sdk_v4.37.0]: https://github.com/adjust/ios_sdk/tree/v4.37.0
646659
[ios_sdk_v4.37.2]: https://github.com/adjust/ios_sdk/tree/v4.37.2
647660
[ios_sdk_v4.38.0]: https://github.com/adjust/ios_sdk/tree/v4.38.0
661+
[ios_sdk_v4.38.2]: https://github.com/adjust/ios_sdk/tree/v4.38.2
648662

649663
[android_sdk_v4.10.4]: https://github.com/adjust/android_sdk/tree/v4.10.4
650664
[android_sdk_v4.11.0]: https://github.com/adjust/android_sdk/tree/v4.11.0

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4.38.0
1+
4.38.1

android/libs/adjust-android.jar

0 Bytes
Binary file not shown.

example/ios/Podfile.lock

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PODS:
2-
- Adjust (4.38.0):
3-
- Adjust/Core (= 4.38.0)
4-
- Adjust/Core (4.38.0)
2+
- Adjust (4.38.2):
3+
- Adjust/Core (= 4.38.2)
4+
- Adjust/Core (4.38.2)
55
- boost (1.76.0)
66
- CocoaAsyncSocket (7.6.5)
77
- DoubleConversion (1.1.6)
@@ -287,8 +287,8 @@ PODS:
287287
- React-jsinspector (0.69.4)
288288
- React-logger (0.69.4):
289289
- glog
290-
- react-native-adjust (4.38.0):
291-
- Adjust (= 4.38.0)
290+
- react-native-adjust (4.38.1):
291+
- Adjust (= 4.38.2)
292292
- React-Core
293293
- React-perflogger (0.69.4)
294294
- React-RCTActionSheet (0.69.4):
@@ -508,7 +508,7 @@ EXTERNAL SOURCES:
508508
:path: "../node_modules/react-native/ReactCommon/yoga"
509509

510510
SPEC CHECKSUMS:
511-
Adjust: c98d85594a746ff9f2bafe424c5beb6db66cd6a8
511+
Adjust: 5a0f813fe079212bed61404d1f635cc330068b4a
512512
boost: a7c83b31436843459a1961bfd74b96033dc77234
513513
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
514514
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
@@ -541,7 +541,7 @@ SPEC CHECKSUMS:
541541
React-jsiexecutor: a27badbbdbc0ff781813370736a2d1c7261181d4
542542
React-jsinspector: 8a3d3f5dcd23a91e8c80b1bf0e96902cd1dca999
543543
React-logger: 1088859f145b8f6dd0d3ed051a647ef0e3e80fad
544-
react-native-adjust: 801fe33f0dc0097b0474f11d08572a89fa6602ce
544+
react-native-adjust: 83114d391a4a7a438e2c4d8e8137bc7810e7076f
545545
React-perflogger: cb386fd44c97ec7f8199c04c12b22066b0f2e1e0
546546
React-RCTActionSheet: f803a85e46cf5b4066c2ac5e122447f918e9c6e5
547547
React-RCTAnimation: 19c80fa950ccce7f4db76a2a7f2cf79baae07fc7

example/yarn.lock

Lines changed: 207 additions & 206 deletions
Large diffs are not rendered by default.

index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ Adjust.getAmazonAdId = function(callback) {
136136
};
137137

138138
Adjust.getSdkVersion = function(callback) {
139-
module_adjust.getSdkVersion("react-native4.38.0", callback);
139+
module_adjust.getSdkVersion("react-native4.38.1", callback);
140140
};
141141

142142
Adjust.setReferrer = function(referrer) {
@@ -280,7 +280,7 @@ Adjust.onPause = function(testParam) {
280280
// AdjustConfig
281281

282282
var AdjustConfig = function(appToken, environment) {
283-
this.sdkPrefix = "react-native4.38.0";
283+
this.sdkPrefix = "react-native4.38.1";
284284
this.appToken = appToken;
285285
this.environment = environment;
286286
this.logLevel = null;

ios/Adjust/ADJActivityHandler.m

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -480,6 +480,7 @@ - (void)sendAdServicesClickPackage:(ADJActivityHandler *)selfI
480480
sessionParameters:self.sessionParameters
481481
trackingStatusManager:self.trackingStatusManager
482482
createdAt:now];
483+
clickBuilder.internalState = selfI.internalState;
483484

484485
ADJActivityPackage *clickPackage =
485486
[clickBuilder buildClickPackage:ADJAdServicesPackageKey
@@ -684,6 +685,7 @@ - (void)trackAttStatusUpdateI:(ADJActivityHandler *)selfI {
684685
sessionParameters:selfI.sessionParameters
685686
trackingStatusManager:self.trackingStatusManager
686687
createdAt:now];
688+
infoBuilder.internalState = selfI.internalState;
687689

688690
ADJActivityPackage *infoPackage = [infoBuilder buildInfoPackage:@"att"];
689691
[selfI.packageHandler addPackage:infoPackage];
@@ -1119,6 +1121,7 @@ - (void)transferSessionPackageI:(ADJActivityHandler *)selfI
11191121
sessionParameters:selfI.sessionParameters
11201122
trackingStatusManager:self.trackingStatusManager
11211123
createdAt:now];
1124+
sessionBuilder.internalState = selfI.internalState;
11221125
ADJActivityPackage *sessionPackage = [sessionBuilder buildSessionPackage:[selfI.internalState isInDelayedStart]];
11231126
[selfI.packageHandler addPackage:sessionPackage];
11241127
[selfI.packageHandler sendFirstPackage];
@@ -1194,6 +1197,7 @@ - (void)eventI:(ADJActivityHandler *)selfI
11941197
sessionParameters:selfI.sessionParameters
11951198
trackingStatusManager:self.trackingStatusManager
11961199
createdAt:now];
1200+
eventBuilder.internalState = selfI.internalState;
11971201
ADJActivityPackage *eventPackage = [eventBuilder buildEventPackage:event
11981202
isInDelay:[selfI.internalState isInDelayedStart]];
11991203
[selfI.packageHandler addPackage:eventPackage];
@@ -1235,7 +1239,7 @@ - (void)adRevenueI:(ADJActivityHandler *)selfI
12351239
sessionParameters:selfI.sessionParameters
12361240
trackingStatusManager:self.trackingStatusManager
12371241
createdAt:now];
1238-
1242+
adRevenueBuilder.internalState = selfI.internalState;
12391243
ADJActivityPackage *adRevenuePackage = [adRevenueBuilder buildAdRevenuePackage:source payload:payload];
12401244
[selfI.packageHandler addPackage:adRevenuePackage];
12411245
if (selfI.adjustConfig.eventBufferingEnabled) {
@@ -1267,7 +1271,7 @@ - (void)trackSubscriptionI:(ADJActivityHandler *)selfI
12671271
sessionParameters:selfI.sessionParameters
12681272
trackingStatusManager:self.trackingStatusManager
12691273
createdAt:now];
1270-
1274+
subscriptionBuilder.internalState = selfI.internalState;
12711275
ADJActivityPackage *subscriptionPackage = [subscriptionBuilder buildSubscriptionPackage:subscription
12721276
isInDelay:[selfI.internalState isInDelayedStart]];
12731277
[selfI.packageHandler addPackage:subscriptionPackage];
@@ -1316,7 +1320,7 @@ - (void)disableThirdPartySharingI:(ADJActivityHandler *)selfI {
13161320
sessionParameters:selfI.sessionParameters
13171321
trackingStatusManager:self.trackingStatusManager
13181322
createdAt:now];
1319-
1323+
dtpsBuilder.internalState = selfI.internalState;
13201324
ADJActivityPackage *dtpsPackage = [dtpsBuilder buildDisableThirdPartySharingPackage];
13211325

13221326
[selfI.packageHandler addPackage:dtpsPackage];
@@ -1357,7 +1361,7 @@ - (BOOL)trackThirdPartySharingI:(ADJActivityHandler *)selfI
13571361
sessionParameters:selfI.sessionParameters
13581362
trackingStatusManager:self.trackingStatusManager
13591363
createdAt:now];
1360-
1364+
tpsBuilder.internalState = selfI.internalState;
13611365
ADJActivityPackage *dtpsPackage = [tpsBuilder buildThirdPartySharingPackage:thirdPartySharing];
13621366

13631367
[selfI.packageHandler addPackage:dtpsPackage];
@@ -1394,7 +1398,7 @@ - (BOOL)trackMeasurementConsentI:(ADJActivityHandler *)selfI
13941398
sessionParameters:selfI.sessionParameters
13951399
trackingStatusManager:self.trackingStatusManager
13961400
createdAt:now];
1397-
1401+
tpsBuilder.internalState = selfI.internalState;
13981402
ADJActivityPackage *mcPackage = [tpsBuilder buildMeasurementConsentPackage:enabled];
13991403

14001404
[selfI.packageHandler addPackage:mcPackage];
@@ -1433,7 +1437,7 @@ - (void)trackAdRevenueI:(ADJActivityHandler *)selfI
14331437
sessionParameters:selfI.sessionParameters
14341438
trackingStatusManager:self.trackingStatusManager
14351439
createdAt:now];
1436-
1440+
adRevenueBuilder.internalState = selfI.internalState;
14371441
ADJActivityPackage *adRevenuePackage = [adRevenueBuilder buildAdRevenuePackage:adRevenue
14381442
isInDelay:[selfI.internalState isInDelayedStart]];
14391443
[selfI.packageHandler addPackage:adRevenuePackage];
@@ -1500,7 +1504,7 @@ - (void)verifyPurchaseI:(ADJActivityHandler *)selfI
15001504
sessionParameters:selfI.sessionParameters
15011505
trackingStatusManager:self.trackingStatusManager
15021506
createdAt:now];
1503-
1507+
purchaseVerificationBuilder.internalState = selfI.internalState;
15041508
ADJActivityPackage *purchaseVerificationPackage = [purchaseVerificationBuilder buildPurchaseVerificationPackage:purchase];
15051509
purchaseVerificationPackage.purchaseVerificationCallback = completionHandler;
15061510
[selfI.purchaseVerificationHandler sendPurchaseVerificationPackage:purchaseVerificationPackage];
@@ -1917,7 +1921,7 @@ - (void)appWillOpenUrlI:(ADJActivityHandler *)selfI
19171921
sessionParameters:selfI.sessionParameters
19181922
trackingStatusManager:self.trackingStatusManager
19191923
createdAt:now];
1920-
1924+
clickBuilder.internalState = selfI.internalState;
19211925
clickBuilder.deeplinkParameters = [adjustDeepLinks copy];
19221926
clickBuilder.attribution = deeplinkAttribution;
19231927
clickBuilder.clickTime = clickTime;
@@ -2021,7 +2025,7 @@ - (void)setDeviceTokenI:(ADJActivityHandler *)selfI
20212025
sessionParameters:selfI.sessionParameters
20222026
trackingStatusManager:self.trackingStatusManager
20232027
createdAt:now];
2024-
2028+
infoBuilder.internalState = selfI.internalState;
20252029
ADJActivityPackage *infoPackage = [infoBuilder buildInfoPackage:@"push"];
20262030

20272031
[selfI.packageHandler addPackage:infoPackage];
@@ -2070,7 +2074,7 @@ - (void)setPushTokenI:(ADJActivityHandler *)selfI
20702074
sessionParameters:selfI.sessionParameters
20712075
trackingStatusManager:self.trackingStatusManager
20722076
createdAt:now];
2073-
2077+
infoBuilder.internalState = selfI.internalState;
20742078
ADJActivityPackage *infoPackage = [infoBuilder buildInfoPackage:@"push"];
20752079
[selfI.packageHandler addPackage:infoPackage];
20762080

@@ -2111,7 +2115,7 @@ - (void)setGdprForgetMeI:(ADJActivityHandler *)selfI {
21112115
sessionParameters:selfI.sessionParameters
21122116
trackingStatusManager:self.trackingStatusManager
21132117
createdAt:now];
2114-
2118+
gdprBuilder.internalState = selfI.internalState;
21152119
ADJActivityPackage *gdprPackage = [gdprBuilder buildGdprPackage];
21162120
[selfI.packageHandler addPackage:gdprPackage];
21172121

@@ -2183,6 +2187,7 @@ - (void)checkLinkMeI:(ADJActivityHandler *)selfI {
21832187
sessionParameters:selfI.sessionParameters
21842188
trackingStatusManager:self.trackingStatusManager
21852189
createdAt:now];
2190+
clickBuilder.internalState = selfI.internalState;
21862191
clickBuilder.clickTime = [NSDate dateWithTimeIntervalSince1970:now];
21872192
ADJActivityPackage *clickPackage = [clickBuilder buildClickPackage:@"linkme" linkMeUrl:pasteboardUrlString];
21882193
[selfI.sdkClickHandler sendSdkClick:clickPackage];
@@ -2940,7 +2945,7 @@ - (void)disableThirdPartySharingForCoppaEnabledI:(ADJActivityHandler *)selfI {
29402945
sessionParameters:selfI.sessionParameters
29412946
trackingStatusManager:self.trackingStatusManager
29422947
createdAt:now];
2943-
2948+
tpsBuilder.internalState = selfI.internalState;
29442949
ADJActivityPackage *dtpsPackage = [tpsBuilder buildThirdPartySharingPackage:thirdPartySharing];
29452950

29462951
[selfI.packageHandler addPackage:dtpsPackage];

ios/Adjust/ADJActivityPackage.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,16 @@
2424

2525
@property (nonatomic, copy) void (^purchaseVerificationCallback)(id);
2626

27+
@property (nonatomic, assign) NSUInteger errorCount;
28+
29+
@property (nonatomic, copy) NSNumber *firstErrorCode;
30+
31+
@property (nonatomic, copy) NSNumber *lastErrorCode;
32+
33+
@property (nonatomic, assign) double waitBeforeSend;
34+
35+
- (void)addError:(NSNumber *)errorCode;
36+
2737
// Logs
2838

2939
@property (nonatomic, copy) NSString *suffix;

ios/Adjust/ADJActivityPackage.m

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,16 @@ - (NSString *)failureMessage {
6060
return [NSString stringWithFormat:@"Failed to track %@%@", [ADJActivityKindUtil activityKindToString:self.activityKind], self.suffix];
6161
}
6262

63+
- (void)addError:(NSNumber *)errorCode {
64+
self.errorCount = self.errorCount + 1;
65+
66+
if (self.firstErrorCode == nil) {
67+
self.firstErrorCode = errorCode;
68+
} else {
69+
self.lastErrorCode = errorCode;
70+
}
71+
}
72+
6373
#pragma mark - NSCoding protocol methods
6474

6575
- (id)initWithCoder:(NSCoder *)decoder {
@@ -79,6 +89,17 @@ - (id)initWithCoder:(NSCoder *)decoder {
7989
NSString *kindString = [decoder decodeObjectForKey:@"kind"];
8090
self.activityKind = [ADJActivityKindUtil activityKindFromString:kindString];
8191

92+
id errorCountObject = [decoder decodeObjectForKey:@"errorCount"];
93+
if (errorCountObject != nil && [errorCountObject isKindOfClass:[NSNumber class]]) {
94+
self.errorCount = ((NSNumber *)errorCountObject).unsignedIntegerValue;
95+
}
96+
self.firstErrorCode = [decoder decodeObjectForKey:@"firstErrorCode"];
97+
self.lastErrorCode = [decoder decodeObjectForKey:@"lastErrorCode"];
98+
id waitBeforeSendObject = [decoder decodeObjectForKey:@"waitBeforeSend"];
99+
if (waitBeforeSendObject != nil && [waitBeforeSendObject isKindOfClass:[NSNumber class]]) {
100+
self.waitBeforeSend = ((NSNumber *)waitBeforeSendObject).doubleValue;
101+
}
102+
82103
return self;
83104
}
84105

@@ -92,6 +113,10 @@ - (void)encodeWithCoder:(NSCoder *)encoder {
92113
[encoder encodeObject:self.parameters forKey:@"parameters"];
93114
[encoder encodeObject:self.callbackParameters forKey:@"callbackParameters"];
94115
[encoder encodeObject:self.partnerParameters forKey:@"partnerParameters"];
116+
[encoder encodeObject:@(self.errorCount) forKey:@"errorCount"];
117+
[encoder encodeObject:self.firstErrorCode forKey:@"firstErrorCode"];
118+
[encoder encodeObject:self.lastErrorCode forKey:@"lastErrorCode"];
119+
[encoder encodeObject:@(self.waitBeforeSend) forKey:@"waitBeforeSend"];
95120
}
96121

97122
@end

0 commit comments

Comments
 (0)