Skip to content

Commit 9c648bc

Browse files
authored
Merge pull request #60 from adjust/v4291
Version 4.29.1
2 parents 5a8d82b + f0d183c commit 9c648bc

32 files changed

+358
-199
lines changed

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
### Version 4.29.1 (23rd September 2021)
2+
#### Added
3+
- Added support for `Admost` ad revenue source.
4+
5+
#### Fixed
6+
- Fixed compile time errors with Xcode 13.
7+
8+
#### Native SDKs
9+
- [[email protected]][ios_sdk_v4.29.6]
10+
- [[email protected]][android_sdk_v4.28.5]
11+
12+
---
13+
114
### Version 4.29.0 (11th June 2021)
215
#### Added
316
- Added support for null safety (thanks to @blaueeiner).
@@ -226,6 +239,7 @@
226239
[ios_sdk_v4.26.1]: https://github.com/adjust/ios_sdk/tree/v4.26.1
227240
[ios_sdk_v4.28.0]: https://github.com/adjust/ios_sdk/tree/v4.28.0
228241
[ios_sdk_v4.29.2]: https://github.com/adjust/ios_sdk/tree/v4.29.2
242+
[ios_sdk_v4.29.6]: https://github.com/adjust/ios_sdk/tree/v4.29.6
229243

230244
[android_sdk_v4.17.0]: https://github.com/adjust/android_sdk/tree/v4.17.0
231245
[android_sdk_v4.18.0]: https://github.com/adjust/android_sdk/tree/v4.18.0
@@ -236,3 +250,4 @@
236250
[android_sdk_v4.26.2]: https://github.com/adjust/android_sdk/tree/v4.26.2
237251
[android_sdk_v4.27.0]: https://github.com/adjust/android_sdk/tree/v4.27.0
238252
[android_sdk_v4.28.1]: https://github.com/adjust/android_sdk/tree/v4.28.1
253+
[android_sdk_v4.28.5]: https://github.com/adjust/android_sdk/tree/v4.28.5

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) 2012-2020 Adjust GmbH
3+
Copyright (c) 2012-2021 Adjust GmbH
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy of
66
this software and associated documentation files (the "Software"), to deal in

README.md

