diff --git a/Assets/Adjust/Android/AdjustAndroid.cs b/Assets/Adjust/Android/AdjustAndroid.cs index d9ff0765..6e5eeba8 100644 --- a/Assets/Adjust/Android/AdjustAndroid.cs +++ b/Assets/Adjust/Android/AdjustAndroid.cs @@ -10,7 +10,7 @@ namespace com.adjust.sdk #if UNITY_ANDROID public class AdjustAndroid { - private const string sdkPrefix = "unity4.13.0"; + private const string sdkPrefix = "unity4.14.0"; private static bool launchDeferredDeeplink = true; private static AndroidJavaClass ajcAdjust = new AndroidJavaClass("com.adjust.sdk.Adjust"); @@ -337,9 +337,9 @@ public static void ResetSessionCallbackParameters() public static void AppWillOpenUrl(string url) { - AndroidJavaClass ajcUri = new AndroidJavaClass ("android.net.Uri"); + AndroidJavaClass ajcUri = new AndroidJavaClass("android.net.Uri"); AndroidJavaObject ajoUri = ajcUri.CallStatic("parse", url); - ajcAdjust.CallStatic("appWillOpenUrl", ajoUri); + ajcAdjust.CallStatic("appWillOpenUrl", ajoUri, ajoCurrentActivity); } // Android specific methods. @@ -372,7 +372,7 @@ public static string GetAmazonAdId() // Used for testing only. public static void SetTestOptions(AdjustTestOptions testOptions) { - AndroidJavaObject ajoTestOptions = testOptions.ToAndroidJavaObject (ajoCurrentActivity); + AndroidJavaObject ajoTestOptions = testOptions.ToAndroidJavaObject(ajoCurrentActivity); ajcAdjust.CallStatic("setTestOptions", ajoTestOptions); } diff --git a/Assets/Adjust/Android/adjust-android.jar b/Assets/Adjust/Android/adjust-android.jar index d9fa9bb5..ece34076 100644 Binary files a/Assets/Adjust/Android/adjust-android.jar and b/Assets/Adjust/Android/adjust-android.jar differ diff --git a/Assets/Adjust/Test/AdjustTestOptions.cs b/Assets/Adjust/Test/AdjustTestOptions.cs index a936021c..4bcfb300 100644 --- a/Assets/Adjust/Test/AdjustTestOptions.cs +++ b/Assets/Adjust/Test/AdjustTestOptions.cs @@ -12,6 +12,7 @@ public class AdjustTestOptions public bool? Teardown { get; set; } public bool? DeleteState { get; set; } public bool? UseTestConnectionOptions { get; set; } + public bool? NoBackoffWait { get; set; } // Default value => Constants.ONE_MINUTE public long? TimerIntervalInMilliseconds { get; set; } @@ -33,52 +34,49 @@ public AndroidJavaObject ToAndroidJavaObject(AndroidJavaObject ajoCurrentActivit { ajoTestOptions.Set("basePath", BasePath); } - if (!string.IsNullOrEmpty(GdprPath)) { ajoTestOptions.Set("gdprPath", GdprPath); } - if (DeleteState.GetValueOrDefault(false) && ajoCurrentActivity != null) { ajoTestOptions.Set("context", ajoCurrentActivity); } - if (UseTestConnectionOptions.HasValue) { AndroidJavaObject ajoUseTestConnectionOptions = new AndroidJavaObject("java.lang.Boolean", UseTestConnectionOptions.Value); ajoTestOptions.Set("useTestConnectionOptions", ajoUseTestConnectionOptions); } - if (TimerIntervalInMilliseconds.HasValue) { AndroidJavaObject ajoTimerIntervalInMilliseconds = new AndroidJavaObject("java.lang.Long", TimerIntervalInMilliseconds.Value); ajoTestOptions.Set("timerIntervalInMilliseconds", ajoTimerIntervalInMilliseconds); } - if (TimerStartInMilliseconds.HasValue) { AndroidJavaObject ajoTimerStartInMilliseconds = new AndroidJavaObject("java.lang.Long", TimerStartInMilliseconds.Value); ajoTestOptions.Set("timerStartInMilliseconds", ajoTimerStartInMilliseconds); } - if (SessionIntervalInMilliseconds.HasValue) { AndroidJavaObject ajoSessionIntervalInMilliseconds = new AndroidJavaObject("java.lang.Long", SessionIntervalInMilliseconds.Value); ajoTestOptions.Set("sessionIntervalInMilliseconds", ajoSessionIntervalInMilliseconds); } - if (SubsessionIntervalInMilliseconds.HasValue) { AndroidJavaObject ajoSubsessionIntervalInMilliseconds = new AndroidJavaObject("java.lang.Long", SubsessionIntervalInMilliseconds.Value); ajoTestOptions.Set("subsessionIntervalInMilliseconds", ajoSubsessionIntervalInMilliseconds); } - if (Teardown.HasValue) { AndroidJavaObject ajoTeardown = new AndroidJavaObject("java.lang.Boolean", Teardown.Value); ajoTestOptions.Set("teardown", ajoTeardown); } + if (NoBackoffWait.HasValue) + { + AndroidJavaObject ajoNoBackoffWait = new AndroidJavaObject("java.lang.Boolean", NoBackoffWait.Value); + ajoTestOptions.Set("noBackoffWait", ajoNoBackoffWait); + } return ajoTestOptions; } diff --git a/Assets/Adjust/Test/CommandExecutor.cs b/Assets/Adjust/Test/CommandExecutor.cs index fc209b5c..78846872 100644 --- a/Assets/Adjust/Test/CommandExecutor.cs +++ b/Assets/Adjust/Test/CommandExecutor.cs @@ -89,31 +89,31 @@ private void TestOptions() BasePath = _command.GetFirstParameterValue("basePath"); GdprPath = _command.GetFirstParameterValue("basePath"); } - if (_command.ContainsParameter("timerInterval")) { long timerInterval = long.Parse(_command.GetFirstParameterValue("timerInterval")); testOptions.TimerIntervalInMilliseconds = timerInterval; } - if (_command.ContainsParameter("timerStart")) { long timerStart = long.Parse(_command.GetFirstParameterValue("timerStart")); testOptions.TimerStartInMilliseconds = timerStart; } - if (_command.ContainsParameter("sessionInterval")) { long sessionInterval = long.Parse(_command.GetFirstParameterValue("sessionInterval")); testOptions.SessionIntervalInMilliseconds = sessionInterval; } - if (_command.ContainsParameter("subsessionInterval")) { long subsessionInterval = long.Parse(_command.GetFirstParameterValue("subsessionInterval")); testOptions.SubsessionIntervalInMilliseconds = subsessionInterval; } - + if (_command.ContainsParameter("noBackoffWait")) + { + bool noBackoffWait = bool.Parse(_command.GetFirstParameterValue("noBackoffWait")); + testOptions.NoBackoffWait = noBackoffWait; + } if (_command.ContainsParameter("teardown")) { List teardownOptions = _command.Parameters["teardown"]; diff --git a/Assets/Adjust/Test/TestApp.cs b/Assets/Adjust/Test/TestApp.cs index 71fda2ac..3b84c567 100644 --- a/Assets/Adjust/Test/TestApp.cs +++ b/Assets/Adjust/Test/TestApp.cs @@ -10,17 +10,17 @@ public class TestApp : MonoBehaviour public static readonly string TAG = "[TestApp]"; #if (UNITY_WSA || UNITY_WP8) - public const string CLIENT_SDK = "unity4.13.0@wuap4.13.0"; + public const string CLIENT_SDK = "unity4.14.0@wuap4.14.0"; private const string PORT = ":8080"; private const string PROTOCOL = "http://"; private const string BASE_URL = PROTOCOL + "localhost" + PORT; // Windows simulator #elif UNITY_ANDROID - public const string CLIENT_SDK = "unity4.13.0@android4.13.0"; + public const string CLIENT_SDK = "unity4.14.0@android4.14.0"; private const string PORT = ":8443"; private const string PROTOCOL = "https://"; private const string BASE_URL = PROTOCOL + "10.0.2.2" + PORT; // Android simulator #elif UNITY_IOS - public const string CLIENT_SDK = "unity4.13.0@ios4.13.0"; + public const string CLIENT_SDK = "unity4.14.0@ios4.14.0"; private const string PORT = ":8080"; private const string PROTOCOL = "http://"; private const string BASE_URL = PROTOCOL + "127.0.0.1" + PORT; // iOS simulator diff --git a/Assets/Adjust/Windows/AdjustWindows.cs b/Assets/Adjust/Windows/AdjustWindows.cs index 893d698e..26568b52 100644 --- a/Assets/Adjust/Windows/AdjustWindows.cs +++ b/Assets/Adjust/Windows/AdjustWindows.cs @@ -17,7 +17,7 @@ namespace com.adjust.sdk { public class AdjustWindows { - private const string sdkPrefix = "unity4.13.0"; + private const string sdkPrefix = "unity4.14.0"; private static bool appLaunched = false; public static void Start(AdjustConfig adjustConfig) diff --git a/Assets/Adjust/Windows/Stubs/TestLibraryInterface.dll b/Assets/Adjust/Windows/Stubs/TestLibraryInterface.dll index b51cc7c8..25f1c06a 100644 Binary files a/Assets/Adjust/Windows/Stubs/TestLibraryInterface.dll and b/Assets/Adjust/Windows/Stubs/TestLibraryInterface.dll differ diff --git a/Assets/Adjust/Windows/Stubs/Win10Interface.dll b/Assets/Adjust/Windows/Stubs/Win10Interface.dll index b98bcb7b..65670698 100644 Binary files a/Assets/Adjust/Windows/Stubs/Win10Interface.dll and b/Assets/Adjust/Windows/Stubs/Win10Interface.dll differ diff --git a/Assets/Adjust/Windows/Stubs/Win81Interface.dll b/Assets/Adjust/Windows/Stubs/Win81Interface.dll index 47a51583..b7dcba27 100644 Binary files a/Assets/Adjust/Windows/Stubs/Win81Interface.dll and b/Assets/Adjust/Windows/Stubs/Win81Interface.dll differ diff --git a/Assets/Adjust/Windows/Stubs/WinWsInterface.dll b/Assets/Adjust/Windows/Stubs/WinWsInterface.dll index 85c1fd50..fc24ef32 100644 Binary files a/Assets/Adjust/Windows/Stubs/WinWsInterface.dll and b/Assets/Adjust/Windows/Stubs/WinWsInterface.dll differ diff --git a/Assets/Adjust/Windows/Test/TestLibrary.dll b/Assets/Adjust/Windows/Test/TestLibrary.dll index cf545fb9..ae128091 100644 Binary files a/Assets/Adjust/Windows/Test/TestLibrary.dll and b/Assets/Adjust/Windows/Test/TestLibrary.dll differ diff --git a/Assets/Adjust/Windows/Test/TestLibraryInterface.dll b/Assets/Adjust/Windows/Test/TestLibraryInterface.dll index 2b60e112..467832fa 100644 Binary files a/Assets/Adjust/Windows/Test/TestLibraryInterface.dll and b/Assets/Adjust/Windows/Test/TestLibraryInterface.dll differ diff --git a/Assets/Adjust/Windows/W81/AdjustWP81.dll b/Assets/Adjust/Windows/W81/AdjustWP81.dll index aa5fec19..cadbb4eb 100644 Binary files a/Assets/Adjust/Windows/W81/AdjustWP81.dll and b/Assets/Adjust/Windows/W81/AdjustWP81.dll differ diff --git a/Assets/Adjust/Windows/W81/Win81Interface.dll b/Assets/Adjust/Windows/W81/Win81Interface.dll index 9360f719..09d9f6aa 100644 Binary files a/Assets/Adjust/Windows/W81/Win81Interface.dll and b/Assets/Adjust/Windows/W81/Win81Interface.dll differ diff --git a/Assets/Adjust/Windows/WS/AdjustWS.dll b/Assets/Adjust/Windows/WS/AdjustWS.dll index afc9e34d..9384e53b 100644 Binary files a/Assets/Adjust/Windows/WS/AdjustWS.dll and b/Assets/Adjust/Windows/WS/AdjustWS.dll differ diff --git a/Assets/Adjust/Windows/WS/WinWsInterface.dll b/Assets/Adjust/Windows/WS/WinWsInterface.dll index 59bd6306..40552ae3 100644 Binary files a/Assets/Adjust/Windows/WS/WinWsInterface.dll and b/Assets/Adjust/Windows/WS/WinWsInterface.dll differ diff --git a/Assets/Adjust/Windows/WU10/AdjustUAP10.dll b/Assets/Adjust/Windows/WU10/AdjustUAP10.dll index ea080ce7..cee701c0 100644 Binary files a/Assets/Adjust/Windows/WU10/AdjustUAP10.dll and b/Assets/Adjust/Windows/WU10/AdjustUAP10.dll differ diff --git a/Assets/Adjust/Windows/WU10/Win10Interface.dll b/Assets/Adjust/Windows/WU10/Win10Interface.dll index 61701247..ba109b59 100644 Binary files a/Assets/Adjust/Windows/WU10/Win10Interface.dll and b/Assets/Adjust/Windows/WU10/Win10Interface.dll differ diff --git a/Assets/Adjust/Windows/WindowsPcl.dll b/Assets/Adjust/Windows/WindowsPcl.dll index 4cb6f6d9..f1d77c88 100644 Binary files a/Assets/Adjust/Windows/WindowsPcl.dll and b/Assets/Adjust/Windows/WindowsPcl.dll differ diff --git a/Assets/Adjust/Windows/WindowsUap.dll b/Assets/Adjust/Windows/WindowsUap.dll index e25076a9..862955b6 100644 Binary files a/Assets/Adjust/Windows/WindowsUap.dll and b/Assets/Adjust/Windows/WindowsUap.dll differ diff --git a/Assets/Adjust/iOS/Adjust.h b/Assets/Adjust/iOS/Adjust.h index d2fca9a1..4024c7b9 100644 --- a/Assets/Adjust/iOS/Adjust.h +++ b/Assets/Adjust/iOS/Adjust.h @@ -2,7 +2,7 @@ // Adjust.h // Adjust // -// V4.13.0 +// V4.14.0 // Created by Christian Wellenbrock (wellle) on 23rd July 2013. // Copyright © 2012-2017 Adjust GmbH. All rights reserved. // @@ -23,6 +23,7 @@ @property (nonatomic, copy, nullable) NSNumber *subsessionIntervalInMilliseconds; @property (nonatomic, assign) BOOL teardown; @property (nonatomic, assign) BOOL deleteState; +@property (nonatomic, assign) BOOL noBackoffWait; @end diff --git a/Assets/Adjust/iOS/AdjustSdk.a b/Assets/Adjust/iOS/AdjustSdk.a index bc53e6d7..77ce56ff 100644 Binary files a/Assets/Adjust/iOS/AdjustSdk.a and b/Assets/Adjust/iOS/AdjustSdk.a differ diff --git a/Assets/Adjust/iOS/AdjustTestLibrary.a b/Assets/Adjust/iOS/AdjustTestLibrary.a index 84a6fdce..c8001ba7 100644 Binary files a/Assets/Adjust/iOS/AdjustTestLibrary.a and b/Assets/Adjust/iOS/AdjustTestLibrary.a differ diff --git a/Assets/Adjust/iOS/AdjustUnity.mm b/Assets/Adjust/iOS/AdjustUnity.mm index 81764d50..0886c422 100644 --- a/Assets/Adjust/iOS/AdjustUnity.mm +++ b/Assets/Adjust/iOS/AdjustUnity.mm @@ -395,7 +395,8 @@ void _AdjustSetTestOptions(const char* baseUrl, long sessionIntervalInMilliseconds, long subsessionIntervalInMilliseconds, int teardown, - int deleteState) { + int deleteState, + int noBackoffWait) { AdjustTestOptions *testOptions = [[AdjustTestOptions alloc] init]; NSString *stringBaseUrl = isStringValid(baseUrl) == true ? [NSString stringWithUTF8String:baseUrl] : nil; @@ -430,6 +431,9 @@ void _AdjustSetTestOptions(const char* baseUrl, if (deleteState != -1) { [testOptions setDeleteState:(BOOL)deleteState]; } + if (noBackoffWait != -1) { + [testOptions setNoBackoffWait:(BOOL)noBackoffWait]; + } [Adjust setTestOptions:testOptions]; } diff --git a/Assets/Adjust/iOS/AdjustiOS.cs b/Assets/Adjust/iOS/AdjustiOS.cs index c06d7f55..cee4b3b5 100644 --- a/Assets/Adjust/iOS/AdjustiOS.cs +++ b/Assets/Adjust/iOS/AdjustiOS.cs @@ -10,7 +10,7 @@ namespace com.adjust.sdk #if UNITY_IOS public class AdjustiOS { - private const string sdkPrefix = "unity4.13.0"; + private const string sdkPrefix = "unity4.14.0"; [DllImport("__Internal")] private static extern void _AdjustLaunchApp( @@ -109,7 +109,8 @@ private static extern void _AdjustSetTestOptions( long sessionIntervalInMilliseconds, long subsessionIntervalInMilliseconds, int teardown, - int deleteState); + int deleteState, + int noBackoffWait); [DllImport("__Internal")] private static extern void _AdjustTrackSubsessionStart(); @@ -287,6 +288,7 @@ public static void SetTestOptions(AdjustTestOptions testOptions) long subsessionIntMls = testOptions.SubsessionIntervalInMilliseconds.HasValue ? testOptions.SubsessionIntervalInMilliseconds.Value : -1; bool teardown = testOptions.Teardown.HasValue ? testOptions.Teardown.Value : false; bool deleteState = testOptions.DeleteState.HasValue ? testOptions.DeleteState.Value : false; + bool noBackoffWait = testOptions.NoBackoffWait.HasValue ? testOptions.NoBackoffWait.Value : false; _AdjustSetTestOptions( testOptions.BaseUrl, @@ -298,7 +300,8 @@ public static void SetTestOptions(AdjustTestOptions testOptions) sessionIntMls, subsessionIntMls, AdjustUtils.ConvertBool(teardown), - AdjustUtils.ConvertBool(deleteState)); + AdjustUtils.ConvertBool(deleteState), + AdjustUtils.ConvertBool(noBackoffWait)); } public static void TrackSubsessionStart() diff --git a/CHANGELOG.md b/CHANGELOG.md index b702c065..c0fafc38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +### Version 4.14.0 (8th June 2018) +#### Added +- Added deep link caching in case `appWillOpenUrl`/`AppWillOpenUrl` method is called natively before SDK is initialised. + +#### Native SDKs +- [iOS@v4.14.0][ios_sdk_v4.14.0] +- [Android@v4.14.0][android_sdk_v4.14.0] +- [Windows@v4.14.0][windows_sdk_v4.14.0] + +--- + ### Version 4.13.0 (15th May 2018) #### Added - Added `Adjust.gdprForgetMe()` method to enable possibility for user to be forgotten in accordance with GDPR law. @@ -484,6 +495,7 @@ [ios_sdk_v4.12.2]: https://github.com/adjust/ios_sdk/tree/v4.12.2 [ios_sdk_v4.12.3]: https://github.com/adjust/ios_sdk/tree/v4.12.3 [ios_sdk_v4.13.0]: https://github.com/adjust/ios_sdk/tree/v4.13.0 +[ios_sdk_v4.14.0]: https://github.com/adjust/ios_sdk/tree/v4.14.0 [android_sdk_v3.5.0]: https://github.com/adjust/android_sdk/tree/v3.5.0 [android_sdk_v4.1.0]: https://github.com/adjust/android_sdk/tree/v4.1.0 @@ -500,6 +512,8 @@ [android_sdk_v4.12.1]: https://github.com/adjust/android_sdk/tree/v4.12.1 [android_sdk_v4.12.4]: https://github.com/adjust/android_sdk/tree/v4.12.4 [android_sdk_v4.13.0]: https://github.com/adjust/android_sdk/tree/v4.13.0 +[android_sdk_v4.14.0]: https://github.com/adjust/android_sdk/tree/v4.14.0 [windows_sdk_v4.12.0]: https://github.com/adjust/windows_sdk/tree/v4.12.0 [windows_sdk_v4.13.0]: https://github.com/adjust/windows_sdk/tree/v4.13.0 +[windows_sdk_v4.14.0]: https://github.com/adjust/windows_sdk/tree/v4.14.0 diff --git a/VERSION b/VERSION index 813b83b6..c412a4e2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -4.13.0 +4.14.0 diff --git a/doc/migrate.md b/doc/migrate.md index 638c2358..93ba8bfc 100644 --- a/doc/migrate.md +++ b/doc/migrate.md @@ -1,4 +1,4 @@ -## Migrate your Adjust SDK for Unity3d to 4.13.0 from 3.4.4 +## Migrate your Adjust SDK for Unity3d to 4.14.0 from 3.4.4 ### Migration procedure @@ -9,7 +9,7 @@ keeping in `Assets/Plugins` folder. For migration purposes, we have prepared the Adjust SDK uninstall script written in Python (`adjust_uninstall.py`). -Migration to version 4.13.0 of our SDK requires the following steps: +Migration to version 4.14.0 of our SDK requires the following steps: 1. Copy the `adjust_uninstall.py` script to your root Unity project directory and run it. This script should delete all adjust source files from the previous SDK version you had. diff --git a/ext/Android/sdk b/ext/Android/sdk index 2602ae63..64ae4996 160000 --- a/ext/Android/sdk +++ b/ext/Android/sdk @@ -1 +1 @@ -Subproject commit 2602ae636f4077f6646e696889d528a0f0beb7ad +Subproject commit 64ae4996750cc51d090563447c059f1d81229f5d diff --git a/ext/Windows/build.bat b/ext/Windows/build.bat index a4c6a81a..0e9ba2a0 100644 --- a/ext/Windows/build.bat +++ b/ext/Windows/build.bat @@ -48,10 +48,10 @@ ECHO f | xcopy /f /y bridge\release\WindowsPcl.dll ..\..\Assets\Adjust\Windows\W ECHO f | xcopy /f /y bridge\release\WindowsUap.dll ..\..\Assets\Adjust\Windows\WindowsUap.dll REM ------------- STUBS -ECHO f | xcopy /f /y bridge\release\stubs\Win10Interface.dll ..\..\Assets\Adjust\Windows\stubs\Win10Interface.dll -ECHO f | xcopy /f /y bridge\release\stubs\Win81Interface.dll ..\..\Assets\Adjust\Windows\stubs\Win81Interface.dll -ECHO f | xcopy /f /y bridge\release\stubs\WinWsInterface.dll ..\..\Assets\Adjust\Windows\stubs\WinWsInterface.dll -ECHO f | xcopy /f /y bridge\release\stubs\TestLibraryInterface.dll ..\..\Assets\Adjust\Windows\stubs\TestLibraryInterface.dll +ECHO f | xcopy /f /y bridge\release\stubs\Win10Interface.dll ..\..\Assets\Adjust\Windows\Stubs\Win10Interface.dll +ECHO f | xcopy /f /y bridge\release\stubs\Win81Interface.dll ..\..\Assets\Adjust\Windows\Stubs\Win81Interface.dll +ECHO f | xcopy /f /y bridge\release\stubs\WinWsInterface.dll ..\..\Assets\Adjust\Windows\Stubs\WinWsInterface.dll +ECHO f | xcopy /f /y bridge\release\stubs\TestLibraryInterface.dll ..\..\Assets\Adjust\Windows\Stubs\TestLibraryInterface.dll REM ------------- WU10 ECHO f | xcopy /f /y bridge\release\Win10Interface.dll ..\..\Assets\Adjust\Windows\WU10\Win10Interface.dll diff --git a/ext/Windows/sdk b/ext/Windows/sdk index c722277a..2c4a4459 160000 --- a/ext/Windows/sdk +++ b/ext/Windows/sdk @@ -1 +1 @@ -Subproject commit c722277a14754c43c665c9958344f5c34636e7cb +Subproject commit 2c4a4459c6ded2dfb10014e926ff5ecb4b70e3dd diff --git a/ext/iOS/sdk b/ext/iOS/sdk index ccfec7db..4c9d7bf1 160000 --- a/ext/iOS/sdk +++ b/ext/iOS/sdk @@ -1 +1 @@ -Subproject commit ccfec7dbfdefa73082b11d490f317ba48351159b +Subproject commit 4c9d7bf1a1b2942eb8719867c802118098f5d3e9