Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 4.38.0 #236

Merged
merged 5 commits into from
Mar 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
### Version 4.38.0 (27th March 2024)
#### Added
- Added iOS Privacy Manifest for the Adjust SDK.
- Added new domains and corresponding payload restrictions for the Adjust SDK to direct the iOS traffic to:
- https://consent.adjust.com - for consented users
- https://analytics.adjust.com - for non-consented users

#### Native SDKs
- [[email protected]][ios_sdk_v4.38.0]
- [[email protected]][android_sdk_v4.38.3]

---

### Version 4.37.2 (21st March 2024)
#### Fixed
- Fixed occasional crashes caused by not synchronized access to cached IDFA value (https://github.com/adjust/ios_sdk/issues/696).
Expand Down Expand Up @@ -631,6 +644,7 @@
[ios_sdk_v4.35.2]: https://github.com/adjust/ios_sdk/tree/v4.35.2
[ios_sdk_v4.37.0]: https://github.com/adjust/ios_sdk/tree/v4.37.0
[ios_sdk_v4.37.2]: https://github.com/adjust/ios_sdk/tree/v4.37.2
[ios_sdk_v4.38.0]: https://github.com/adjust/ios_sdk/tree/v4.38.0

[android_sdk_v4.10.4]: https://github.com/adjust/android_sdk/tree/v4.10.4
[android_sdk_v4.11.0]: https://github.com/adjust/android_sdk/tree/v4.11.0
Expand Down Expand Up @@ -667,3 +681,4 @@
[android_sdk_v4.35.1]: https://github.com/adjust/android_sdk/tree/v4.35.1
[android_sdk_v4.38.1]: https://github.com/adjust/android_sdk/tree/v4.38.1
[android_sdk_v4.38.2]: https://github.com/adjust/android_sdk/tree/v4.38.2
[android_sdk_v4.38.3]: https://github.com/adjust/android_sdk/tree/v4.38.3
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.37.2
4.38.0
Binary file modified android/libs/adjust-android.jar
Binary file not shown.
14 changes: 7 additions & 7 deletions example/ios/Podfile.lock
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
PODS:
- Adjust (4.37.2):
- Adjust/Core (= 4.37.2)
- Adjust/Core (4.37.2)
- Adjust (4.38.0):
- Adjust/Core (= 4.38.0)
- Adjust/Core (4.38.0)
- boost (1.76.0)
- CocoaAsyncSocket (7.6.5)
- DoubleConversion (1.1.6)
Expand Down Expand Up @@ -287,8 +287,8 @@ PODS:
- React-jsinspector (0.69.4)
- React-logger (0.69.4):
- glog
- react-native-adjust (4.37.2):
- Adjust (= 4.37.2)
- react-native-adjust (4.38.0):
- Adjust (= 4.38.0)
- React-Core
- React-perflogger (0.69.4)
- React-RCTActionSheet (0.69.4):
Expand Down Expand Up @@ -508,7 +508,7 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/ReactCommon/yoga"

SPEC CHECKSUMS:
Adjust: a830d963025334aee8a62a7bac87825e297a841e
Adjust: c98d85594a746ff9f2bafe424c5beb6db66cd6a8
boost: a7c83b31436843459a1961bfd74b96033dc77234
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
Expand Down Expand Up @@ -541,7 +541,7 @@ SPEC CHECKSUMS:
React-jsiexecutor: a27badbbdbc0ff781813370736a2d1c7261181d4
React-jsinspector: 8a3d3f5dcd23a91e8c80b1bf0e96902cd1dca999
React-logger: 1088859f145b8f6dd0d3ed051a647ef0e3e80fad
react-native-adjust: 9a9d5b7fff8de8209d468ee4bd3fc1bc386d78cd
react-native-adjust: 801fe33f0dc0097b0474f11d08572a89fa6602ce
React-perflogger: cb386fd44c97ec7f8199c04c12b22066b0f2e1e0
React-RCTActionSheet: f803a85e46cf5b4066c2ac5e122447f918e9c6e5
React-RCTAnimation: 19c80fa950ccce7f4db76a2a7f2cf79baae07fc7
Expand Down
1,486 changes: 796 additions & 690 deletions example/yarn.lock

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion ext/android/sdk
Submodule sdk updated 28 files
+2 −1 Adjust/build.gradle
+1 −1 Adjust/sdk-core/src/main/java/com/adjust/sdk/Adjust.java
+1 −1 Adjust/sdk-core/src/main/java/com/adjust/sdk/Constants.java
+10 −0 Adjust/sdk-core/src/main/java/com/adjust/sdk/DeviceInfo.java
+26 −0 Adjust/sdk-core/src/main/java/com/adjust/sdk/Reflection.java
+1 −1 Adjust/sdk-plugin-criteo/build.gradle
+1 −1 Adjust/sdk-plugin-imei/build.gradle
+1 −1 Adjust/sdk-plugin-oaid/build.gradle
+2 −0 Adjust/sdk-plugin-samsung-clouddev/.gitignore
+223 −0 Adjust/sdk-plugin-samsung-clouddev/build.gradle
+23 −0 Adjust/sdk-plugin-samsung-clouddev/proguard-rules.pro
+3 −0 Adjust/sdk-plugin-samsung-clouddev/src/main/AndroidManifest.xml
+16 −0 Adjust/sdk-plugin-samsung-clouddev/src/main/java/com/adjust/sdk/samsung/clouddev/AdjustSamsungCloudDev.java
+54 −0 Adjust/sdk-plugin-samsung-clouddev/src/main/java/com/adjust/sdk/samsung/clouddev/SamsungCloudDevClient.java
+23 −0 Adjust/sdk-plugin-samsung-clouddev/src/main/java/com/adjust/sdk/samsung/clouddev/Util.java
+3 −0 Adjust/sdk-plugin-samsung-clouddev/src/main/res/values/strings.xml
+1 −1 Adjust/sdk-plugin-samsung-referrer/build.gradle
+1 −1 Adjust/sdk-plugin-sociomantic/build.gradle
+1 −1 Adjust/sdk-plugin-trademob/build.gradle
+1 −1 Adjust/sdk-plugin-vivo-referrer/build.gradle
+1 −1 Adjust/sdk-plugin-webbridge/build.gradle
+1 −1 Adjust/sdk-plugin-webbridge/src/main/assets/adjust.js
+0 −84 Adjust/sdk-plugin-webbridge/src/main/java/com/adjust/sdk/webbridge/AdjustBridgeUtil.java
+1 −1 Adjust/sdk-plugin-xiaomi-referrer/build.gradle
+1 −1 Adjust/settings.gradle
+1 −1 Adjust/test-unit/src/androidTest/java/com/adjust/sdk/TestActivityPackage.java
+9 −0 CHANGELOG.md
+1 −1 VERSION
2 changes: 1 addition & 1 deletion ext/ios/sdk
Submodule sdk updated 47 files
+3 −2 Adjust.podspec
+8 −0 Adjust.xcodeproj/project.pbxproj
+3 −3 Adjust/ADJActivityHandler.m
+6 −8 Adjust/ADJAdjustFactory.h
+25 −36 Adjust/ADJAdjustFactory.m
+10 −4 Adjust/ADJPackageBuilder.h
+89 −99 Adjust/ADJPackageBuilder.m
+1 −1 Adjust/ADJPackageHandler.h
+13 −10 Adjust/ADJPackageHandler.m
+1 −1 Adjust/ADJPurchaseVerificationHandler.h
+11 −8 Adjust/ADJPurchaseVerificationHandler.m
+94 −47 Adjust/ADJRequestHandler.m
+1 −1 Adjust/ADJSdkClickHandler.h
+11 −9 Adjust/ADJSdkClickHandler.m
+3 −1 Adjust/ADJUrlStrategy.h
+92 −54 Adjust/ADJUrlStrategy.m
+5 −0 Adjust/ADJUtil.h
+41 −1 Adjust/ADJUtil.m
+4 −5 Adjust/Adjust.h
+8 −11 Adjust/Adjust.m
+80 −0 Adjust/PrivacyInfo.xcprivacy
+15 −7 AdjustBridge/AdjustBridge.m
+5 −1 AdjustBridge/AdjustBridgeRegister.m
+16 −4 AdjustTests/AdjustTestApp/AdjustTestApp/ATAAdjustCommandExecutor.m
+2 −8 AdjustTests/AdjustTestApp/AdjustTestApp/ViewController.h
+1 −1 AdjustTests/AdjustTestApp/AdjustTestApp/ViewController.m
+18 −0 AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp.xcodeproj/project.pbxproj
+7 −0 ...tTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata
+0 −1 AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp/AdjustTestApp-WebView.html
+4 −6 AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp/TestLibraryBridge.h
+28 −12 AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp/TestLibraryBridge.js
+1 −1 AdjustTests/AdjustWebBridgeTestApp/AdjustWebBridgeTestApp/TestLibraryBridge.m
+9 −0 CHANGELOG.md
+3 −0 Package.swift
+1 −1 VERSION
+18 −15 examples/AdjustExample-FbPixel/AdjustExample-FbPixel.xcodeproj/project.pbxproj
+4 −6 examples/AdjustExample-Swift/AdjustExample-Swift.xcodeproj/project.pbxproj
+1 −6 examples/AdjustExample-Swift/AdjustExample-Swift/AdjustExample-Swift.entitlements
+1 −1 examples/AdjustExample-Swift/Podfile.lock
+18 −15 examples/AdjustExample-WebView/AdjustExample-WebView.xcodeproj/project.pbxproj
+18 −18 examples/AdjustExample-iMessage/AdjustExample-iMessage.xcodeproj/project.pbxproj
+18 −9 examples/AdjustExample-iWatch/AdjustExample-iWatch.xcodeproj/project.pbxproj
+32 −30 examples/AdjustExample-tvOS/AdjustExample-tvOS.xcodeproj/project.pbxproj
+330 −342 scripts/build_definitions.sh
+4 −4 scripts/dynamic_frameworks.sh
+11 −6 scripts/dynamic_xcframeworks.sh
+15 −10 scripts/static_xcframeworks.sh
4 changes: 2 additions & 2 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ Adjust.getAmazonAdId = function(callback) {
};

Adjust.getSdkVersion = function(callback) {
module_adjust.getSdkVersion("react-native4.37.2", callback);
module_adjust.getSdkVersion("react-native4.38.0", callback);
};

Adjust.setReferrer = function(referrer) {
Expand Down Expand Up @@ -280,7 +280,7 @@ Adjust.onPause = function(testParam) {
// AdjustConfig

var AdjustConfig = function(appToken, environment) {
this.sdkPrefix = "react-native4.37.2";
this.sdkPrefix = "react-native4.38.0";
this.appToken = appToken;
this.environment = environment;
this.logLevel = null;
Expand Down
6 changes: 3 additions & 3 deletions ios/Adjust/ADJActivityHandler.m
Original file line number Diff line number Diff line change
Expand Up @@ -2625,9 +2625,9 @@ - (void)updatePackagesAttStatusAndIdfaI:(ADJActivityHandler *)selfI {
// update activity packages
int attStatus = [ADJUtil attStatus];
if (attStatus != 0) {
[selfI.packageHandler updatePackagesWithIdfaAndAttStatus];
[selfI.sdkClickHandler updatePackagesWithIdfaAndAttStatus];
[selfI.purchaseVerificationHandler updatePackagesWithIdfaAndAttStatus];
[selfI.packageHandler updatePackagesWithAttStatus:attStatus];
[selfI.sdkClickHandler updatePackagesWithAttStatus:attStatus];
[selfI.purchaseVerificationHandler updatePackagesWithAttStatus:attStatus];
}

selfI.internalState.updatePackagesAttData = NO;
Expand Down
14 changes: 6 additions & 8 deletions ios/Adjust/ADJAdjustFactory.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
+ (double)sessionInterval;
+ (double)subsessionInterval;
+ (double)requestTimeout;
+ (NSNumber *)attStatus;
+ (NSString *)idfa;
+ (NSTimeInterval)timerInterval;
+ (NSTimeInterval)timerStart;
+ (ADJBackoffStrategy *)packageHandlerBackoffStrategy;
Expand All @@ -26,15 +28,14 @@

+ (BOOL)testing;
+ (NSTimeInterval)maxDelayStart;
+ (NSString *)baseUrl;
+ (NSString *)gdprUrl;
+ (NSString *)subscriptionUrl;
+ (NSString *)purchaseVerificationUrl;
+ (NSString *)urlOverwrite;
+ (BOOL)adServicesFrameworkEnabled;

+ (void)setLogger:(id<ADJLogger>)logger;
+ (void)setSessionInterval:(double)sessionInterval;
+ (void)setSubsessionInterval:(double)subsessionInterval;
+ (void)setAttStatus:(NSNumber *)attStatus;
+ (void)setIdfa:(NSString *)idfa;
+ (void)setRequestTimeout:(double)requestTimeout;
+ (void)setTimerInterval:(NSTimeInterval)timerInterval;
+ (void)setTimerStart:(NSTimeInterval)timerStart;
Expand All @@ -43,10 +44,7 @@
+ (void)setTesting:(BOOL)testing;
+ (void)setAdServicesFrameworkEnabled:(BOOL)adServicesFrameworkEnabled;
+ (void)setMaxDelayStart:(NSTimeInterval)maxDelayStart;
+ (void)setBaseUrl:(NSString *)baseUrl;
+ (void)setGdprUrl:(NSString *)gdprUrl;
+ (void)setSubscriptionUrl:(NSString *)subscriptionUrl;
+ (void)setPurchaseVerificationUrl:(NSString *)purchaseVerificationUrl;
+ (void)setUrlOverwrite:(NSString *)urlOverwrite;

+ (void)enableSigning;
+ (void)disableSigning;
Expand Down
61 changes: 25 additions & 36 deletions ios/Adjust/ADJAdjustFactory.m
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
static double internalSessionInterval = -1;
static double intervalSubsessionInterval = -1;
static double internalRequestTimeout = -1;
static NSNumber * internalAttStatus = nil;
static NSString * internalIdfa = nil;
static NSTimeInterval internalTimerInterval = -1;
static NSTimeInterval intervalTimerStart = -1;
static ADJBackoffStrategy * packageHandlerBackoffStrategy = nil;
Expand All @@ -24,10 +26,7 @@
static NSTimeInterval internalMaxDelayStart = -1;
static BOOL internalAdServicesFrameworkEnabled = YES;

static NSString * internalBaseUrl = nil;
static NSString * internalGdprUrl = nil;
static NSString * internalSubscriptionUrl = nil;
static NSString * internalPurchaseVerificationUrl = nil;
static NSString * internalUrlOverwrite = nil;

@implementation ADJAdjustFactory

Expand Down Expand Up @@ -60,6 +59,14 @@ + (double)requestTimeout {
return internalRequestTimeout;
}

+ (NSNumber *)attStatus {
return internalAttStatus;
}

+ (NSString *)idfa {
return internalIdfa;
}

+ (NSTimeInterval)timerInterval {
if (internalTimerInterval < 0) {
return 60; // 1 minute
Expand Down Expand Up @@ -110,20 +117,8 @@ + (NSTimeInterval)maxDelayStart {
return internalMaxDelayStart;
}

+ (NSString *)baseUrl {
return internalBaseUrl;
}

+ (NSString *)gdprUrl {
return internalGdprUrl;
}

+ (NSString *)subscriptionUrl {
return internalSubscriptionUrl;
}

+ (NSString *)purchaseVerificationUrl {
return internalPurchaseVerificationUrl;
+ (NSString *)urlOverwrite {
return internalUrlOverwrite;
}

+ (void)setLogger:(id<ADJLogger>)logger {
Expand All @@ -137,6 +132,13 @@ + (void)setSessionInterval:(double)sessionInterval {
+ (void)setSubsessionInterval:(double)subsessionInterval {
intervalSubsessionInterval = subsessionInterval;
}
+ (void)setAttStatus:(NSNumber *)attStatus {
internalAttStatus = attStatus;
}

+ (void)setIdfa:(NSString *)idfa {
internalIdfa = idfa;
}

+ (void)setRequestTimeout:(double)requestTimeout {
internalRequestTimeout = requestTimeout;
Expand Down Expand Up @@ -170,20 +172,8 @@ + (void)setMaxDelayStart:(NSTimeInterval)maxDelayStart {
internalMaxDelayStart = maxDelayStart;
}

+ (void)setBaseUrl:(NSString *)baseUrl {
internalBaseUrl = baseUrl;
}

+ (void)setGdprUrl:(NSString *)gdprUrl {
internalGdprUrl = gdprUrl;
}

+ (void)setSubscriptionUrl:(NSString *)subscriptionUrl {
internalSubscriptionUrl = subscriptionUrl;
}

+ (void)setPurchaseVerificationUrl:(NSString *)purchaseVerificationUrl {
internalPurchaseVerificationUrl = purchaseVerificationUrl;
+ (void)setUrlOverwrite:(NSString *)urlOverwrite {
internalUrlOverwrite = urlOverwrite;
}

+ (void)enableSigning {
Expand Down Expand Up @@ -240,15 +230,14 @@ + (void)teardown:(BOOL)deleteState {
internalTimerInterval = -1;
intervalTimerStart = -1;
internalRequestTimeout = -1;
internalAttStatus = nil;
internalIdfa = nil;
packageHandlerBackoffStrategy = nil;
sdkClickHandlerBackoffStrategy = nil;
installSessionBackoffStrategy = nil;
internalTesting = NO;
internalMaxDelayStart = -1;
internalBaseUrl = nil;
internalGdprUrl = nil;
internalSubscriptionUrl = nil;
internalPurchaseVerificationUrl = nil;
internalUrlOverwrite = nil;
internalAdServicesFrameworkEnabled = YES;
}
@end
14 changes: 10 additions & 4 deletions ios/Adjust/ADJPackageBuilder.h
Original file line number Diff line number Diff line change
Expand Up @@ -94,10 +94,16 @@

+ (BOOL)isAdServicesPackage:(ADJActivityPackage * _Nullable)activityPackage;

+ (void)addIdfaToParameters:(NSMutableDictionary * _Nullable)parameters
withConfig:(ADJConfig * _Nullable)adjConfig
logger:(id<ADJLogger> _Nullable)logger
packageParams:(ADJPackageParams * _Nullable)packageParams;
+ (void)addConsentDataToParameters:(NSMutableDictionary * _Nullable)parameters
forActivityKind:(ADJActivityKind)activityKind
withAttStatus:(NSString * _Nullable)attStatusString
configuration:(ADJConfig * _Nullable)adjConfig
packageParams:(ADJPackageParams * _Nullable)packageParams;

+ (void)removeConsentDataFromParameters:(nonnull NSMutableDictionary *)parameters;

+ (void)updateAttStatusInParameters:(nonnull NSMutableDictionary *)parameters;

@end
// TODO change to ADJ...
extern NSString * _Nullable const ADJAttributionTokenParameter;
Loading