Lines changed: 67 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ This is the Flutter SDK of Adjust™. You can read more about Adjust™ at [adju
6969
* [Google Play Services advertising identifier](#af-gps-adid)
7070
* [Amazon advertising identifier](#af-amazon-adid)
7171
* [Adjust device identifier](#af-adid)
72+
* [Set external device ID](#set-external-device-id)
7273
* [Pre-installed trackers](#af-pre-installed-trackers)
7374
* [Offline mode](#af-offline-mode)
7475
* [Disable tracking](#af-disable-tracking)
@@ -79,7 +80,7 @@ This is the Flutter SDK of Adjust™. You can read more about Adjust™ at [adju
7980
* [Disable third-party sharing](#af-disable-third-party-sharing)
8081
* [Enable third-party sharing](#af-enable-third-party-sharing)
8182
* [Measurement consent](#af-measurement-consent)
82-
* [[beta] Data residency](#af-data-residency)
83+
* [Data residency](#af-data-residency)
8384

8485
### License
8586

@@ -100,7 +101,7 @@ You can add Adjust SDK to your Flutter app by adding following to your `pubspec.
100101

101102
```yaml
102103
dependencies:
103-
adjust_sdk: ^4.29.0
104+
adjust_sdk: ^4.29.1
104105
```
105106
106107
Then navigate to your project in the terminal and run:
@@ -136,6 +137,16 @@ If you are **not targeting the Google Play Store**, please also add the followin
136137
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
137138
```
138139

140+
#### <a id="gps-adid-permission"></a>Add permission to gather Google advertising ID
141+
142+
If you are targeting Android 12 and above (API level 31), you need to add the `com.google.android.gms.AD_ID` permission to read the device's advertising ID. Add the following line to your `AndroidManifest.xml` to enable the permission.
143+
144+
```xml
145+
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
146+
```
147+
148+
For more information, see [Google's `AdvertisingIdClient.Info` documentation](https://developers.google.com/android/reference/com/google/android/gms/ads/identifier/AdvertisingIdClient.Info#public-string-getid).
149+
139150
### <a id="qs-proguard"></a>[Android] Proguard settings
140151

141152
If you are using Proguard, add these lines to your Proguard file:
@@ -506,7 +517,7 @@ You should use **callback parameters** for the values that you collect for your
506517

507518
You can register a callback URL for your events in your [dashboard]. We will send a GET request to that URL whenever the event is tracked. You can add callback parameters to that event by calling `addCallbackParameter` to the event instance before tracking it. We will then append these parameters to your callback URL.
508519

509-
For example, suppose you have registered the URL `http://www.adjust.com/callback` then track an event like this:
520+
For example, suppose you have registered the URL `https://www.adjust.com/callback` then track an event like this:
510521

511522
```dart
512523
AdjustEvent adjustEvent = new AdjustEvent('abc123');
@@ -518,7 +529,7 @@ Adjust.trackEvent(adjustEvent);
518529
In that case we would track the event and send a request to:
519530

520531
```
521-
http://www.adjust.com/callback?key=value&foo=bar
532+
https://www.adjust.com/callback?key=value&foo=bar
522533
```
523534

524535
It should be mentioned that we support a variety of placeholders like `{gps_adid}` that can be used as parameter values. In the resulting callback this placeholder would be replaced with the Google Play Services ID of the current device. Also note that we don't store any of your custom parameters, but only append them to your callbacks. If you haven't registered a callback for an event, these parameters won't even be read.
@@ -660,22 +671,24 @@ Adjust SDK offers the possibility to use it for requesting user authorization in
660671
To use this wrapper, you can call it as such:
661672

662673
```dart
663-
Adjust.requestTrackingAuthorizationWithCompletionHandler().then((status) {
664-
switch (status) {
665-
case 0:
666-
// ATTrackingManagerAuthorizationStatusNotDetermined case
667-
break;
668-
case 1:
669-
// ATTrackingManagerAuthorizationStatusRestricted case
670-
break;
671-
case 2:
672-
// ATTrackingManagerAuthorizationStatusDenied case
673-
break;
674-
case 3:
675-
// ATTrackingManagerAuthorizationStatusAuthorized case
676-
break;
677-
}
678-
});
674+
if (Platform.isIOS) {
675+
Adjust.requestTrackingAuthorizationWithCompletionHandler().then((status) {
676+
switch (status) {
677+
case 0:
678+
// ATTrackingManagerAuthorizationStatusNotDetermined case
679+
break;
680+
case 1:
681+
// ATTrackingManagerAuthorizationStatusRestricted case
682+
break;
683+
case 2:
684+
// ATTrackingManagerAuthorizationStatusDenied case
685+
break;
686+
case 3:
687+
// ATTrackingManagerAuthorizationStatusAuthorized case
688+
break;
689+
}
690+
});
691+
}
679692
```
680693

681694
### <a id="af-ata-getter"></a>Get current authorisation status
@@ -1036,6 +1049,10 @@ Adjust.getIdfa().then((idfa) {
10361049

10371050
### <a id="af-gps-adid"></a>Google Play Services advertising identifier
10381051

1052+
The Google Play Services Advertising Identifier (Google advertising ID) is a unique identifier for a device. Users can opt out of sharing their Google advertising ID by toggling the "Opt out of Ads Personalization" setting on their device. When a user has enabled this setting, the Adjust SDK returns a string of zeros when trying to read the Google advertising ID.
1053+
1054+
> **Important**: If you are targeting Android 12 and above (API level 31), you need to add the [`com.google.android.gms.AD_ID` permission](#gps-adid-permission) to your app. If you do not add this permission, you will not be able to read the Google advertising ID even if the user has not opted out of sharing their ID.
1055+
10391056
Certain services (such as Google Analytics) require you to coordinate Device and Client IDs in order to prevent duplicate reporting.
10401057

10411058
To obtain the device Google Advertising identifier, it's necessary to pass a callback function to `Adjust.getGoogleAdId` that will receive the Google Advertising ID in it's argument, like this:
@@ -1068,6 +1085,30 @@ Adjust.getAdid().then((adid) {
10681085

10691086
**Note**: Information about **adid** is available after app installation has been tracked by the Adjust backend. From that moment on, Adjust SDK has information about your device **adid** and you can access it with this method. So, **it is not possible** to access **adid** value before the SDK has been initialised and installation of your app was tracked successfully.
10701087

1088+
### <a id="set-external-device-id"></a>Set external device ID
1089+
1090+
> **Note** If you want to use external device IDs, please contact your Adjust representative. They will talk you through the best approach for your use case.
1091+
1092+
An external device identifier is a custom value that you can assign to a device or user. They can help you to recognize users across sessions and platforms. They can also help you to deduplicate installs by user so that a user isn't counted as multiple new installs.
1093+
1094+
You can also use an external device ID as a custom identifier for a device. This can be useful if you use these identifiers elsewhere and want to keep continuity.
1095+
1096+
Check out our [external device identifiers article](https://help.adjust.com/en/article/external-device-identifiers) for more information.
1097+
1098+
> **Note** This setting requires Adjust SDK v4.21.0 or later.
1099+
1100+
To set an external device ID, assign the identifier to the `externalDeviceId` property of your config instance. Do this before you initialize the Adjust SDK.
1101+
1102+
```dart
1103+
adjustConfig.externalDeviceId = '{Your-External-Device-Id}';
1104+
```
1105+
1106+
> **Important**: You need to make sure this ID is **unique to the user or device** depending on your use-case. Using the same ID across different users or devices could lead to duplicated data. Talk to your Adjust representative for more information.
1107+
1108+
If you want to use the external device ID in your business analytics, you can pass it as a session callback parameter. See the section on [session callback parameters](#cp-session-callback-parameters) for more information.
1109+
1110+
You can import existing external device IDs into Adjust. This ensures that the backend matches future data to your existing device records. If you want to do this, please contact your Adjust representative.
1111+
10711112
### <a id="af-pre-installed-trackers"></a>Pre-installed trackers
10721113

10731114
If you want to use the Adjust SDK to recognize users whose devices came with your app pre-installed, follow these steps.
@@ -1078,7 +1119,7 @@ If you want to use the Adjust SDK to recognize users whose devices came with you
10781119
```dart
10791120
adjustConfig.defaultTracker = '{TrackerToken}';
10801121
```
1081-
Replace `{TrackerToken}` with the tracker token you created in step 1. Please note that the Dashboard displays a tracker URL (including `http://app.adjust.com/`). In your source code, you should specify only the six-character token and not the entire URL.
1122+
Replace `{TrackerToken}` with the tracker token you created in step 1. Please note that the Dashboard displays a tracker URL (including `https://app.adjust.com/`). In your source code, you should specify only the six-character token and not the entire URL.
10821123

10831124
- Build and run your app. You should see a line like the following in your LogCat:
10841125

@@ -1182,7 +1223,7 @@ Adjust.trackMeasurementConsent(true);
11821223

11831224
Upon receiving this information, Adjust changes sharing the specific user's data to partners. The Adjust SDK will continue to work as expected.
11841225

1185-
### <a id="af-data-residency"></a>[beta] Data residency
1226+
### <a id="af-data-residency"></a>Data residency
11861227

11871228
In order to enable data residency feature, make sure to set `urlStrategy` member of the `AdjustConfig` instance with one of the following constants:
11881229

@@ -1192,10 +1233,8 @@ adjustConfig.urlStrategy = AdjustConfig.DataResidencyTR; // for Turkey data resi
11921233
adjustConfig.urlStrategy = AdjustConfig.DataResidencyUS; // for US data residency region
11931234
```
11941235

1195-
**Note:** This feature is currently in beta testing phase. If you are interested in getting access to it, please contact your dedicated account manager or write an email to [email protected]. Please, do not turn this setting on before making sure with the support team that this feature is enabled for your app because otherwise SDK traffic will get dropped.
1196-
1197-
[dashboard]: http://adjust.com
1198-
[adjust.com]: http://adjust.com
1236+
[dashboard]: https://adjust.com
1237+
[adjust.com]: https://adjust.com
11991238

12001239
[example-app]: example
12011240

@@ -1210,14 +1249,14 @@ adjustConfig.urlStrategy = AdjustConfig.DataResidencyUS; // for US data residenc
12101249
[currency-conversion]: https://docs.adjust.com/en/event-tracking/#tracking-purchases-in-different-currencies
12111250
[android-deeplinking]: https://github.com/adjust/android_sdk#deep-linking
12121251
[android-launch-modes]: https://developer.android.com/guide/topics/manifest/activity-element.html
1213-
[google-play-services]: http://developer.android.com/google/play-services/setup.html
1252+
[google-play-services]: https://developer.android.com/google/play-services/setup.html
12141253
[reattribution-with-deeplinks]: https://docs.adjust.com/en/deeplinking/#manually-appending-attribution-data-to-a-deep-link
12151254

12161255
## <a id="license"></a>License
12171256

12181257
The Adjust SDK is licensed under the MIT License.
12191258

1220-
Copyright (c) 2018-2021 Adjust GmbH, http://www.adjust.com
1259+
Copyright (c) 2018-2021 Adjust GmbH, https://www.adjust.com
12211260

12221261
Permission is hereby granted, free of charge, to any person obtaining a copy of
12231262
this software and associated documentation files (the "Software"), to deal in

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4.29.0
1+
4.29.1

android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,5 @@ android {
3636
}
3737

3838
dependencies {
39-
api 'com.adjust.sdk:adjust-android:4.28.1'
39+
api 'com.adjust.sdk:adjust-android:4.28.5'
4040
}

example/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# example
22

3-
Adjust Flutter Appliaction
3+
Adjust Flutter Applicаtion
44

55
## Getting Started
66

example/ios/Podfile.lock

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
PODS:
2-
- Adjust (4.29.2):
3-
- Adjust/Core (= 4.29.2)
4-
- Adjust/Core (4.29.2)
5-
- adjust_sdk (4.29.0):
6-
- Adjust (= 4.29.2)
2+
- Adjust (4.29.6):
3+
- Adjust/Core (= 4.29.6)
4+
- Adjust/Core (4.29.6)
5+
- adjust_sdk (4.29.1):
6+
- Adjust (= 4.29.6)
77
- Flutter
88
- Flutter (1.0.0)
99

@@ -22,10 +22,10 @@ EXTERNAL SOURCES:
2222
:path: Flutter
2323

2424
SPEC CHECKSUMS:
25-
Adjust: 0b649decc070365365bec4e4b8d8bf6e49fe1746
26-
adjust_sdk: 34564bd90ca531619156f16846722b07c9bbd9c8
27-
Flutter: 434fef37c0980e73bb6479ef766c45957d4b510c
25+
Adjust: 94f1c99429fb2a7ebe530294fd66a88d63a54922
26+
adjust_sdk: bf9c14dff11a7ce79ebf8a183c48c5a293dd8054
27+
Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a
2828

2929
PODFILE CHECKSUM: aafe91acc616949ddb318b77800a7f51bffa2a4c
3030

31-
COCOAPODS: 1.10.1
31+
COCOAPODS: 1.10.2

0 commit comments

Comments
 (0)