diff --git a/BranchUnityTestBed/Assets/Branch/Branch.cs b/BranchUnityTestBed/Assets/Branch/Branch.cs index 58e9641..0cb319d 100644 --- a/BranchUnityTestBed/Assets/Branch/Branch.cs +++ b/BranchUnityTestBed/Assets/Branch/Branch.cs @@ -7,7 +7,7 @@ public class Branch : MonoBehaviour { - public static string sdkVersion = "1.0.0"; + public static string sdkVersion = "2.0.0"; public delegate void BranchCallbackWithParams(Dictionary parameters, string error); public delegate void BranchCallbackWithUrl(string url, string error); @@ -229,6 +229,10 @@ public static void setTrackingDisabled(bool value) { _setTrackingDisabled(value); } + public static void setDMAParamsForEEA(bool eeaRegion, bool adPersonalizationConsent, bool adUserDataUsageConsent) { + _setDMAParamsForEEA(eeaRegion, adPersonalizationConsent, adUserDataUsageConsent); + } + #endregion #region Send Event methods @@ -399,7 +403,10 @@ void OnApplicationPause(bool pauseStatus) { [DllImport ("__Internal")] private static extern void _setTrackingDisabled(bool value); - + + [DllImport ("__Internal")] + private static extern void _setDMAParamsForEEA(bool eeaRegion, bool adPersonalizationConsent, bool adUserDataUsageConsent); + [DllImport ("__Internal")] private static extern void _sendEvent(string eventName); @@ -498,6 +505,10 @@ private static void _setTrackingDisabled(bool value) { BranchAndroidWrapper.setTrackingDisabled(value); } + private static void _setDMAParamsForEEA(bool eeaRegion, bool adPersonalizationConsent, bool adUserDataUsageConsent) { + BranchAndroidWrapper.setDMAParamsForEEA(eeaRegion, adPersonalizationConsent, adUserDataUsageConsent); + } + private static void _sendEvent(string eventName) { BranchAndroidWrapper.sendEvent(eventName); } @@ -572,6 +583,8 @@ private static void _clearPartnerParameters() { } private static void _setTrackingDisabled(bool value) { } + private static void _setDMAParamsForEEA(bool eeaRegion, bool adPersonalizationConsent, bool adUserDataUsageConsent) { } + private static void _sendEvent(string eventName) { } private static void _shareLinkWithLinkProperties(string universalObject, string linkProperties, string message,string callbackId) { diff --git a/BranchUnityTestBed/Assets/Branch/BranchAndroidWrapper.cs b/BranchUnityTestBed/Assets/Branch/BranchAndroidWrapper.cs index 4d8d54b..0a34f7a 100644 --- a/BranchUnityTestBed/Assets/Branch/BranchAndroidWrapper.cs +++ b/BranchUnityTestBed/Assets/Branch/BranchAndroidWrapper.cs @@ -134,6 +134,12 @@ public static void setTrackingDisabled(bool value) { }); } + public static void setDMAParamsForEEA(bool eeaRegion, bool adPersonalizationConsent, bool adUserDataUsageConsent) { + _runBlockOnThread(() => { + _getBranchClass().CallStatic("setDMAParamsForEEA", eeaRegion, adPersonalizationConsent, adUserDataUsageConsent); + }); + } + #endregion #region Event methods diff --git a/BranchUnityTestBed/Assets/Branch/Editor/BranchDependencies.xml b/BranchUnityTestBed/Assets/Branch/Editor/BranchDependencies.xml index ac7ab07..85749f3 100644 --- a/BranchUnityTestBed/Assets/Branch/Editor/BranchDependencies.xml +++ b/BranchUnityTestBed/Assets/Branch/Editor/BranchDependencies.xml @@ -1,9 +1,9 @@ - + - + diff --git a/BranchUnityTestBed/Assets/Branch/Editor/BranchEditor.cs b/BranchUnityTestBed/Assets/Branch/Editor/BranchEditor.cs index 87f3a2d..b58ddf9 100644 --- a/BranchUnityTestBed/Assets/Branch/Editor/BranchEditor.cs +++ b/BranchUnityTestBed/Assets/Branch/Editor/BranchEditor.cs @@ -15,17 +15,52 @@ public class BranchEditor : Editor { SerializedProperty serializedTestAppLinks; SerializedProperty serializedAppLinks; + const string assetPath = "Assets/Branch/Resources/BranchData.asset"; + const string copyPath = "Assets/Branch/Resources/BranchDataBackupCopy.asset"; + + private void OnEnable() { + // Prevent overwriting settings on SDK upgrade. + // Check for an existing working copy and if it doesn't exist create a new working copy + // In the future, consider versioning and migrating the data. + if (CopyExists()) { + RestoreBranchDataFromCopy(); + } + + // Loads existing settings serializedBranchData = new SerializedObject(BranchData.Instance); serializedTestAppLinks = serializedBranchData.FindProperty("testAppLinks"); serializedAppLinks = serializedBranchData.FindProperty("liveAppLinks"); } + private bool CopyExists() + { + var asset = Resources.Load(copyPath); + if (asset != null) { + return true; + } + return false; + } + + private void RestoreBranchDataFromCopy() + { + if (!AssetDatabase.CopyAsset(copyPath, assetPath)) { + Debug.LogWarning($"Failed to restore Branch Settings from a backup Copy"); + } + } + + private void UpdateBranchDataCopy() + { + if (!AssetDatabase.CopyAsset(assetPath, copyPath)) { + Debug.LogWarning($"Failed to save Branch Settings into a backup Copy"); + } + } + public override void OnInspectorGUI() { GUI.changed = false; - // TODO: handle enableLogging. Due to lifecycle issues it is best to set this in branch.json + // TODO: handle enableLogging. Due to lifecycle issues it is best to set this in branch.json. Which not yet supportted. SerializedProperty serializedEnableLogging = serializedBranchData.FindProperty("enableLogging"); SerializedProperty serializedIsTestMode = serializedBranchData.FindProperty("testMode"); @@ -58,6 +93,7 @@ public override void OnInspectorGUI() { // Android config update is done pre build here. EditorGUILayout.BeginHorizontal(new GUILayoutOption[]{}); if (GUILayout.Button("Apply Changes", new GUILayoutOption[]{})) { + UpdateBranchDataCopy(); UpdateManifest(); AssetDatabase.Refresh(); } diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager.meta deleted file mode 100644 index 4158e2e..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 37e0fe84570b74330b48ca002222b23a -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor.meta deleted file mode 100644 index 0974d90..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7ec003940925844b19d627753a1f3c1b -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178.meta deleted file mode 100644 index b53b778..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 180ab6a52e64a4d1ab2a4741ebf3d84b -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll deleted file mode 100755 index c5bf996..0000000 Binary files a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll and /dev/null differ diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll.meta deleted file mode 100644 index dbf7cd6..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll.meta +++ /dev/null @@ -1,38 +0,0 @@ -fileFormatVersion: 2 -guid: 93c31a4568274b21bdd6df56b4eddb8b -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll -- gvhp_targets-editor -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll deleted file mode 100755 index da2b3eb..0000000 Binary files a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll and /dev/null differ diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll.meta deleted file mode 100644 index 8f7a7e7..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll.meta +++ /dev/null @@ -1,38 +0,0 @@ -fileFormatVersion: 2 -guid: ebd7f6068ed8402990a68c4e30d0ee77 -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll -- gvhp_targets-editor -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll deleted file mode 100755 index 5277eb4..0000000 Binary files a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll and /dev/null differ diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll.meta deleted file mode 100644 index 6632704..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll.meta +++ /dev/null @@ -1,38 +0,0 @@ -fileFormatVersion: 2 -guid: 3fe4f393fa2b4583ad383897ef26e3fc -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll -- gvhp_targets-editor -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll deleted file mode 100755 index c40912f..0000000 Binary files a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll and /dev/null differ diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll.meta deleted file mode 100644 index 739f7ae..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll.meta +++ /dev/null @@ -1,38 +0,0 @@ -fileFormatVersion: 2 -guid: e17252d84f2343aabe2476ab024be004 -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll -- gvhp_targets-editor -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/CHANGELOG.md b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/CHANGELOG.md deleted file mode 100755 index a87abb5..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/CHANGELOG.md +++ /dev/null @@ -1,1394 +0,0 @@ -# Version 1.2.178 - Dec 20, 2023 -* Added [OpenUPM support](https://openupm.com/packages/com.google.external-dependency-manager/). - -# Version 1.2.177 - Aug 14, 2023 -* iOS Resolver - Added `/opt/homebrew/bin` to Cocoapod executable search path. - Fixes #627 - -# Version 1.2.176 - Apr 27, 2023 -* Android Resolver - Added two Android Resolver settings to determine whether - EDM4U injects custom local Maven repo path as a relative path or full path. - Fixes #537 -* Android Resolver - Inject Maven Repo to `settingTemplate.gradle` from - Unity 2022.2+ - Fixes #594 -* Android Resolver - Jetifier option is enabled by default now. -* Android Resolver - `Explode Aar` option applies to all cases, whether the - project will be exported or not. - Fixes #584 - Fixes #287 - -# Version 1.2.175 - Nov 16, 2022 -* General - Added tvOS podfile support to the iOS resolver. - -# Version 1.2.174 - Oct 06, 2022 -* General - Added tvOS support to the iOS resolver. -* General - Fixed #484 - Changed `EditorMeasurement` to use secure connection. -* Android Resolver - Fixed Android Resolver unable to resolve - `mainTemplate.gradle` in Unity `2022.2+` or `2023.1+`. - -# Version 1.2.173 - Sep 28, 2022 -* General - Added tvOS library support to the export unity package scripts. - -# Version 1.2.172 - Jun 23, 2022 -* iOS Resolver - Stop forcing `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` to `YES`, - which seems to cause problem for some when submitting apps. See #526 for more - information. - -# Version 1.2.171 - May 11, 2022 -* iOS Resolver - Change `Enable Swift Framework Support Workaround` setting to - be `ON` by default since more pods are using Swift Framework now. - -# Version 1.2.170 - Apr 4, 2022 -* Android Resolver - Fixes #498 - Fix the path separator of the Maven repo - injected to `mainTemplate.gradle`. -* iOS Resolver - Fixes #470 - Switch default Cocoapods master repo from Github - to CDN. -* iOS Resolver - `Link Framework Statically` setting is now default to `true`. - That is, `use_frameworks! :linkage => static` will be added to `Podfile` by - default instead of `use_frameworks!`. This can be changed in iOS Resolver - settings. This fixes odd behaviors when pods include static libraries, ex. - Firebase Analytics. -* iOS Resolver - Added a workaround when app crashes on launch due to - `Library not loaded: @rpath/libswiftCore.dylib` when some pods includes Swift - framework. This is turned `OFF` by default and can be changed in iOS Resolver - settings. - -# Version 1.2.169 - Jan 20, 2022 -* General - Fixes #425 - Change to save `GvhProjectSettings.xml` without - Unicode byte order mark (BoM). -* Android Resolver - Remove reference to `jcenter()` -* iOS Resolver - Force setting `LANG` when executing Cocoapods in shell mode on - Mac. - -# Version 1.2.168 - Dec 9, 2021 -* All - Fixes #472 by removing the use of `System.Diagnostics.Debug.Assert` -* All - Fixed #477 by properly enabling EDM4U libraries for Unity 2021.2+ when - the package is installed through `.tgz` - -# Version 1.2.167 - Oct 6, 2021 -* All - Moved versioned `.dll` in EDM4U to a versioned folder and remove their - version postfix in their filename. For instance, `IOSResolver.dll` will be - placed at `ExternalDependencyManager/Editor/1.2.167/Google.IOSResolver.dll`. -* Android Resolver - Fixed #243 by only using the highest version in - `mainTemplate.gradle` when duplicated dependencies are presented. -* Android Resolver - Added supports to x86_64 to ABI list for Android apps on - Chrome OS. - -# Version 1.2.166 - Jun 30, 2021 -* All - Fixed #440 and fixed #447 by specifying the parameter type while calling - `GetApplicationIdentifier()` Unity API using reflection, due to a new - overloaded method introduced in Unity 2021.2. -* Android Resolver - Fixed #442 by patching `Dependency.IsGreater()` when the - version strings end '+'. - -# Version 1.2.165 - Apr 28, 2021 -## Bug Fixes -* Version Handler - Fixed #431 by replacing the use of `HttpUtility.UrlEncode()` - which causes NullReferenceException in certain version of Unity. -* Android Resolver - Check that androidSdkRootPath directory exists before using - as sdkPath. -* Android Resolver - Fixed Android Resolver integration tests with Unity - 2019.3+. - -# Version 1.2.164 - Feb 4, 2021 -## New Features -* Android Resolver - Added support for Android packages with classifier in their - namespaces. -* iOS Resolver - Added new settings in iOS Resolver to configure generated - Podfile. -* iOS Resolver - Added a new attribute `addToAllTargets` in Dependencies.xml. - -## Bug Fixes -* iOS Resolver - Fixed XML parsing for `bitcodeEnabled` attribute in - Dependencies.xml. - -# Version 1.2.163 - Dec 15, 2020 -## Bug Fixes -* Version Handler - Fixed measurement reporting - -# Version 1.2.162 - Nov 19, 2020 -## Bug Fixes -* Version Handler - Improved #413 by preventing Version Handler from running - from static constructor when it is disabled. -* Package Manager Resolver - Remove GPR - -# Version 1.2.161 - Oct 12, 2020 -## Bug Fixes -* Android Resolver - Fixed the issue that Android Resolver does not resolve - again before build in Unity 2020 if it failed to resolve previously. - -# Version 1.2.160 - Sep 30, 2020 -## Bug Fixes -* Android Resolver - Fixed a regression that gradleResolver can be null until - Initialize() is called. -* Android Resolver - Fixed a regression that Android Resolver failed in Unity - 2019.3+ due to `gradleTemplate.properties` not enabled when - `mainTemplate.gradle` is not enabled at all. - -# Version 1.2.159 - Sep 11, 2020 -## Bug Fixes -* Android Resolver - Fixed #322 where the Unity editor will lose its target SDK - setting between Unity restarts if `>28` is selected in 2019. This is due to - Unity AndroidSdkVersions enum does not contain values above 28. -* Android Resolver - Fixed #360 where building Android app with Untiy 2019.3+ - may fail due to Jetifier and AndroidX not enabled properly in generated - Gradle project. This fix requires the user to enable - `Custom Gradle Properties Template` found under - `Player Settings > Settings for Android > Publishing Settings`. - -# Version 1.2.158 - Sep 3, 2020 -## Bug Fixes -* Version Handler: Fixed editor freeze when `-executeMethod` is used in - non-batch mode. -* Android Resolver: Normalized file paths when generating local Maven repo - since the path may contains a mix of forward and backward slash on Windows. -* Export Unity Package: Fixed generation of .unitypackage with tarfile on - Windows. - -# Version 1.2.157 - Aug 6, 2020 -## Bug Fixes -* Android Resolver: Delay initialization until active build target is Android - and the editor is not in play mode. -* iOS Resolver: Delay initialization until active build target is iOS - and the editor is not in play mode. -* Export Unity Package: Workaround directory creation racy if multiple export - operations are spawned at the same time. - -# Version 1.2.156 - June 10, 2020 -## Bug Fixes -* Android Resolver: Fixed that the generated local repo assets contains - redundent labels which are causing Version Handler to failed while - uninstalling packages. -* Android Resolver: Fixed that the repo url injected into mainTemplate.gradle - is incorrect when Unity is configured to export gradle project. -* Android Resolver: Limited to only create local Maven repo when the source - repo contains ".srcaar" file. - -## Changes -* All: Described EDM4U analytics data usage in readme. - -# Version 1.2.155 - May 14, 2020 -## Bug Fixes -* All: Fixed compiler error when build with Unity 5.4 or below due to the - usage of Rect.zero. -* All: Ignore cases when checking command line arguments. - -# Version 1.2.154 - May 14, 2020 -## Bug Fixes -* All: Make each MultiSelectWindow for different purposes to have its own - unique window. - -## Changes -* All: Replace all dialog with DialogWindow which is implemented from - EditorWindow. -* Package Manager Resolver: Clarify how manifest.json will be changed in Package - Manager Resolver window. - -# Version 1.2.153 - Apr 24, 2020 -## Bug Fixes -* Android Resolver: Fixed an exception when repainting the Android resolution - window in Unity 2019.3.x. - -# Version 1.2.152 - Apr 17, 2020 -## Bug Fixes -* Version Handler: Fixed exception when waiting for enabled editor DLLs to - load. -* Android Resolver: Fixed regression when using a Custom Gradle Template - on Windows. - -# Version 1.2.151 - Apr 16, 2020 -## Bug Fixes -* Version Handler: When waiting for newly enabled editor DLLs to load, ignore - all DLLs that do not have a file-system location. -* Android Resolver: Fixed resolution when using a Custom Gradle Template with - libraries stored in a local maven repository distributed with a plugin - installed with the Unity Package Manager. - -# Version 1.2.150 - Apr 9, 2020 -## Bug Fixes -* All: The new packaging script when run on MacOS was generating a - .unitypackage archive that could not be read by Unity on Windows. - This release simply repackages the plugin with tar/gzip to fix the problem. - -# Version 1.2.149 - Apr 8, 2020 -## Bug Fixes -* Package Manager Resolver: Fixed spurious error message when resuming - migration after installing a UPM package. - -# Version 1.2.148 - Apr 8, 2020 -## Bug Fixes -* Package Manager Resolver: Fixed an exception when resuming migration - after installing a UPM package. - -# Version 1.2.147 - Apr 8, 2020 -## Bug Fixes -* Version Handler: Fixed alias traversal bug which caused problems when - migrating from installed .unitypackage files to UPM packages. - -# Version 1.2.146 - Apr 8, 2020 -## Bug Fixes -* Version Handler: Fixed exception in manifest parsing when a manifest is - detected with no aliases. - -# Version 1.2.145 - Apr 2, 2020 -## New Features -* Package Manager Resolver: Added a method to migrate Version Handler - managed packages installed via `.unitypackage` to Unity Package Manager - packages. This is initially used to migrate the External Dependency Manager - to UPM. - -## Changes -* All: Verbose logging is now no longer automatically enabled in batch mode - across all components. Instead logging can be configured using each - component's verbose logging setting or by using the `-gvh_log_debug` command - line flag when starting Unity. -* Version Handler: Sped up version handler updates when the app domain isn't - reloaded. - -## Bug Fixes -* Version Handler: Fixed the display of the obsolete files clean up dialog - when the asset database refreshes. -* Version Handler: Improved reliability of callback from - the VersionHandler.UpdateCompleteMethods event when an asset database - refresh occurs. -* Version Handler: Fixed duplicate exportPath labels when 'Assets/' is the - root of paths assigned to files. -* Version Handler: Handle empty lines in manifest files. - -# Version 1.2.144 - Mar 23, 2020 -## Changed -* iOS Resolver: Removed the ability to configure the Xcode target a Cocoapod - is added to. - -## Bug Fixes -* iOS Resolver: Reverted support for adding Cocoapods to multiple targets as - it caused a regression (exception thrown during post-build step) in some - versions of Unity. - -# Version 1.2.143 - Mar 20, 2020 -## Bug Fixes -* Android Resolver: Fixed caching of resolution state which was causing - the resolver to always run when no dependencies had changed. - -# Version 1.2.142 - Mar 19, 2020 -## Changes -* Package Manager Resolver: Enabled auto-add by default. - -# Version 1.2.141 - Mar 19, 2020 -## Bug Fixes -* Fixed a bug when retrieving project settings. If a plugin was configured - to fetch project settings, if a setting was fetched (e.g "foo") and this - setting existed in the system settings but not the project settings the - system value would override the default value leading to unexpected - behavior. -* Fixed a warning when caching web request classes in Unity 5.6. - -# Version 1.2.140 - Mar 19, 2020 -## Bug Fixes -* Fixed measurement reporting in Unity 5.x. -* Version Handler: Fixed NullReferenceException when an asset doesn't have - an AssetImporter. - -# Version 1.2.139 - Mar 18, 2020 -## Changed -* Added documentation to the built plugin. - -# Version 1.2.138 - Mar 17, 2020 -## New Features -* Package Manager Resolver: Added the Package Manager Resolver - component that allows developers to easily boostrap Unity Package Manager - (UPM) registry addition using unitypackage plugins. -* Version Handler: Added a window that allows plugins to managed by the - Version Handler to be uninstalled. -* Version Handler: Added support for displaying installed plugins. -* Version Handler: Added support for moving files in plugins to their install - locations (if the plugin has been configured to support this). -* iOS Resolver: Added the ability to configure the Xcode target a Cocoapod is - added to. - -## Bug Fixes -* Fixed upgrade from version 1.2.137 and below after the plugin rename to - EDM4U broke the upgrade process. -* Android Resolver: Worked around PlayerSettings.Android.targetSdkVersion - returning empty names for some values in 2019.x. -* Version Handler: Fixed the display of the obsolete files clean up window. -* Version Handler: Fixed managed file check when assets are modified in the - project after plugin import. - -# Version 1.2.137 - Mar 6, 2020 -## Changed -* Renamed package to External Package Manager for Unity (EDM4U). - We changed this to reflect what this plugin is doing today which is far more - than the original scope which just consisted of importing jar files from the - Android SDK maven repository. - Scripts that used to pull `play-services-resolver*.unitypackage` will now have - to request `external-dependency-manager*.unitypackage` instead. - We'll still be shipping a `play-services-resolver*_manifest.txt` file to - handle upgrading from older versions of the plugin. - -## New Features -* All Components: Added reporting of usage so that we can remotely detect - errors and target improvements. -* Android Resolver: Added support for *Dependencies.xml files in Unity Package - Manager packages. -* iOS Resolver: Added support for *Dependencies.xml files in Unity Package - Manager packages. - -## Bug Fixes -* Version Handler: Disabled attempts to disable asset metadata modification - when assets are in a Unity Package Manager managed package. - -# Version 1.2.136 - Feb 19, 2019 -## Bug Fixes -* Android Resolver: Fixed OpenJDK path discovery in Unity 2019.3.1. - -# Version 1.2.135 - Dec 5, 2019 -## Bug Fixes -* All Components: Fixed stack overflow when loading project settings. - -# Version 1.2.134 - Dec 4, 2019 -## Bug Fixes -* All Components: Fixed an issue which caused project settings to be cleared - when running in batch mode. - -# Version 1.2.133 - Nov 18, 2019 -## Bug Fixes -* All Components: Failure to save project settings will now report an error - to the log rather than throwing an exception. - -# Version 1.2.132 - Nov 11, 2019 -## Bug Fixes -* Android Resolver: Worked around expansion of DIR_UNITYPROJECT on Windows - breaking Gradle builds when used as part of a file URI. -* Android Resolver: mainTemplate.gradle is only written if it needs to be - modified. - -# Version 1.2.131 - Oct 29, 2019 -## Bug Fixes -* Version Handler: Improved execution of events on the main thread in batch - mode. -* Version Handler: Improved log level configuration at startup. -* Version Handler: Improved performance of class lookup in deferred method - calls. -* Version Handler: Fixed rename to enable / disable for editor assets. -* iOS Resolver: Improved log level configuration at startup. -* Android Resolver: Improved local maven repo path reference in - mainTemplate.gradle using DIR_UNITYPROJECT. DIR_UNITYPROJECT by Unity - to point to the local filesystem path of the Unity project when Unity - generates the Gradle project. - -# Version 1.2.130 - Oct 23, 2019 -## New Features -* iOS Resolver: Added support for modifying the Podfile before `pod install` - is executed. - -## Bug Fixes -* Version Handler: Fixed invalid classname error when calling - `VersionHandler.UpdateVersionedAssets()`. - -# Version 1.2.129 - Oct 2, 2019 -## Bug Fixes -* iOS Resolver: Changed Cocoapod integration in Unity 2019.3+ to - only add Pods to the UnityFramework target. - -# Version 1.2.128 - Oct 1, 2019 -## Bug Fixes -* iOS Resolver: Fixed Cocoapod project integration mode with Unity - 2019.3+. - -# Version 1.2.127 - Sep 30, 2019 -## Changes -* Android Resolver: All Android Resolver settings File paths are now - serialized with POSIX directory separators. - -# Version 1.2.126 - Sep 27, 2019 -## Changes -* Android Resolver: File paths are now serialized with POSIX directory - separators. -## Bug Fixes -* Android Resolver: Fixed resolution when the parent directory of a Unity - project contains a Gradle project (i.e `settings.gradle` file). - -# Version 1.2.125 - Sep 23, 2019 -## Bug Fixes -* All components: Silenced a warning about not being able to set the console - encoding to UTF8. -* Android Resolver: Worked around broken AndroidSDKTools class in some - versions of Unity. -* iOS Resolver: Fixed iOS target SDK version check -* Version Handler: Changed clean up obsolete files window so that it doesn't - exceed the screen size. - -# Version 1.2.124 - Jul 28, 2019 -## Bug Fixes -* All components: Fixed regression with source control integration when using - Unity 2019.1+. - -# Version 1.2.123 - Jul 23, 2019 -## New Features -* All components: Source control integration for project settings. -## Changes -* Android Resolver: Removed AAR cache as it now makes little difference to - incremental resolution performance. -* Android Resolver: Improved embedded resource management so that embedded - resources should upgrade when the plugin is updated without restarting - the Unity editor. -## Bug Fixes -* Version Handler: Fixed InvokeMethod() and InvokeStaticMethod() when calling - methods that have interface typed arguments. - -# Version 1.2.122 - Jul 2, 2019 -## Bug Fixes -* iOS Resolver: Worked around Unity not loading the iOS Resolver DLL as it - referenced the Xcode extension in a public interface. The iOS Resolver - DLL still references the Xcode extension internally and just handles - missing type exceptions dynamically. - -# Version 1.2.121 - Jun 27, 2019 -## Bug Fixes -* Android Resolver: Fixed warning about missing Packages folder when loading - XML dependencies files in versions of Unity without the package manager. -* Android Resolver: Fixed resolution window progress bar exceeding 100%. -* Android Resolver: If AndroidX is detected in the set of resolved libraries, - the user will be prompted to enable the Jetifier. -* Android Resolver: Improved text splitting in text area windows. -* iOS Resolver: Added support for Unity's breaking changes to the Xcode API - in 2019.3.+. Cocoapods are now added to build targets, Unity-iPhone and - UnityFramework in Unity 2019.3+. - -# Version 1.2.120 - Jun 26, 2019 -## New Features -* Android Resolver: Added support for loading *Dependencies.xml files from - Unity Package Manager packages. -* Android Resolver: Resolution window is now closed if resolution runs as - a pre-build step. -* iOS Resolver: Added support for loading *Dependencies.xml files from - Unity Package Manager packages. -## Bug Fixes -* Android Resolver: Fixed generation of relative repo paths when using - mainTemplate.gradle resolver. -* Android Resolver: Fixed copy of .srcaar to .aar files in repos embedded in a - project when a project path has characters (e.g whitespace) that are escaped - during conversion to URIs. -* Android Resolver: Fixed auto-resolution always running if the Android SDK - is managed by Unity Hub. - -# Version 1.2.119 - Jun 19, 2019 -## Bug Fixes -* Android Resolver: Fixed error reported when using Jetifier integration - in Unity 2018+ if the target SDK is set to "highest installed". - -# Version 1.2.118 - Jun 18, 2019 -## New Features -* Android Resolver: Added initial - [Jetifier](https://developer.android.com/studio/command-line/jetifier) - integration which simplifies - [migration](ttps://developer.android.com/jetpack/androidx/migrate) - to Jetpack ([AndroidX](https://developer.android.com/jetpack/androidx)) - libraries in cases where all dependencies are managed by the Android - Resolver. - This can be enabled via the `Use Jetifier` option in the - `Assets > Play Services Resolver > Android Resolver > Settings` menu. - Caveats: - - If your project contains legacy Android Support Library .jar and .aar - files, these files will need to be removed and replaced with references to - artifacts on Maven via `*Dependencies.xml` files so that the Jetifier - can map them to Jetpack (AndroidX) libraries. - For example, remove the file `support-v4-27.0.2.jar` and replace it with - `` in a - `*Dependencies.xml` file. - - If your project contains .jar or .aar files that use the legacy Android - Support Libraries, these will need to be moved into a local Maven repo - [See this guide](https://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html) - and then these files should be removed from your Unity project and instead - referenced via `*Dependencies.xml` files so that the Jetifier can - patch them to reference the Jetpack lirbaries. - -## Bug Fixes -* Android Resolver: Disabled version locking of com.android.support:multidex - does not use the same versioning scheme as other legacy Android support - libraries. -* Version Handler: Made Google.VersionHandler.dll's asset GUID stable across - releases. This faciliates error-free import into projects where - Google.VersionHandler.dll is moved from the default install location. - -# Version 1.2.117 - Jun 12, 2019 -## Bug Fixes -* Android Resolver: Fix copying of .srcaar to .aar files for - mainTemplate.gradle resolution. PluginImporter configuration was previously - not being applied to .aar files unless the Unity project was saved. - -# Version 1.2.116 - Jun 7, 2019 -## Bug Fixes -* Android Resolver: Fixed resolution of Android dependencies without version - specifiers. -* Android Resolver: Fixed Maven repo not found warning in Android Resolver. -* Android Resolver: Fixed Android Player directory not found exception in - Unity 2019.x when the Android Player isn't installed. - -# Version 1.2.115 - May 28, 2019 -## Bug Fixes -* Android Resolver: Fixed exception due to Unity 2019.3.0a4 removing - x86 from the set of supported ABIs. - -# Version 1.2.114 - May 27, 2019 -## New Features -* Android Resolver: Added support for ABI stripping when using - mainTemplate.gradle. This only works with AARs stored in repos - on the local filesystem. - -# Version 1.2.113 - May 24, 2019 -## New Features -* Android Resolver: If local repos are moved, the plugin will search the - project for matching directories in an attempt to correct the error. -* Version Handler: Files can be now targeted to multiple build targets - using multiple "gvh_" asset labels. -## Bug Fixes -* Android Resolver: "implementation" or "compile" are now added correctly - to mainTemplate.gradle in Unity versions prior to 2019. - -# Version 1.2.112 - May 22, 2019 -## New Features -* Android Resolver: Added option to disable addition of dependencies to - mainTemplate.gradle. - See `Assets > Play Services Resolver > Android Resolver > Settings`. -* Android Resolver: Made paths to local maven repositories in - mainTemplate.gradle relative to the Unity project when a project is not - being exported. -## Bug Fixes -* Android Resolver: Fixed builds with mainTemplate.gradle integration in - Unity 2019. -* Android Resolver: Changed dependency inclusion in mainTemplate.gradle to - use "implementation" or "compile" depending upon the version of Gradle - included with Unity. -* Android Resolver: Gracefully handled exceptions if the console encoding - can't be modified. -* Android Resolver: Now gracefully fails if the AndroidPlayer directory - can't be found. - -# Version 1.2.111 - May 9, 2019 -## Bug Fixes -* Version Handler: Fixed invocation of methods with named arguments. -* Version Handler: Fixed occasional hang when the editor is compiling - while activating plugins. - -# Version 1.2.110 - May 7, 2019 -## Bug Fixes -* Android Resolver: Fixed inclusion of some srcaar artifacts in builds with - Gradle builds when using mainTemplate.gradle. - -# Version 1.2.109 - May 6, 2019 -## New Features: -* Added links to documentation from menu. -* Android Resolver: Added option to auto-resolve Android libraries on build. -* Android Resolver: Added support for packaging specs of Android libraries. -* Android Resolver: Pop up a window when displaying Android dependencies. - -## Bug Fixes -* Android Resolver: Support for Unity 2019 Android SDK and JDK install locations -* Android Resolver: e-enable AAR explosion if internal builds are enabled. -* Android Resolver: Gracefully handle exceptions on file deletion. -* Android Resolver: Fixed Android Resolver log spam on load. -* Android Resolver: Fixed save of Android Resolver PromptBeforeAutoResolution - setting. -* Android Resolver: Fixed AAR processing failure when an AAR without - classes.jar is found. -* Android Resolver: Removed use of EditorUtility.DisplayProgressBar which - was occasionally left displayed when resolution had completed. -* Version Handler: Fixed asset rename to disable when a disabled file exists. - -# Version 1.2.108 - May 3, 2019 -## Bug Fixes: -* Version Handler: Fixed occasional hang on startup. - -# Version 1.2.107 - May 3, 2019 -## New Features: -* Version Handler: Added support for enabling / disabling assets that do not - support the PluginImporter, based upon build target selection. -* Android Resolver: Added support for the global specification of maven repos. -* iOS Resolver: Added support for the global specification of Cocoapod sources. - -# Version 1.2.106 - May 1, 2019 -## New Features -* iOS Resolver: Added support for development pods in Xcode project integration - mode. -* iOS Resolver: Added support for source pods with resources in Xcode project - integration mode. - -# Version 1.2.105 - Apr 30, 2019 -## Bug fixes -* Android Resolver: Fixed reference to Java tool path in logs. -* Android and iOS Resolvers: Changed command line execution to emit a warning - rather than throwing an exception and failing, when it is not possible to - change the console input and output encoding to UTF-8. -* Android Resolver: Added menu option and API to delete resolved libraries. -* Android Resolver: Added menu option and API to log the repos and libraries - currently included in the project. -* Android Resolver: If Plugins/Android/mainTemplate.gradle file is present and - Gradle is selected as the build type, resolution will simply patch the file - with Android dependencies specified by plugins in the project. - -# Version 1.2.104 - Apr 10, 2019 -## Bug Fixes -* Android Resolver: Changed Android ABI selection method from using whitelisted - Unity versions to type availability. This fixes an exception on resolution - in some versions of Unity 2017.4. - -# Version 1.2.103 - Apr 2, 2019 -## Bug Fixes -* Android Resolver: Whitelisted Unity 2017.4 and above with ARM64 support. -* Android Resolver: Fixed Java version check to work with Java SE 12 and above. - -# Version 1.2.102 - Feb 13, 2019 -## Bug Fixes -* Android Resolver: Fixed the text overflow on the Android Resolver - prompt before initial run to fit inside the buttons for - smaller screens. - -# Version 1.2.101 - Feb 12, 2019 -## New Features -* Android Resolver: Prompt the user before the resolver runs for the - first time and allow the user to elect to disable from the prompt. -* Android Resolver: Change popup warning when resolver is disabled - to be a console warning. - -# Version 1.2.100 - Jan 25, 2019 -## Bug Fixes -* Android Resolver: Fixed AAR processing sometimes failing on Windows - due to file permissions. - -# Version 1.2.99 - Jan 23, 2019 -## Bug Fixes -* Android Resolver: Improved performance of project property polling. -* Version Handler: Fixed callback of VersionHandler.UpdateCompleteMethods - when the update process is complete. - -# Version 1.2.98 - Jan 9, 2019 -## New Features -* iOS Resolver: Pod declaration properties can now be set via XML pod - references. For example, this can enable pods for a subset of build - configurations. -## Bug Fixes -* iOS Resolver: Fixed incremental builds after local pods support caused - regression in 1.2.96. - -# Version 1.2.97 - Dec 17, 2018 -## Bug Fixes -* Android Resolver: Reduced memory allocation for logic that monitors build - settings when auto-resolution is enabled. If auto-resolution is disabled, - almost all build settings are no longer polled for changes. - -# Version 1.2.96 - Dec 17, 2018 -## Bug Fixes -* Android Resolver: Fixed repacking of AARs to exclude .meta files. -* Android Resolver: Only perform auto-resolution on the first scene while - building. -* Android Resolver: Fixed parsing of version ranges that include whitespace. -* iOS Resolver: Added support for local development pods. -* Version Handler: Fixed Version Handler failing to rename some files. - -# Version 1.2.95 - Oct 23, 2018 -## Bug Fixes: -* Android Resolver: Fixed auto-resolution running in a loop in some scenarios. - -# Version 1.2.94 - Oct 22, 2018 -## Bug Fixes -* iOS Resolver: Added support for PODS_TARGET_SRCROOT in source Cocoapods. - -# Version 1.2.93 - Oct 22, 2018 -## Bug Fixes -* Android Resolver: Fixed removal of Android libraries on auto-resolution when - `*Dependencies.xml` files are deleted. - -# Version 1.2.92 - Oct 2, 2018 -## Bug Fixes -* Android Resolver: Worked around auto-resolution hang on Windows if - resolution starts before compilation is finished. - -# Version 1.2.91 - Sep 27, 2018 -## Bug Fixes -* Android Resolver: Fixed Android Resolution when the selected build target - isn't Android. -* Added C# assembly symbols the plugin to simplify debugging bug reports. - -# Version 1.2.90 - Sep 21, 2018 -## Bug Fixes -* Android Resolver: Fixed transitive dependency selection of version locked - packages. - -# Version 1.2.89 - Aug 31, 2018 -## Bug Fixes -* Fixed FileLoadException in ResolveUnityEditoriOSXcodeExtension an assembly - can't be loaded. - -# Version 1.2.88 - Aug 29, 2018 -## Changed -* Improved reporting of resolution attempts and conflicts found in the Android - Resolver. -## Bug Fixes -* iOS Resolver now correctly handles sample code in CocoaPods. Previously it - would add all sample code to the project when using project level - integration. -* Android Resolver now correctly handles Gradle conflict resolution when the - resolution results in a package that is compatible with all requested - dependencies. - -# Version 1.2.87 - Aug 23, 2018 -## Bug Fixes -* Fixed Android Resolver "Processing AARs" dialog getting stuck in Unity 5.6. - -# Version 1.2.86 - Aug 22, 2018 -## Bug Fixes -* Fixed Android Resolver exception in OnPostProcessScene() when the Android - platform isn't selected. - -# Version 1.2.85 - Aug 17, 2018 -## Changes -* Added support for synchronous resolution in the Android Resolver. - PlayServicesResolver.ResolveSync() now performs resolution synchronously. -* Auto-resolution in the Android Resolver now results in synchronous resolution - of Android dependencies before the Android application build starts via - UnityEditor.Callbacks.PostProcessSceneAttribute. - -# Version 1.2.84 - Aug 16, 2018 -## Bug Fixes -* Fixed Android Resolver crash when the AndroidResolverDependencies.xml - file can't be written. -* Reduced log spam when a conflicting Android library is pinned to a - specific version. - -# Version 1.2.83 - Aug 15, 2018 -## Bug Fixes -* Fixed Android Resolver failures due to an in-accessible AAR / JAR explode - cache file. If the cache can't be read / written the resolver now continues - with reduced performance following recompilation / DLL reloads. -* Fixed incorrect version number in plugin manifest on install. - This was a minor issue since the version handler rewrote the metadata - after installation. - -# Version 1.2.82 - Aug 14, 2018 -## Changed -* Added support for alphanumeric versions in the Android Resolver. - -## Bug Fixes -* Fixed Android Resolver selection of latest duplicated library. -* Fixed Android Resolver conflict resolution when version locked and non-version - locked dependencies are specified. -* Fixed Android Resolver conflict resolution when non-existent artifacts are - referenced. - -# Version 1.2.81 - Aug 9, 2018 -## Bug Fixes -* Fixed editor error that would occur when when - `PlayerSettings.Android.targetArchitectures` was set to - `AndroidArchitecture.All`. - -# Version 1.2.80 - Jul 24, 2018 -## Bug Fixes -* Fixed project level settings incorrectly falling back to system wide settings - when default property values were set. - -# Version 1.2.79 - Jul 23, 2018 -## Bug Fixes -* Fixed AndroidManifest.xml patching on Android Resolver load in Unity 2018.x. - -# Version 1.2.78 - Jul 19, 2018 -## Changed -* Added support for overriding conflicting dependencies. - -# Version 1.2.77 - Jul 19, 2018 -## Changed -* Android Resolver now supports Unity's 2018 ABI filter (i.e arm64-v8a). -* Reduced Android Resolver build option polling frequency. -* Disabled Android Resolver auto-resolution in batch mode. Users now need - to explicitly kick off resolution through the API. -* All Android Resolver and Version Handler dialogs are now disabled in batch - mode. -* Verbose logging for all plugins is now enabled by default in batch mode. -* Version Handler bootstrapper has been improved to no longer call - UpdateComplete multiple times. However, since Unity can still reload the - app domain after plugins have been enabled, users still need to store their - plugin state to persistent storage to handle reloads. - -## Bug Fixes -* Android Resolver no longer incorrectly adds MANIFEST.MF files to AARs. -* Android Resolver auto-resolution jobs are now unscheduled when an explicit - resolve job is started. - -# Version 1.2.76 - Jul 16, 2018 -## Bug Fixes -* Fixed variable replacement in AndroidManifest.xml files in the Android - Resolver. - Version 1.2.75 introduced a regression which caused all variable replacement - to replace the *entire* property value rather than the component of the - property that referenced a variable. For example, - given "applicationId = com.my.app", "${applicationId}.foo" would be - incorrectly expanded as "com.my.app" rather than "com.my.app.foo". This - resulted in numerous issues for Android builds where content provider - initialization would fail and services may not start. - -## Changed -* Gradle prebuild experimental feature has been removed from the Android - Resolver. The feature has been broken for some time and added around 8MB - to the plugin size. -* Added better support for execution of plugin components in batch mode. - In batch mode UnityEditor.update is sometimes never called - like when a - single method is executed - so the new job scheduler will execute all jobs - synchronously from the main thread. - -# Version 1.2.75 - Jun 20, 2018 -## New Features -* Android Resolver now monitors the Android SDK path when - auto-resolution is enabled and triggers resolution when the path is - modified. - -## Changed -* Android auto-resolution is now delayed by 3 seconds when the following build - settings are changed: - - Target ABI. - - Gradle build vs. internal build. - - Project export. -* Added a progress bar display when AARs are being processed during Android - resolution. - -## Bug Fixes -* Fixed incorrect Android package version selection when a mix of - version-locked and non-version-locked packages are specified. -* Fixed non-deterministic Android package version selection to select - the highest version of a specified package rather than the last - package specification passed to the Gradle resolution script. - -# Version 1.2.74 - Jun 19, 2018 -## New Features -* Added workaround for broken AndroidManifest.xml variable replacement in - Unity 2018.x. By default ${applicationId} variables will be replaced by - the bundle ID in the Plugins/Android/AndroidManifest.xml file. The - behavior can be disabled via the Android Resolver settings menu. - -# Version 1.2.73 - May 30, 2018 -## Bug Fixes -* Fixed spurious warning message about missing Android plugins directory on - Windows. - -# Version 1.2.72 - May 23, 2018 -## Bug Fixes -* Fixed spurious warning message about missing Android plugins directory. - -# Version 1.2.71 - May 10, 2018 -## Bug Fixes -* Fixed resolution of Android dependencies when the `Assets/Plugins/Android` - directory is named in a different case e.g `Assets/plugins/Android`. - -# Version 1.2.70 - May 7, 2018 -## Bug Fixes -* Fixed bitcode flag being ignored for iOS pods. - -# Version 1.2.69 - May 7, 2018 -## Bug Fixes -* Fixed escaping of local repository paths in Android Resolver. - -# Version 1.2.68 - May 3, 2018 -## Changes -* Added support for granular builds of Google Play Services. - -# Version 1.2.67 - May 1, 2018 -## Changes -* Improved support for iOS source-only pods in Unity 5.5 and below. - -# Version 1.2.66 - April 27, 2018 -## Bug Fixes -* Fixed Version Handler renaming of Linux libraries with hyphens in filenames. - Previously, libraries named Foo-1.2.3.so were not being renamed to - libFoo-1.2.3.so on Linux which could break native library loading on some - versions of Unity. - -# Version 1.2.65 - April 26, 2018 -## Bug Fixes -* Fix CocoaPods casing in logs and comments. - -# Version 1.2.64 - Mar 16, 2018 -## Bug Fixes -* Fixed bug in download_artifacts.gradle (used by Android Resolver) which - reported a failure if required artifacts already exist. - -# Version 1.2.63 - Mar 15, 2018 -## Bug Fixes -* Fixed iOS Resolver include search paths taking precedence over system headers - when using project level resolution. -* Fixed iOS Resolver includes relative to library root, when using project level - resolution. - -# Version 1.2.62 - Mar 12, 2018 -## Changes -* Improved error reporting when a file can't be moved to trash by the - Version Handler. -## Bug Fixes -* Fixed Android Resolver throwing NullReferenceException when the Android SDK - path isn't set. -* Fixed Version Handler renaming files with underscores if the - "Rename to Canonical Filenames" setting is enabled. - -# Version 1.2.61 - Jan 22, 2018 -## Bug Fixes -* Fixed Android Resolver reporting non-existent conflicting dependencies when - Gradle build system is enabled. - -# Version 1.2.60 - Jan 12, 2018 -## Changes -* Added support for Maven / Ivy version specifications for Android packages. -* Added support for Android SNAPSHOT packages. - -## Bug Fixes -* Fixed Openjdk version check. -* Fixed non-deterministic Android package resolution when two packages contain - an artifact with the same name. - -# Version 1.2.59 - Oct 19, 2017 -## Bug Fixes -* Fixed execution of Android Gradle resolution script when it's located - in a path with whitespace. - -# Version 1.2.58 - Oct 19, 2017 -## Changes -* Removed legacy resolution method from Android Resolver. - It is now only possible to use the Gradle or Gradle prebuild resolution - methods. - -# Version 1.2.57 - Oct 18, 2017 -## Bug Fixes -* Updated Gradle wrapper to 4.2.1 to fix issues using Gradle with the - latest Openjdk. -* Android Gradle resolution now also uses gradle.properties to pass - parameters to Gradle in an attempt to workaround problems with - command line argument parsing on Windows 10. - -# Version 1.2.56 - Oct 12, 2017 -## Bug Fixes -* Fixed Gradle artifact download with non-version locked artifacts. -* Changed iOS resolver to only load dependencies at build time. - -# Version 1.2.55 - Oct 4, 2017 -## Bug Fixes -* Force Android Resolution when the "Install Android Packages" setting changes. - -# Version 1.2.54 - Oct 4, 2017 -## Bug Fixes -* Fixed execution of command line tools on Windows when the path to the tool - contains a single quote (apostrophe). In this case we fallback to executing - the tool via the system shell. - -# Version 1.2.53 - Oct 2, 2017 -## New Features -* Changed Android Resolver "resolution complete" dialog so that it now displays - failures. -* Android Resolver now detects conflicting libraries that it does not manage - warning the user if they're newer than the managed libraries and prompting - the user to clean them up if they're older or at the same version. - -## Bug Fixes -* Improved Android Resolver auto-resolution speed. -* Fixed bug in the Gradle Android Resolver which would result in resolution - succeeding when some dependencies are not found. - -# Version 1.2.52 - Sep 25, 2017 -## New Features -* Changed Android Resolver's Gradle resolution to resolve conflicting - dependencies across Google Play services and Android Support library packages. - -# Version 1.2.51 - Sep 20, 2017 -## Changes -* Changed iOS Resolver to execute the CocoaPods "pod" command via the shell - by default. Some developers customize their shell environment to use - custom ssh certs to access internal git repositories that host pods so - executing "pod" via the shell will work for these scenarios. - The drawback of executing "pod" via the shell could potentially cause - users problems if they break their shell environment. Though users who - customize their shell environments will be able to resolve these issues. - -# Version 1.2.50 - Sep 18, 2017 -## New Features -* Added option to disable the Gradle daemon in the Android Resolver. - This daemon is now disabled by default as some users are getting into a state - where multiple daemon instances are being spawned when changing dependencies - which eventually results in Android resolution failing until all daemon - processes are manually killed. - -## Bug Fixes -* Android resolution is now always executed if the user declines the update - of their Android SDK. This ensure users can continue to use out of date - Android SDK packages if they desire. - -# Version 1.2.49 - Sep 18, 2017 -## Bug Fixes -* Removed modulemap parsing in iOS Resolver. - The framework *.modulemap did not need to be parsed by the iOS Resolver - when injecting Cocoapods into a Xcode project. Simply adding a modular - framework to a Xcode project results in Xcode's Clang parsing the associated - modulemap and injecting any compile and link flags into the build process. - -# Version 1.2.48 - Sep 12, 2017 -## New Features -* Changed settings to be per-project by default. - -## Bug Fixes -* Added Google maven repository to fix GradlePrebuild resolution with Google - components. -* Fixed Android Resolution failure with spaces in paths. - -# Version 1.2.47 - Aug 29, 2017 -## New Features -* Android and iOS dependencies can now be specified using *Dependencies.xml - files. This is now the preferred method for registering dependencies, - we may remove the API for dependency addition in future. -* Added "Reset to Defaults" button to each settings dialog to restore default - settings. -* Android Resolver now validates the configured JDK is new enough to build - recently released Android libraries. -## Bug Fixes -* Fixed a bug that caused dependencies with the "LATEST" version specification - to be ignored when using the Gradle mode of the Android Resolver. -* Fixed a race condition when running Android Resolution. -* Fixed Android Resolver logging if a PlayServicesSupport instance is created - with no logging enabled before the Android Resolver is initialized. -* Fixed iOS resolver dialog in Unity 4. -* Fixed iOS Cocoapod Xcode project integration in Unity 4. - -# Version 1.2.46 - Aug 22, 2017 -## Bug Fixes -* GradlePrebuild Android resolver on Windows now correctly locates dependent - data files. - -# Version 1.2.45 - Aug 22, 2017 -## Bug Fixes -* Improved Android package auto-resolution and fixed clean up of stale - dependencies when using Gradle dependency resolution. - -# Version 1.2.44 - Aug 21, 2017 -## Bug Fixes -* Enabled autoresolution for Gradle Prebuild. -* Made the command line dialog windows have selectable text. -* Fixed incorrect "Android Settings" dialog disabled groups. -* Updated PlayServicesResolver android platform detection to use the package - manager instead of the 'android' tool. -* UnityCompat reflection methods 'GetAndroidPlatform' and - 'GetAndroidBuildToolsVersion' are now Obsolete due to dependence on the - obsolete 'android' build tool. - -# Version 1.2.43 - Aug 18, 2017 -## Bug Fixes -* Fixed Gradle resolution in the Android Resolver when running - PlayServicesResolver.Resolve() in parallel or spawning multiple - resolutions before the previous resolve completed. - -# Version 1.2.42 - Aug 17, 2017 -## Bug Fixes -* Fixed Xcode project level settings not being applied by IOS Resolver when - Xcode project pod integration is enabled. - -# Version 1.2.41 - Aug 15, 2017 -## Bug Fixes -* IOS Resolver's Xcode workspace pod integration is now disabled when Unity - Cloud Build is detected. Unity Cloud Build does not follow the same build - process as the Unity editor and fails to open the generated xcworkspace at - this time. - -# Version 1.2.40 - Aug 15, 2017 -## Bug Fixes -* Moved Android Resolver Gradle Prebuild scripts into Google.JarResolver.dll. - They are now extracted from the DLL when required. -* AARs / JARs are now cleaned up when switching the Android resolution - strategy. - -# Version 1.2.39 - Aug 10, 2017 -## New Features -* Android Resolver now supports resolution with Gradle. This enables support - for non-local artifacts. -## Bug Fixes -* Android Resolver's Gradle Prebuild now uses Android build tools to determine - the Android platform tools version rather than relying upon internal Unity - APIs. -* Android Resolver's Gradle Prebuild now correctly strips binaries that are - not required for the target ABI. - -# Version 1.2.38 - Aug 7, 2017 -## Bug Fixes -* Fixed an issue in VersionHandler where disabled targets are ignored if - the "Any Platform" flag is set on a plugin DLL. - -# Version 1.2.37 - Aug 3, 2017 -## New Features -* Exposed GooglePlayServices.PlayServicesResolver.Resolve() so that it's - possible for a script to be notified when AAR / Jar resolution is complete. - This makes it easier to setup a project to build from the command line. - -# Version 1.2.36 - Aug 3, 2017 -## New Features -* VersionHandler.UpdateCompleteMethods allows a user to provide a list of - methods to be called when VersionHandlerImpl has completed an update. - This makes it easier to import a plugin and wait for VersionHandler to - execute prior executing a build. - -# Version 1.2.35 - Jul 28, 2017 -## New Features -* VersionHandler will now rename Linux libraries so they can target Unity - versions that require different file naming. Libraries need to be labelled - gvh_linuxlibname-${basename} in order to be considered for renaming. - e.g gvh\_linuxlibname-MyLib will be named MyLib.so in Unity 5.5 and below and - libMyLib.so in Unity 5.6 and above. - -# Version 1.2.34 - Jul 28, 2017 -## Bug Fixes -* Made VersionHandler bootstrap module more robust when calling static - methods before the implementation DLL is loaded. - -# Version 1.2.33 - Jul 27, 2017 -## New Features -* Added a bootstrap module for VersionHandler so the implementation - of the VersionHandler module can be versioned without resulting in - a compile error when imported at different versions across multiple - plugins. - -# Version 1.2.32 - Jul 20, 2017 -## New Features -* Added support for build target selection based upon .NET framework - version in the VersionHandler. - When applying either gvh\_dotnet-3.5 or gvh\_dotnet-4.5 labels to - assets, the VersionHandler will only enable the asset for the - specified set of build targets when the matching .NET framework version - is selected in Unity 2017's project settings. This allows assets - to be provided in a plugin that need to differ based upon .NET version. - -# Version 1.2.31 - Jul 5, 2017 -## Bug Fixes -* Force expansion of AARs with native components when using Unity 2017 - with the internal build system. In contrast to Unity 5.x, Unity 2017's - internal build system does not include native libraries included in AARs. - Forcing expansion of AARs with native components generates an - Ant / Eclipse project for each AAR which is correctly included by Unity - 2017's internal build system. - -# Version 1.2.30 - Jul 5, 2017 -## Bug Fixes -* Fixed Cocoapods being installed when the build target isn't iOS. -* Added support for malformed AARs with missing classes.jar. - -# Version 1.2.29 - Jun 16, 2017 -## New Features -* Added support for the Android sdkmanager tool. - -# Version 1.2.28 - Jun 8, 2017 -## Bug Fixes -* Fixed non-shell command line execution (regression from - Cocoapod installation patch). - -# Version 1.2.27 - Jun 7, 2017 -## Bug Fixes -* Added support for stdout / stderr redirection when executing - commands in shell mode. - This fixes CocoaPod tool installation when shell mode is - enabled. -* Fixed incremental builds when additional sources are specified - in the Podfile. - -# Version 1.2.26 - Jun 7, 2017 -## Bug Fixes -* Fixed a crash when importing Version Handler into Unity 4.7.x. - -# Version 1.2.25 - Jun 7, 2017 -## Bug Fixes -* Fixed an issue in the Jar Resolver which incorrectly notified - event handlers of bundle ID changes when the currently selected - (not active) build target changed in Unity 5.6 and above. - -# Version 1.2.24 - Jun 6, 2017 -## New Features -* Added option to control file renaming in Version Handler settings. - Disabling file renaming (default option) significantly increases - the speed of file version management operations with the downside - that any files that are referenced directly by canonical filename - rather than asset ID will no longer be valid. -* Improved logging in the Version Handler. -## Bug Fixes -* Fixed an issue in the Version Handler which caused it to not - re-enable plugins when re-importing a custom package with disabled - version managed files. - -# Version 1.2.23 - May 26, 2017 -## Bug Fixes -* Fixed a bug with gradle prebuild resolver on windows. - -# Version 1.2.22 - May 19, 2017 -## Bug Fixes -* Fixed a bug in the iOS resolver with incremental builds. -* Fixed misdetection of Cocoapods support with Unity beta 5.6. - -# Version 1.2.21 - May 8, 2017 -## Bug Fixes -* Fix for https://github.com/googlesamples/unity-jar-resolver/issues/48 - Android dependency version number parsing when "-alpha" (etc.) are - included in dependency (AAR / JAR) versions. - -# Version 1.2.20 - May 8, 2017 -## Bug Fixes -* Attempted to fix - https://github.com/googlesamples/unity-jar-resolver/issues/48 - where a NullReferenceException could occur if a target file does not - have a valid version string. - -# Version 1.2.19 - May 4, 2017 -## Bug Fixes -* Fixed Jar Resolver exploding and deleting AAR files it isn't managing. - -# Version 1.2.18 - May 4, 2017 -## New Features -* Added support for preserving Unity pods such as when GVR is enabled. - -# Version 1.2.17 - Apr 20, 2017 -## Bug Fixes -* Fixed auto-resolution when an Android application ID is modified. - -# Version 1.2.16 - Apr 17, 2017 -## Bug Fixes -* Fixed Unity version number parsing on machines with a locale that uses - "," for decimal points. -* Fixed null reference exception if JDK path isn't set. - -# Version 1.2.15 - Mar 17, 2017 -## New Features -* Added warning when the Jar Resolver's background resolution is disabled. -## Bug Fixes -* Fixed support of AARs with native libraries when using Gradle. -* Fixed extra repository paths when resolving dependencies. - -# Version 1.2.14 - Mar 7, 2017 -## New Features -* Added experimental Android resolution using Gradle. - This alternative resolver supports proguard stripping with Unity's - internal build system. -* Added Android support for single ABI builds when using AARs include - native libraries. -* Disabled Android resolution on changes to all .cs and .js files. - File patterns that are monitored for auto-resolution can be added - using PlayServicesResolver.AddAutoResolutionFilePatterns(). -* Added tracking of resolved AARs and JARs so they can be cleaned up - if they're no longer referenced by a project. -* Added persistence of AAR / JAR version replacement for each Unity - session. -* Added settings dialog to the iOS resolver. -* Integrated Cocoapod tool installation in the iOS resolver. -* Added option to run pod tool via the shell. -## Bug Fixes -* Fixed build of some source Cocoapods (e.g Protobuf). -* VersionHandler no longer prompts to delete obsolete manifests. -* iOS resolver handles Cocoapod installation when using Ruby < 2.2.2. -* Added workaround for package version selection when including - Google Play Services on Android. -* Fixed support for pods that reference static libraries. -* Fixed support for resource-only pods. - -# Version 1.2.12 - Feb 14, 2017 -## Bug Fixes -* Fixed re-explosion of AARs when the bundle ID is modified. - -# Version 1.2.11 - Jan 30, 2017 -## New Features -* Added support for Android Studio builds. -* Added support for native (C/C++) shared libraries in AARs. - -# Version 1.2.10 - Jan 11, 2017 -## Bug Fixes -* Fixed SDK manager path retrieval. -* Also, report stderr when it's not possible to run the "pod" tool. -* Handle exceptions thrown by Unity.Cecil on asset rename -* Fixed IOSResolver to handle PlayerSettings.iOS.targetOSVersionString - -# Version 1.2.9 - Dec 7, 2016 -## Bug Fixes -* Improved error reporting when "pod repo update" fails. -* Added detection of xml format xcode projects generated by old Cocoapods - installations. - -# Version 1.2.8 - Dec 6, 2016 -## Bug Fixes -* Increased speed of JarResolver resolution. -* Fixed JarResolver caches getting out of sync with requested dependencies - by removing the caches. -* Fixed JarResolver explode cache always being rewritten even when no - dependencies change. - -# Version 1.2.7 - Dec 2, 2016 -## Bug Fixes -* Fixed VersionHandler build errors with Unity 5.5, due to the constantly - changing BuildTarget enum. -* Added support for Unity configured JDK Path rather than requiring - JAVA_HOME to be set in the Jar Resolver. - -# Version 1.2.6 - Nov 15, 2016 -## Bug Fixes -* Fixed IOSResolver errors when iOS support is not installed. -* Added fallback to "pod" executable search which queries the Ruby Gems - package manager for the binary install location. - -# Version 1.2.5 - Nov 3, 2016 -## Bug Fixes -* Added crude support for source only Cocoapods to the IOSResolver. - -# Version 1.2.4 - Oct 27, 2016 -## Bug Fixes -* Automated resolution of out of date pod repositories. - -# Version 1.2.3 - Oct 25, 2016 -## Bug Fixes -* Fixed exception when reporting conflicting dependencies. - -# Version 1.2.2 - Oct 17, 2016 -## Bug Fixes -* Fixed issue working with Unity 5.5 -* Fixed issue with PlayServicesResolver corrupting other iOS dependencies. -* Updated build script to use Unity distributed tools for building. - -# Version 1.2.1 - Jul 25, 2016 -## Bug Fixes -* Removed 1.2 Resolver and hardcoded whitelist of AARs to expand. -* Improved error reporting when the "jar" executable can't be found. -* Removed the need to set JAVA_HOME if "jar" is in the user's path. -* Fixed spurious copying of partially matching AARs. -* Changed resolver to only copy / expand when source AARs change. -* Auto-resolution of dependencies is now performed when the Android - build target is selected. - -## New Features -* Expand AARs that contain manifests with variable expansion like - ${applicationId}. -* Added optional logging in the JarResolverLib module. -* Integration with the Android SDK manager for dependencies that - declare required Android SDK packages. - -# Version 1.2.0 - May 11 2016 -## Bug Fixes -* Handles resolving dependencies when the artifacts are split across 2 repos. -* #4 Misdetecting version for versions like 1.2-alpha. These are now string - compared if alphanumeric -* Removed resolver creation via reflection since it did not work all the time. - Now a resolver needs to be loaded externally (which is existing behavior). - -## New Features -* Expose PlayServicesResolver properties to allow for script access. -* Explodes firebase-common and firebase-measurement aar files to support - ${applicationId} substitution. - -# Version 1.1.1 - 25 Feb 2016 -## Bug Fixes -* #1 Spaces in project path not handled when exploding Aar file. -* #2 Script compilation error: TypeLoadException. - -# Version 1.1.0 - 5 Feb 2016 -## New Features -* Adds friendly alert when JAVA_HOME is not set on Windows platforms. -* Adds flag for disabling background resolution. -* Expands play-services-measurement and replaces ${applicationId} with the - bundle Id. - - ## Bug Fixes -* Fixes infinite loop of resolution triggered by resolution. diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/CHANGELOG.md.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/CHANGELOG.md.meta deleted file mode 100644 index 593ca4e..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/CHANGELOG.md.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: addb2dea6a07402dbecf6bf622e0367d -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/CHANGELOG.md -timeCreated: 1584567712 -licenseType: Pro -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll deleted file mode 100755 index 1568b58..0000000 Binary files a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll and /dev/null differ diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.meta deleted file mode 100644 index 2aa4bd9..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.meta +++ /dev/null @@ -1,36 +0,0 @@ -fileFormatVersion: 2 -guid: 71acb8e0ad6e482aa723e17b53c44d6e -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/Google.VersionHandler.dll -- gvhp_targets-editor -timeCreated: 1480838400 -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - isOverridable: 0 - platformData: - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 1 - settings: - DefaultValueInitialized: true - - first: - Windows Store Apps: WindowsStoreApps - second: - enabled: 0 - settings: - CPU: AnyCPU - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/LICENSE b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/LICENSE deleted file mode 100755 index 6258cc4..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/LICENSE +++ /dev/null @@ -1,245 +0,0 @@ -Copyright (C) 2014 Google Inc. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -==================================================================================================== -This package uses MiniJSON - -Copyright (c) 2013 Calvin Rien - -Based on the JSON parser by Patrick van Bergen -http://techblog.procurios.nl/k/618/news/view/14605/14863/How-do-I-write-my-own-parser-for-JSON.html - -Simplified it so that it doesn't throw exceptions -and can be used in Unity iPhone with maximum code stripping. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/LICENSE.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/LICENSE.meta deleted file mode 100644 index 87fffb8..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/LICENSE.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: aadba25a17db44258ffba434165a331d -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/LICENSE -timeCreated: 1584567712 -licenseType: Pro -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/README.md b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/README.md deleted file mode 100755 index 82d7176..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/README.md +++ /dev/null @@ -1,893 +0,0 @@ -# External Dependency Manager for Unity - -[![openupm](https://img.shields.io/npm/v/com.google.external-dependency-manager?label=openupm®istry_uri=https://package.openupm.com)](https://openupm.com/packages/com.google.external-dependency-manager/) -[![openupm](https://img.shields.io/badge/dynamic/json?color=brightgreen&label=downloads&query=%24.downloads&suffix=%2Fmonth&url=https%3A%2F%2Fpackage.openupm.com%2Fdownloads%2Fpoint%2Flast-month%2Fcom.google.external-dependency-manager)](https://openupm.com/packages/com.google.external-dependency-manager/) - -## Overview - -The External Dependency Manager for Unity (EDM4U) (formerly Play Services -Resolver/Jar Resolver) is intended to be used by any Unity package or user that -requires: - -* Android specific libraries (e.g - [AARs](https://developer.android.com/studio/projects/android-library.html)) - -* iOS [CocoaPods](https://cocoapods.org/) - -* Version management of transitive dependencies - -* Management of Package Manager (PM) Registries - -If you want to add and use iOS/Android dependencies directly in your project, -then you should to install EDM4U in your project. - -If you are a package user and the plugin you are using depends on EDM4U, *and* -the package does not include EDM4U as a package dependency already, then you -should to install EDM4U in your project. - -If you are a UPM package maintainer and your package requires EDM4U, then you -should add EDM4U as a -[package dependency](https://docs.unity3d.com/2019.3/Documentation/Manual/upm-dependencies.html) -in your package manifest (`package.json`): - -``` -{ - "dependencies": { - "com.google.external-dependency-manager": "1.2.178" - } -} -``` - -You should still install EDM4U to test out the package during development. - -If you are a legacy `.unitypackage` package maintainer and your package requires -EDM4U, please ask the user to install EDM4U separately. You should install EDM4U -to test out the package during development. - -Updated releases are available on -[GitHub](https://github.com/googlesamples/unity-jar-resolver) - -## Requirements - -The *Android Resolver* and *iOS Resolver* components of the plugin only work -with Unity version 4.6.8 or higher. - -The *Version Handler* component only works with Unity 5.x or higher as it -depends upon the `PluginImporter` UnityEditor API. - -The *Package Manager Resolver* component only works with Unity 2018.4 or above, -when [scoped registry](https://docs.unity3d.com/Manual/upm-scoped.html) support -was added to the Package Manager. - -## Getting Started - -Check out [troubleshooting](troubleshooting-faq.md) if you need help. - -### Install via OpenUPM - -EDM4U is available on -[OpenUPM](https://openupm.com/packages/com.google.external-dependency-manager/): - -``` -openupm add com.google.external-dependency-manager -``` - -### Install via Google APIs for Unity - -EDM4U is available both in UPM and legacy `.unitypackage` formats on -[Google APIs for Unity](https://developers.google.com/unity/archive#external_dependency_manager_for_unity). - -You may install the UPM version (.tgz) as a -[local UPM package](https://docs.unity3d.com/Manual/upm-ui-local.html). - -You can also install EDM4U in your project as a `.unitypackage`. This is not -recommended due to potential conflicts. - -### Conflict Resolution - -For historical reasons, a package maintainer may choose to embed EDM4U in their -package for ease of installation. This will create a conflict when you try to -install EDM4U with the steps above, or with another package with embedded EDM4U. -If your project imported a `.unitypackage` that has a copy of EDM4U embedded in -it, you may safely delete it from your Assets folder. If your project depends on -another UPM package with EDM4U, please reach out to the package maintainer and -ask them to replace it with a dependency to this package. In the meantime, you -can workaround the issue by copying the package to your Packages folder (to -create an -[embedded package](https://docs.unity3d.com/Manual/upm-concepts.html#Embedded)) -and perform the steps yourself to avoid a dependency conflict. - -### Config file - -To start adding dependencies to your project, copy and rename the -[SampleDependencies.xml](https://github.com/googlesamples/unity-jar-resolver/blob/master/sample/Assets/ExternalDependencyManager/Editor/SampleDependencies.xml) -file into your plugin and add the dependencies your project requires. - -The XML file needs to be under an `Editor` directory and match the name -`*Dependencies.xml`. For example, `MyPlugin/Editor/MyPluginDependencies.xml`. - -## Usages - -### Android Resolver - -The Android Resolver copies specified dependencies from local or remote Maven -repositories into the Unity project when a user selects Android as the build -target in the Unity editor. - -For example, to add the Google Play Games library -(`com.google.android.gms:play-services-games` package) at version `9.8.0` to the -set of a plugin's Android dependencies: - -``` - - - - - extra-google-m2repository - - - - -``` - -The version specification (last component) supports: - -* Specific versions e.g `9.8.0` - -* Partial matches e.g `9.8.+` would match 9.8.0, 9.8.1 etc. choosing the most - recent version - -* Latest version using `LATEST` or `+`. We do *not* recommend using this - unless you're 100% sure the library you depend upon will not break your - Unity plugin in future - -The above example specifies the dependency as a component of the Android SDK -manager such that the Android SDK manager will be executed to install the -package if it's not found. If your Android dependency is located on Maven -central it's possible to specify the package simply using the `androidPackage` -element: - -``` - - - - - -``` - -#### Auto-resolution - -By default the Android Resolver automatically monitors the dependencies you have -specified and the `Plugins/Android` folder of your Unity project. The resolution -process runs when the specified dependencies are not present in your project. - -The *auto-resolution* process can be disabled via the `Assets > External -Dependency Manager > Android Resolver > Settings` menu. - -Manual resolution can be performed using the following menu options: - -* `Assets > External Dependency Manager > Android Resolver > Resolve` - -* `Assets > External Dependency Manager > Android Resolver > Force Resolve` - -#### Deleting libraries - -Resolved packages are tracked via asset labels by the Android Resolver. They can -easily be deleted using the `Assets > External Dependency Manager > Android -Resolver > Delete Resolved Libraries` menu item. - -#### Android Manifest Variable Processing - -Some AAR files (for example play-services-measurement) contain variables that -are processed by the Android Gradle plugin. Unfortunately, Unity does not -perform the same processing when using Unity's Internal Build System, so the -Android Resolver plugin handles known cases of this variable substitution by -exploding the AAR into a folder and replacing `${applicationId}` with the -`bundleID`. - -Disabling AAR explosion and therefore Android manifest processing can be done -via the `Assets > External Dependency Manager > Android Resolver > Settings` -menu. You may want to disable explosion of AARs if you're exporting a project to -be built with Gradle/Android Studio. - -#### ABI Stripping - -Some AAR files contain native libraries (.so files) for each ABI supported by -Android. Unfortunately, when targeting a single ABI (e.g x86), Unity does not -strip native libraries for unused ABIs. To strip unused ABIs, the Android -Resolver plugin explodes an AAR into a folder and removes unused ABIs to reduce -the built APK size. Furthermore, if native libraries are not stripped from an -APK (e.g you have a mix of Unity's x86 library and some armeabi-v7a libraries) -Android may attempt to load the wrong library for the current runtime ABI -completely breaking your plugin when targeting some architectures. - -AAR explosion and therefore ABI stripping can be disabled via the `Assets > -External Dependency Manager > Android Resolver > Settings` menu. You may want to -disable explosion of AARs if you're exporting a project to be built with -Gradle/Android Studio. - -#### Resolution Strategies - -By default the Android Resolver will use Gradle to download dependencies prior -to integrating them into a Unity project. This works with Unity's internal build -system and Gradle/Android Studio project export. - -It's possible to change the resolution strategy via the `Assets > External -Dependency Manager > Android Resolver > Settings` menu. - -##### Download Artifacts with Gradle - -Using the default resolution strategy, the Android resolver executes the -following operations: - -- Remove the result of previous Android resolutions. E.g Delete all files and - directories labeled with "gpsr" under `Plugins/Android` from the project. - -- Collect the set of Android dependencies (libraries) specified by a project's - `*Dependencies.xml` files. - -- Run `download_artifacts.gradle` with Gradle to resolve conflicts and, if - successful, download the set of resolved Android libraries (AARs, JARs). - -- Process each AAR/JAR so that it can be used with the currently selected - Unity build system (e.g Internal vs. Gradle, Export vs. No Export). This - involves patching each reference to `applicationId` in the - `AndroidManifest.xml` with the project's bundle ID. This means resolution - must be run again if the bundle ID has changed. - -- Move the processed AARs to `Plugins/Android` so they will be included when - Unity invokes the Android build. - -##### Integrate into mainTemplate.gradle - -Unity 5.6 introduced support for customizing the `build.gradle` used to build -Unity projects with Gradle. When the *Patch mainTemplate.gradle* setting is -enabled, rather than downloading artifacts before the build, Android resolution -results in the execution of the following operations: - -- Remove the result of previous Android resolutions. E.g Delete all files and - directories labeled with "gpsr" under `Plugins/Android` from the project and - remove sections delimited with `// Android Resolver * Start` and `// Android - Resolver * End` lines. - -- Collect the set of Android dependencies (libraries) specified by a project's - `*Dependencies.xml` files. - -- Rename any `.srcaar` files in the build to `.aar` and exclude them from - being included directly by Unity in the Android build as - `mainTemplate.gradle` will be patched to include them instead from their - local maven repositories. - -- Inject the required Gradle repositories into `mainTemplate.gradle` at the - line matching the pattern `.*apply plugin: - 'com\.android\.(application|library)'.*` or the section starting at the line - `// Android Resolver Repos Start`. If you want to control the injection - point in the file, the section delimited by the lines `// Android Resolver - Repos Start` and `// Android Resolver Repos End` should be placed in the - global scope before the `dependencies` section. - -- Inject the required Android dependencies (libraries) into - `mainTemplate.gradle` at the line matching the pattern `***DEPS***` or the - section starting at the line `// Android Resolver Dependencies Start`. If - you want to control the injection point in the file, the section delimited - by the lines `// Android Resolver Dependencies Start` and `// Android - Resolver Dependencies End` should be placed in the `dependencies` section. - -- Inject the packaging options logic, which excludes architecture specific - libraries based upon the selected build target, into `mainTemplate.gradle` - at the line matching the pattern `android +{` or the section starting at the - line `// Android Resolver Exclusions Start`. If you want to control the - injection point in the file, the section delimited by the lines `// Android - Resolver Exclusions Start` and `// Android Resolver Exclusions End` should - be placed in the global scope before the `android` section. - -#### Dependency Tracking - -The Android Resolver creates the -`ProjectSettings/AndroidResolverDependencies.xml` to quickly determine the set -of resolved dependencies in a project. This is used by the auto-resolution -process to only run the expensive resolution process when necessary. - -#### Displaying Dependencies - -It's possible to display the set of dependencies the Android Resolver would -download and process in your project via the `Assets > External Dependency -Manager > Android Resolver > Display Libraries` menu item. - -### iOS Resolver - -The iOS resolver component of this plugin manages -[CocoaPods](https://cocoapods.org/). A CocoaPods `Podfile` is generated and the -`pod` tool is executed as a post build process step to add dependencies to the -Xcode project exported by Unity. - -Dependencies for iOS are added by referring to CocoaPods. - -For example, to add the AdMob pod, version 7.0 or greater with bitcode enabled: - -``` - - - - - -``` - -#### Integration Strategies - -The `CocoaPods` are either: - -* Downloaded and injected into the Xcode project file directly, rather than - creating a separate xcworkspace. We call this `Xcode project` integration. - -* If the Unity version supports opening a xcworkspace file, the `pod` tool is - used as intended to generate a xcworkspace which references the CocoaPods. - We call this `Xcode workspace` integration. - -The resolution strategy can be changed via the `Assets > External Dependency -Manager > iOS Resolver > Settings` menu. - -##### Appending text to generated Podfile - -In order to modify the generated Podfile you can create a script like this: - -``` -using System.IO; - -public class PostProcessIOS : MonoBehaviour -{ - // Must be between 40 and 50 to ensure that it's not overriden by Podfile generation (40) and - // that it's added before "pod install" (50). - [PostProcessBuildAttribute(45)] - private static void PostProcessBuild_iOS(BuildTarget target, string buildPath) - { - if (target == BuildTarget.iOS) - { - using (StreamWriter sw = File.AppendText(buildPath + "/Podfile")) - { - // E.g. add an app extension - sw.WriteLine("\ntarget 'NSExtension' do\n pod 'Firebase/Messaging', '6.6.0'\nend"); - } - } - } -} -``` - -### Package Manager Resolver - -Adding registries to the -[Package Manager](https://docs.unity3d.com/Manual/Packages.html) (PM) is a -manual process. The Package Manager Resolver (PMR) component of this plugin -makes it easy for plugin maintainers to distribute new PM registry servers and -easy for plugin users to manage PM registry servers. - -#### Adding Registries - -For example, to add a registry for plugins in the scope `com.coolstuff`: - -``` - - - - com.coolstuff - - - -``` - -When PMR is loaded it will prompt the developer to add the registry to their -project if it isn't already present in the `Packages/manifest.json` file. - -For more information, see Unity's documentation on -[scoped package registries](https://docs.unity3d.com/Manual/upm-scoped.html). - -#### Managing Registries - -It's possible to add and remove registries that are specified via PMR XML -configuration files via the following menu options: - -* `Assets > External Dependency Manager > Package Manager Resolver > Add - Registries` will prompt the user with a window which allows them to add - registries discovered in the project to the Package Manager. - -* `Assets > External Dependency Manager > Package Manager Resolver > Remove - Registries` will prompt the user with a window which allows them to remove - registries discovered in the project from the Package Manager. - -* `Assets > External Dependency Manager > Package Manager Resolver > Modify - Registries` will prompt the user with a window which allows them to add or - remove registries discovered in the project. - -#### Migration - -PMR can migrate Version Handler packages installed in the `Assets` folder to PM -packages. This requires the plugins to implement the following: - -* `.unitypackage` must include a Version Handler manifests that describes the - components of the plugin. If the plugin has no dependencies the manifest - would just include the files in the plugin. - -* The PM package JSON provided by the registry must include a keyword (in the - `versions.VERSION.keyword` list) that maps the PM package to a Version - Handler package using the format `vh-name:VERSION_HANDLER_MANIFEST_NAME` - where `VERSION_HANDLER_MANIFEST_NAME` is the name of the manifest defined in - the `.unitypackage`. For more information see the description of the - `gvhp_manifestname` asset label in the [Version Handler](#version-handler) - section. - -When using the `Assets > External Dependency Manager > Package Manager -Resolver > Migrate Packages` menu option, PMR then will: - -* List all Version Handler manager packages in the project. - -* Search all available packages in the PM registries and fetch keywords - associated with each package parsing the Version Handler manifest names for - each package. - -* Map each installed Version Handler package to a PM package. - -* Prompt the user to migrate the discovered packages. - -* Perform package migration for all selected packages if the user clicks the - `Apply` button. - -#### Configuration - -PMR can be configured via the `Assets > External Dependency Manager > Package -Manager Resolver > Settings` menu option: - -* `Add package registries` when enabled, when the plugin loads or registry - configuration files change, this will prompt the user to add registries that - are not present in the Package Manager. - -* `Prompt to add package registries` will cause a developer to be prompted - with a window that will ask for confirmation before adding registries. When - this is disabled registries are added silently to the project. - -* `Prompt to migrate packages` will cause a developer to be prompted with a - window that will ask for confirmation before migrating packages installed in - the `Assets` directory to PM packages. - -* `Enable Analytics Reporting` when enabled, reports the use of the plugin to - the developers so they can make imrpovements. - -* `Verbose logging` when enabled prints debug information to the console which - can be useful when filing bug reports. - -### Version Handler - -The Version Handler component of this plugin manages: - -* Shared Unity plugin dependencies. - -* Upgrading Unity plugins by cleaning up old files from previous versions. - -* Uninstallation of plugins that are distributed with manifest files. - -* Restoration of plugin assets to their original install locations if assets - are tagged with the `exportpath` label. - -Since the Version Handler needs to modify Unity asset metadata (`.meta` files), -to enable/disable components, rename and delete asset files it does not work -with Package Manager installed packages. It's still possible to include EDM4U in -Package Manager packages, the Version Handler component simply won't do anything -to PM plugins in this case. - -#### Using Version Handler Managed Plugins - -If a plugin is imported at multiple different versions into a project, if the -Version Handler is enabled, it will automatically check all managed assets to -determine the set of assets that are out of date and assets that should be -removed. To disable automatic checking managed assets disable the `Enable -version management` option in the `Assets > External Dependency Manager > -Version Handler > Settings` menu. - -If version management is disabled, it's possible to check managed assets -manually using the `Assets > External Dependency Manager > Version Handler > -Update` menu option. - -##### Listing Managed Plugins - -Plugins managed by the Version Handler, those that ship with manifest files, can -displayed using the `Assets > External Dependency Manager > Version Handler > -Display Managed Packages` menu option. The list of plugins are written to the -console window along with the set of files used by each plugin. - -##### Uninstalling Managed Plugins - -Plugins managed by the Version Handler, those that ship with manifest files, can -be removed using the `Assets > External Dependency Manager > Version Handler > -Uninstall Managed Packages` menu option. This operation will display a window -that allows a developer to select a set of plugins to remove which will remove -all files owned by each plugin excluding those that are in use by other -installed plugins. - -Files managed by the Version Handler, those labeled with the `gvh` asset label, -can be checked to see whether anything needs to be upgraded, disabled or removed -using the `Assets > External Dependency Manager > Version Handler > Update` menu -option. - -##### Restore Install Paths - -Some developers move assets around in their project which can make it harder for -plugin maintainers to debug issues if this breaks Unity's -[special folders](https://docs.unity3d.com/Manual/SpecialFolders.html) rules. If -assets are labeled with their original install/export path (see -`gvhp_exportpath` below), Version Handler can restore assets to their original -locations when using the `Assets > External Dependency Manager > Version -Handler > Move Files To Install Locations` menu option. - -##### Settings - -Some behavior of the Version Handler can be configured via the `Assets > -External Dependency Manager > Version Handler > Settings` menu option. - -* `Enable version management` controls whether the plugin should automatically - check asset versions and apply changes. If this is disabled the process - should be run manually when installing or upgrading managed plugins using - `Assets > External Dependency Manager > Version Handler > Update`. - -* `Rename to canonical filenames` is a legacy option that will rename files to - remove version numbers and other labels from filenames. - -* `Prompt for obsolete file deletion` enables the display of a window when - obsolete files are deleted allowing the developer to select which files to - delete and those to keep. - -* `Allow disabling files via renaming` controls whether obsolete or disabled - files should be disabled by renaming them to `myfilename_DISABLED`. Renaming - to disable files is required in some scenarios where Unity doesn't support - removing files from the build via the PluginImporter. - -* `Enable Analytics Reporting` enables/disables usage reporting to plugin - developers to improve the product. - -* `Verbose logging` enables *very* noisy log output that is useful for - debugging while filing a bug report or building a new managed plugin. - -* `Use project settings` saves settings for the plugin in the project rather - than system-wide. - -#### Redistributing a Managed Plugin - -The Version Handler employs a couple of methods for managing version selection, -upgrade and removal of plugins. - -* Each plugin can ship with a manifest file that lists the files it includes. - This makes it possible for Version Handler to calculate the difference in - assets between the most recent release of a plugin and the previous release - installed in a project. If a files are removed the Version Handler will - prompt the user to clean up obsolete files. - -* Plugins can ship using assets with unique names, unique GUIDs and version - number labels. Version numbers can be attached to assets using labels or - added to the filename (e.g `myfile.txt` would be `myfile_version-x.y.z.txt). - This allows the Version Handler to determine which set of files are the same - file at different versions, select the most recent version and prompt the - developer to clean up old versions. - -Unity plugins can be managed by the Version Handler using the following steps: - -1. Add the `gvh` asset label to each asset (file) you want Version Handler to - manage. - -1. Add the `gvh_version-VERSION` label to each asset where `VERSION` is the - version of the plugin you're releasing (e.g 1.2.3). - -1. Add the `gvhp_exportpath-PATH` label to each asset where `PATH` is the - export path of the file when the `.unitypackage` is created. This is used to - track files if they're moved around in a project by developers. - -1. Optional: Add `gvh_targets-editor` label to each editor DLL in your plugin - and disable `editor` as a target platform for the DLL. The Version Handler - will enable the most recent version of this DLL when the plugin is imported. - -1. Optional: If your plugin is included in other Unity plugins, you should add - the version number to each filename and change the GUID of each asset. This - allows multiple versions of your plugin to be imported into a Unity project, - with the Version Handler component activating only the most recent version. - -1. Create a manifest text file named `MY_UNIQUE_PLUGIN_NAME_VERSION.txt` that - lists all the files in your plugin relative to the project root. Then add - the `gvh_manifest` label to the asset to indicate this file is a plugin - manifest. - -1. Optional: Add a `gvhp_manifestname-NAME` label to your manifest file to - provide a human readable name for your package. If this isn't provided the - name of the manifest file will be used as the package name. NAME can match - the pattern `[0-9]+[a-zA-Z -]` where a leading integer will set the priority - of the name where `0` is the highest priority and preferably used as the - display name. The lowest value (i.e highest priority name) will be used as - the display name and all other specified names will be aliases of the - display name. Aliases can refer to previous names of the package allowing - renaming across published versions. - -1. Redistribute EDM4U Unity plugin with your plugin. See the - [Plugin Redistribution](#plugin-redistribution) section for details. - -If you follow these steps: - -* When users import a newer version of your plugin, files referenced by the - older version's manifest are cleaned up. - -* The latest version of the plugin will be selected when users import multiple - packages that include your plugin, assuming the steps in - [Plugin Redistribution](#plugin-redistribution) are followed. - -## Background - -Many Unity plugins have dependencies upon Android specific libraries, iOS -CocoaPods, and sometimes have transitive dependencies upon other Unity plugins. -This causes the following problems: - -* Integrating platform specific (e.g Android and iOS) libraries within a Unity - project can be complex and a burden on a Unity plugin maintainer. -* The process of resolving conflicting dependencies on platform specific - libraries is pushed to the developer attempting to use a Unity plugin. The - developer trying to use your plugin is very likely to give up when faced - with Android or iOS specific build errors. -* The process of resolving conflicting Unity plugins (due to shared Unity - plugin components) is pushed to the developer attempting to use your Unity - plugin. In an effort to resolve conflicts, the developer will very likely - attempt to resolve problems by deleting random files in your plugin, report - bugs when that doesn't work and finally give up. - -EDM4U provides solutions for each of these problems. - -### Android Dependency Management - -The *Android Resolver* component of this plugin will download and integrate -Android library dependencies and handle any conflicts between plugins that share -the same dependencies. - -Without the Android Resolver, typically Unity plugins bundle their AAR and JAR -dependencies, e.g. a Unity plugin `SomePlugin` that requires the Google Play -Games Android library would redistribute the library and its transitive -dependencies in the folder `SomePlugin/Android/`. When a user imports -`SomeOtherPlugin` that includes the same libraries (potentially at different -versions) in `SomeOtherPlugin/Android/`, the developer using `SomePlugin` and -`SomeOtherPlugin` will see an error when building for Android that can be hard -to interpret. - -Using the Android Resolver to manage Android library dependencies: - -* Solves Android library conflicts between plugins. -* Handles all of the various processing steps required to use Android - libraries (AARs, JARs) in Unity 4.x and above projects. Almost all versions - of Unity have - at best - partial support for AARs. -* (Experimental) Supports minification of included Java components without - exporting a project. - -### iOS Dependency Management - -The *iOS Resolver* component of this plugin integrates with -[CocoaPods](https://cocoapods.org/) to download and integrate iOS libraries and -frameworks into the Xcode project Unity generates when building for iOS. Using -CocoaPods allows multiple plugins to utilize shared components without forcing -developers to fix either duplicate or incompatible versions of libraries -included through multiple Unity plugins in their project. - -### Package Manager Registry Setup - -The [Package Manager](https://docs.unity3d.com/Manual/Packages.html) (PM) makes -use of [NPM](https://www.npmjs.com/) registry servers for package hosting and -provides ways to discover, install, upgrade and uninstall packages. This makes -it easier for developers to manage plugins within their projects. - -However, installing additional package registries requires a few manual steps -that can potentially be error prone. The *Package Manager Resolver* component of -this plugin integrates with [PM](https://docs.unity3d.com/Manual/Packages.html) -to provide a way to auto-install PM package registries when a `.unitypackage` is -installed which allows plugin maintainers to ship a `.unitypackage` that can -provide access to their own PM registry server to make it easier for developers -to manage their plugins. - -### Unity Plugin Version Management - -Finally, the *Version Handler* component of this plugin simplifies the process -of managing transitive dependencies of Unity plugins and each plugin's upgrade -process. - -For example, without the Version Handler plugin, if: - -* Unity plugin `SomePlugin` includes `EDM4U` plugin at version 1.1. -* Unity plugin `SomeOtherPlugin` includes `EDM4U` plugin at version 1.2. - -The version of `EDM4U` included in the developer's project depends upon the -order the developer imports `SomePlugin` or `SomeOtherPlugin`. - -This results in: - -* `EDM4U` at version 1.2, if `SomePlugin` is imported then `SomeOtherPlugin` - is imported. -* `EDM4U` at version 1.1, if `SomeOtherPlugin` is imported then `SomePlugin` - is imported. - -The Version Handler solves the problem of managing transitive dependencies by: - -* Specifying a set of packaging requirements that enable a plugin at different - versions to be imported into a Unity project. -* Providing activation logic that selects the latest version of a plugin - within a project. - -When using the Version Handler to manage `EDM4U` included in `SomePlugin` and -`SomeOtherPlugin`, from the prior example, version 1.2 will always be the -version activated in a developer's Unity project. - -Plugin creators are encouraged to adopt this library to ease integration for -their customers. For more information about integrating EDM4U into your own -plugin, see the [Plugin Redistribution](#plugin-redistribution) section of this -document. - -## Analytics - -The External Dependency Manager for Unity plugin by default logs usage to Google -Analytics. The purpose of the logging is to quantitatively measure the usage of -functionality, to gather reports on integration failures and to inform future -improvements to the developer experience of the External Dependency Manager -plugin. Note that the analytics collected are limited to the scope of the EDM4U -plugin’s usage. - -For details of what is logged, please refer to the usage of -`EditorMeasurement.Report()` in the source code. - -## Plugin Redistribution - -If you are a package maintainer and your package depends on EDM4U, it is highly -recommended to use the UPM format and add EDM4U as a dependency. If you must -include it in your `.unitypackage`, redistributing `EDM4U` inside your own -plugin might ease the integration process for your users. - -If you wish to redistribute `EDM4U` inside your plugin, you **must** follow -these steps when importing the `external-dependency-manager-*.unitypackage`, and -when exporting your own plugin package: - -1. Import the `external-dependency-manager-*.unitypackage` into your plugin - project by - [running Unity from the command line](https://docs.unity3d.com/Manual/CommandLineArguments.html), - ensuring that you add the `-gvh_disable` option. -1. Export your plugin by - [running Unity from the command line](https://docs.unity3d.com/Manual/CommandLineArguments.html), - ensuring that you: - - Include the contents of the `Assets/PlayServicesResolver` and - `Assets/ExternalDependencyManager` directory. - - Add the `-gvh_disable` option. - -You **must** specify the `-gvh_disable` option in order for the Version Handler -to work correctly! - -For example, the following command will import the -`external-dependency-manager-1.2.46.0.unitypackage` into the project -`MyPluginProject` and export the entire Assets folder to -`MyPlugin.unitypackage`: - -``` -Unity -gvh_disable \ - -batchmode \ - -importPackage external-dependency-manager-1.2.46.0.unitypackage \ - -projectPath MyPluginProject \ - -exportPackage Assets MyPlugin.unitypackage \ - -quit -``` - -### Background - -The *Version Handler* component relies upon deferring the load of editor DLLs so -that it can run first and determine the latest version of a plugin component to -activate. The build of `EDM4U` plugin has Unity asset metadata that is -configured so that the editor components are not initially enabled when it's -imported into a Unity project. To maintain this configuration when importing the -`external-dependency-manager.unitypackage` into a Unity plugin project, you -*must* specify the command line option `-gvh_disable` which will prevent the -Version Handler component from running and changing the Unity asset metadata. - -## Building from Source - -To build this plugin from source you need the following tools installed: * Unity -2021 and below (with iOS and Android modules installed) * Java 11 - -You can build the plugin by running the following from your shell (Linux / OSX): - -``` -./gradlew build - -``` - -or Windows: - -``` -./gradlew.bat build -``` - -If Java 11 is not your default Java command, add -`-Dorg.gradle.java.home=` to the command above. - -## Testing - -You can run the tests by running the following from your shell (Linux / OSX): - -``` -./gradlew test -``` - -or Windows: - -``` -./gradlew.bat test -``` - -The following properties can be set to narrow down the tests to run or change -the test run behavior. - -* `INTERACTIVE_MODE_TESTS_ENABLED` - Default to `1`. Set to `1` to enable - interactive mode tests, which requires GPU on the machine. Otherwise, only - run tests in the batch mode. -* `INCLUDE_TEST_TYPES` - Default to empty string, which means to include every - type of the test. To narrow down the types of test to run, set this - properties with a list of case-insensitive type strings separated by comma. - For instance, `-PINCLUDE_TEST_TYPES="Python,NUnit"` means to include only - Python tests and NUnit tests. See `TestTypeEnum` in `build.gradle` for - available options. -* `EXCLUDE_TEST_TYPES` - Default to empty string, which means to exclude none. - To add types of tests to exclude, set this properties with a list of - case-insensitive type strings separated by comma. For instance, - `-PEXCLUDE_TEST_TYPES="Python,NUnit"` means to exclude Python tests and - NUnit tests. See `TestTypeEnum` in `build.gradle` for available options. -* `INCLUDE_TEST_MODULES` - Default to empty string, which means to include the - tests for every modules. To narrow down modules to test, set this properties - with a list of case-insensitive module strings separated by comma. For - instance, `-PINCLUDE_TEST_MODULES="Tool,AndroidResolver"` means to run tests - for tools and Android Resolver only. See `TestModuleEnum` in `build.gradle` - for available options. -* `EXCLUDE_TEST_MODULES` - Default to empty string, which means to exclude - none. To add modules to exclude, set this properties with a list of - case-insensitive module strings separated by comma. For instance, - `-PEXCLUDE_TEST_MODULES="Tool,AndroidResolver"` means to run tests for any - modules other than tools and Android Resolver. See `TestModuleEnum` in - `build.gradle` for available options. -* `EXCLUDE_TESTS` - Default to empty string, which means to exclude none. To - add tests to exclude, set this properties with a list of case-insensitive - test names separated by comma. For instance, - `-PEXCLUDE_TESTS="testGenGuids,testDownloadArtifacts"` means to run tests - except the tests with name of `testGenGuids` and `testDownloadArtifacts`. -* `CONTINUE_ON_FAIL_FOR_TESTS_ENABLED` - Default to `1`. Set to `1` to - continue running the next test when the current one fails. Otherwise, the - build script stops whenever any test fails. - -For instance, by running the following command, it only runs the Unity -integration tests that does not requires GPU, but exclude tests for Android -Resolver module and iOS Resolver module. - -``` -./gradlew test \ - -PINTERACTIVE_MODE_TESTS_ENABLED=0 \ - -PINCLUDE_TEST_TYPES="Integration" \ - -PEXCLUDE_TEST_MODULES="AndroidResolver,iOSResolver" -``` - -## Releasing - -Each time a new build of this plugin is checked into the source tree you need to -do the following: - -* Bump the plugin version variable `pluginVersion` in `build.gradle` -* Update `CHANGELOG.md` with the new version number and changes included in - the release. -* Build the release using `./gradlew release` which performs the following: - * Updates `external-dependency-manager-*.unitypackage` - * Copies the unpacked plugin to the `exploded` directory. - * Updates template metadata files in the `plugin` directory. The GUIDs of - all asset metadata is modified due to the version number change. Each - file within the plugin is versioned to allow multiple versions of the - plugin to be imported into a Unity project which allows the most recent - version to be activated by the Version Handler component. -* Create release commit using `./gradlew gitCreateReleaseCommit` which - performs `git commit -a -m "description from CHANGELOG.md"` -* Once the release commit is merge, tag the release using `./gradlew - gitTagRelease` which performs the following: - * `git tag -a pluginVersion -m "version RELEASE"` to tag the release. -* Update tags on remote branch using `git push --tag REMOTE HEAD:master` diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/README.md.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/README.md.meta deleted file mode 100644 index 19c60af..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/README.md.meta +++ /dev/null @@ -1,12 +0,0 @@ -fileFormatVersion: 2 -guid: 4c0a59d421e44efba18a8687f298402e -labels: -- gvh -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/README.md -timeCreated: 1584567712 -licenseType: Pro -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.178_manifest.txt b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.178_manifest.txt deleted file mode 100755 index d6ad8cf..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.178_manifest.txt +++ /dev/null @@ -1,13 +0,0 @@ -Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.dll -Assets/ExternalDependencyManager/Editor/1.2.178/Google.IOSResolver.pdb -Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.dll -Assets/ExternalDependencyManager/Editor/1.2.178/Google.JarResolver.pdb -Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.dll -Assets/ExternalDependencyManager/Editor/1.2.178/Google.PackageManagerResolver.pdb -Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.dll -Assets/ExternalDependencyManager/Editor/1.2.178/Google.VersionHandlerImpl.pdb -Assets/ExternalDependencyManager/Editor/CHANGELOG.md -Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll -Assets/ExternalDependencyManager/Editor/Google.VersionHandler.pdb -Assets/ExternalDependencyManager/Editor/LICENSE -Assets/ExternalDependencyManager/Editor/README.md diff --git a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.178_manifest.txt.meta b/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.178_manifest.txt.meta deleted file mode 100644 index ecdc2fa..0000000 --- a/BranchUnityTestBed/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.178_manifest.txt.meta +++ /dev/null @@ -1,15 +0,0 @@ -fileFormatVersion: 2 -guid: 6ce04add8d6a442a9585f357d05a868e -labels: -- gvh -- gvh_manifest -- gvh_version-1.2.178 -- gvhp_exportpath-ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.178_manifest.txt -- gvhp_manifestname-0External Dependency Manager -- gvhp_manifestname-play-services-resolver -timeCreated: 1474401009 -licenseType: Pro -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android.meta b/BranchUnityTestBed/Assets/Plugins/Android.meta deleted file mode 100644 index 375f6aa..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 78d1a858c0e864e139fb2aea26497c12 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-common-2.0.0.jar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-common-2.0.0.jar deleted file mode 100644 index 98ec886..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-common-2.0.0.jar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-common-2.0.0.jar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-common-2.0.0.jar.meta deleted file mode 100644 index 5629435..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-common-2.0.0.jar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 5edccc0f976dd42da81a880e90f05ceb -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-runtime-2.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-runtime-2.0.0.aar deleted file mode 100644 index f876595..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-runtime-2.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-runtime-2.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-runtime-2.0.0.aar.meta deleted file mode 100644 index 5f47269..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.arch.core.core-runtime-2.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: af4bb94dd6d36424eb30b555159379db -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.asynclayoutinflater.asynclayoutinflater-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.asynclayoutinflater.asynclayoutinflater-1.0.0.aar deleted file mode 100644 index 337f4c4..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.asynclayoutinflater.asynclayoutinflater-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.asynclayoutinflater.asynclayoutinflater-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.asynclayoutinflater.asynclayoutinflater-1.0.0.aar.meta deleted file mode 100644 index 46f72a8..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.asynclayoutinflater.asynclayoutinflater-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: bca59873521f441388b9839a9e4a24a8 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.collection.collection-1.0.0.jar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.collection.collection-1.0.0.jar deleted file mode 100644 index 78ac06c..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.collection.collection-1.0.0.jar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.collection.collection-1.0.0.jar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.collection.collection-1.0.0.jar.meta deleted file mode 100644 index 0db0857..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.collection.collection-1.0.0.jar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 21efb46b89f864a2e8bef0c2cb211219 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.coordinatorlayout.coordinatorlayout-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.coordinatorlayout.coordinatorlayout-1.0.0.aar deleted file mode 100644 index de447ec..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.coordinatorlayout.coordinatorlayout-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.coordinatorlayout.coordinatorlayout-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.coordinatorlayout.coordinatorlayout-1.0.0.aar.meta deleted file mode 100644 index b95a398..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.coordinatorlayout.coordinatorlayout-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 6ae14a2731f3c4a53b55670139f230be -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.cursoradapter.cursoradapter-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.cursoradapter.cursoradapter-1.0.0.aar deleted file mode 100644 index cd1494a..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.cursoradapter.cursoradapter-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.cursoradapter.cursoradapter-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.cursoradapter.cursoradapter-1.0.0.aar.meta deleted file mode 100644 index c088683..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.cursoradapter.cursoradapter-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 94f6fd05e90984d74bb01ac4a0d1e581 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.customview.customview-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.customview.customview-1.0.0.aar deleted file mode 100644 index 73e70ac..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.customview.customview-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.customview.customview-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.customview.customview-1.0.0.aar.meta deleted file mode 100644 index 029a8d2..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.customview.customview-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 72a1ac30fef4e45d1943fab0bbbcd219 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.documentfile.documentfile-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.documentfile.documentfile-1.0.0.aar deleted file mode 100644 index 79fd550..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.documentfile.documentfile-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.documentfile.documentfile-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.documentfile.documentfile-1.0.0.aar.meta deleted file mode 100644 index fe6c03f..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.documentfile.documentfile-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: b5981e2e15fae47d3b5605cd128f5499 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.drawerlayout.drawerlayout-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.drawerlayout.drawerlayout-1.0.0.aar deleted file mode 100644 index a9968c7..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.drawerlayout.drawerlayout-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.drawerlayout.drawerlayout-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.drawerlayout.drawerlayout-1.0.0.aar.meta deleted file mode 100644 index 3039464..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.drawerlayout.drawerlayout-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 1a35af8de77e34cf999c9a381d15b891 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.fragment.fragment-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.fragment.fragment-1.0.0.aar deleted file mode 100644 index 7a5c360..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.fragment.fragment-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.fragment.fragment-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.fragment.fragment-1.0.0.aar.meta deleted file mode 100644 index dfaccdc..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.fragment.fragment-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: f735b120da86f490cb4f03b3b7a0e44e -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.interpolator.interpolator-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.interpolator.interpolator-1.0.0.aar deleted file mode 100644 index bccf86f..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.interpolator.interpolator-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.interpolator.interpolator-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.interpolator.interpolator-1.0.0.aar.meta deleted file mode 100644 index ad86405..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.interpolator.interpolator-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 5dbcc6bdae4a54a498a76a83ab9ae02e -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-ui-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-ui-1.0.0.aar deleted file mode 100644 index 01275eb..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-ui-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-ui-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-ui-1.0.0.aar.meta deleted file mode 100644 index 01a10c0..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-ui-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 16e7c2fa564fc4b5d82af7396a2ccc1d -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-utils-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-utils-1.0.0.aar deleted file mode 100644 index 2980f60..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-utils-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-utils-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-utils-1.0.0.aar.meta deleted file mode 100644 index bab9789..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.legacy.legacy-support-core-utils-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 980481ca598884394a32d459e8cc8976 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-common-2.0.0.jar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-common-2.0.0.jar deleted file mode 100644 index 6c3f095..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-common-2.0.0.jar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-common-2.0.0.jar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-common-2.0.0.jar.meta deleted file mode 100644 index 1ba694f..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-common-2.0.0.jar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: dc2df49e1fdab4fa4b09c78b2d4c0625 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-2.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-2.0.0.aar deleted file mode 100644 index 27b091c..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-2.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-2.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-2.0.0.aar.meta deleted file mode 100644 index c0da438..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-2.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 31ba219e30db8424790cc51ce817e70f -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-core-2.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-core-2.0.0.aar deleted file mode 100644 index 5583b9f..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-core-2.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-core-2.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-core-2.0.0.aar.meta deleted file mode 100644 index d844a78..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-core-2.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 3dba3c6b736c3417f8f544445ce1c8be -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-runtime-2.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-runtime-2.0.0.aar deleted file mode 100644 index 0809d72..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-runtime-2.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-runtime-2.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-runtime-2.0.0.aar.meta deleted file mode 100644 index 0b1a016..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-runtime-2.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: a12740093084a40d9a120eae57318828 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-viewmodel-2.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-viewmodel-2.0.0.aar deleted file mode 100644 index b142a70..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-viewmodel-2.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-viewmodel-2.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-viewmodel-2.0.0.aar.meta deleted file mode 100644 index 5c08ee4..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.lifecycle.lifecycle-viewmodel-2.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: f1bb6a518468f4824acf0e92ee783ca3 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.loader.loader-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.loader.loader-1.0.0.aar deleted file mode 100644 index 32c5774..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.loader.loader-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.loader.loader-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.loader.loader-1.0.0.aar.meta deleted file mode 100644 index 82cf6bb..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.loader.loader-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 6a38f9c255f5741a28833cb415813c49 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.localbroadcastmanager.localbroadcastmanager-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.localbroadcastmanager.localbroadcastmanager-1.0.0.aar deleted file mode 100644 index e9074ee..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.localbroadcastmanager.localbroadcastmanager-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.localbroadcastmanager.localbroadcastmanager-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.localbroadcastmanager.localbroadcastmanager-1.0.0.aar.meta deleted file mode 100644 index 8cbd811..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.localbroadcastmanager.localbroadcastmanager-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: af0f7683e57934898a8d5befb8e86d72 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.print.print-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.print.print-1.0.0.aar deleted file mode 100644 index 7bb51fd..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.print.print-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.print.print-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.print.print-1.0.0.aar.meta deleted file mode 100644 index 0d04c23..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.print.print-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: c2c1ea1b58c1f457a9c32a67bdb5953e -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.slidingpanelayout.slidingpanelayout-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.slidingpanelayout.slidingpanelayout-1.0.0.aar deleted file mode 100644 index ebee0ee..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.slidingpanelayout.slidingpanelayout-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.slidingpanelayout.slidingpanelayout-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.slidingpanelayout.slidingpanelayout-1.0.0.aar.meta deleted file mode 100644 index 8b995a8..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.slidingpanelayout.slidingpanelayout-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: 0ee98570a6caa47199453dc6984f7536 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.swiperefreshlayout.swiperefreshlayout-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.swiperefreshlayout.swiperefreshlayout-1.0.0.aar deleted file mode 100644 index 71d4748..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.swiperefreshlayout.swiperefreshlayout-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.swiperefreshlayout.swiperefreshlayout-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.swiperefreshlayout.swiperefreshlayout-1.0.0.aar.meta deleted file mode 100644 index b8e7c35..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.swiperefreshlayout.swiperefreshlayout-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: ae3977c5f34b74da4a16c7873a726dc3 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.viewpager.viewpager-1.0.0.aar b/BranchUnityTestBed/Assets/Plugins/Android/androidx.viewpager.viewpager-1.0.0.aar deleted file mode 100644 index a766729..0000000 Binary files a/BranchUnityTestBed/Assets/Plugins/Android/androidx.viewpager.viewpager-1.0.0.aar and /dev/null differ diff --git a/BranchUnityTestBed/Assets/Plugins/Android/androidx.viewpager.viewpager-1.0.0.aar.meta b/BranchUnityTestBed/Assets/Plugins/Android/androidx.viewpager.viewpager-1.0.0.aar.meta deleted file mode 100644 index 33bbabe..0000000 --- a/BranchUnityTestBed/Assets/Plugins/Android/androidx.viewpager.viewpager-1.0.0.aar.meta +++ /dev/null @@ -1,34 +0,0 @@ -fileFormatVersion: 2 -guid: e2f1c92d30a8449128219d2c24a44c18 -labels: -- gpsr -PluginImporter: - externalObjects: {} - serializedVersion: 2 - iconMap: {} - executionOrder: {} - defineConstraints: [] - isPreloaded: 0 - isOverridable: 0 - isExplicitlyReferenced: 0 - validateReferences: 1 - platformData: - - first: - Android: Android - second: - enabled: 1 - settings: {} - - first: - Any: - second: - enabled: 0 - settings: {} - - first: - Editor: Editor - second: - enabled: 0 - settings: - DefaultValueInitialized: true - userData: - assetBundleName: - assetBundleVariant: diff --git a/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityApp.java b/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityApp.java index 344d994..0950da2 100644 --- a/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityApp.java +++ b/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityApp.java @@ -21,7 +21,7 @@ public void onCreate() { //Branch.enableLogging(); // Set plugin version - Branch.registerPlugin("Unity", "1.0.0"); + Branch.registerPlugin("Unity", "2.0.0"); Branch.disableInstantDeepLinking(true); Branch.getAutoInstance(this.getApplicationContext()); } diff --git a/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityWrapper.java b/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityWrapper.java index 548652f..a9c79aa 100644 --- a/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityWrapper.java +++ b/BranchUnityTestBed/Assets/Plugins/Branch/Android/BranchUnityWrapper.java @@ -258,6 +258,10 @@ public static void setNetworkTimeout(int timeout) { Branch.getInstance().setNetworkTimeout(timeout); } + public static void setDMAParamsForEEA(boolean eeaRegion, boolean adPersonalizationConsent, boolean adUserDataUsageConsent) { + Branch.getInstance().setDMAParamsForEEA(eeaRegion, adPersonalizationConsent, adUserDataUsageConsent); + } + public static void registerView(String universalObjectDict) { try { BranchUniversalObject universalObject = _branchUniversalObjectFromJSONObject(new JSONObject(universalObjectDict)); diff --git a/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.h b/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.h index e83133a..0828828 100644 --- a/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.h +++ b/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.h @@ -2,7 +2,7 @@ #pragma mark - Private notification class interface -typedef void (^callbackWithShareCompletion) (NSString *activityType, BOOL completed); +typedef void (^callbackWithShareCompletion) (NSString *activityType, BOOL completed, NSError *error); @interface BranchUnityWrapper : NSObject + (BranchUnityWrapper *)sharedInstance; @@ -44,6 +44,7 @@ extern "C" { void _addFacebookPartnerParameter(char *name, char *value); void _clearPartnerParameters(); void _setTrackingDisabled(BOOL value); + void _setDMAParamsForEEA(BOOL eeaRegion, BOOL adPersonalizationConsent, BOOL adUserDataUsageConsent); #pragma mark - Send event methods diff --git a/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.mm b/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.mm index 665b82d..4cefec6 100644 --- a/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.mm +++ b/BranchUnityTestBed/Assets/Plugins/Branch/iOS/BranchiOSWrapper.mm @@ -340,7 +340,7 @@ static callbackWithBranchUniversalObject callbackWithBranchUniversalObjectForCal static callbackWithShareCompletion callbackWithShareCompletionForCallbackId(char *callbackId) { NSString *callbackString = CreateNSString(callbackId); - return ^(NSString *activityType, BOOL completed) { + return ^(NSString *activityType, BOOL completed, NSError *error) { id errorDictItem = [NSNull null]; NSDictionary *params; @@ -417,7 +417,7 @@ void _logout() { # pragma mark - Configuation methods void _enableLogging() { - [[Branch getInstance] enableLogging]; + [Branch enableLogging]; } void _setRetryInterval(int retryInterval) { @@ -464,6 +464,10 @@ void _setTrackingDisabled(BOOL value) { [Branch setTrackingDisabled:value]; } +void _setDMAParamsForEEA(BOOL eeaRegion, BOOL adPersonalizationConsent, BOOL adUserDataUsageConsent) { + [Branch setDMAParamsForEEA:eeaRegion AdPersonalizationConsent:adPersonalizationConsent AdUserDataUsageConsent:adUserDataUsageConsent]; +} + #pragma mark - Send event methods void _sendEvent(char *eventJson) { @@ -627,5 +631,5 @@ void _shareLinkWithLinkProperties(char *universalObjectJson, char *linkPropertie BranchUniversalObject *obj = branchuniversalObjectFormDict(universalObjectDict); BranchLinkProperties *prop = branchLinkPropertiesFormDict(linkPropertiesDict); - [obj showShareSheetWithLinkProperties:prop andShareText:CreateNSString(message) fromViewController:nil completion:callbackWithShareCompletionForCallbackId(callbackId)]; + [obj showShareSheetWithLinkProperties:prop andShareText:CreateNSString(message) fromViewController:nil completionWithError:callbackWithShareCompletionForCallbackId(callbackId)]; } diff --git a/BranchUnityTestBed/Packages/manifest.json b/BranchUnityTestBed/Packages/manifest.json index 1a2ac51..fbc8231 100644 --- a/BranchUnityTestBed/Packages/manifest.json +++ b/BranchUnityTestBed/Packages/manifest.json @@ -44,6 +44,16 @@ "com.unity.modules.video": "1.0.0", "com.unity.modules.vr": "1.0.0", "com.unity.modules.wind": "1.0.0", - "com.unity.modules.xr": "1.0.0" - } -} + "com.unity.modules.xr": "1.0.0", + "com.google.external-dependency-manager": "1.2.179" + }, + "scopedRegistries": [ + { + "name": "package.openupm.com", + "url": "https://package.openupm.com", + "scopes": [ + "com.google.external-dependency-manager" + ] + } + ] +} \ No newline at end of file diff --git a/BranchUnityTestBed/Packages/packages-lock.json b/BranchUnityTestBed/Packages/packages-lock.json index 0e32613..55d6cf3 100644 --- a/BranchUnityTestBed/Packages/packages-lock.json +++ b/BranchUnityTestBed/Packages/packages-lock.json @@ -1,5 +1,12 @@ { "dependencies": { + "com.google.external-dependency-manager": { + "version": "1.2.179", + "depth": 0, + "source": "registry", + "dependencies": {}, + "url": "https://package.openupm.com" + }, "com.unity.2d.sprite": { "version": "1.0.0", "depth": 0, diff --git a/BranchUnityTestBed/ProjectSettings/AndroidResolverDependencies.xml b/BranchUnityTestBed/ProjectSettings/AndroidResolverDependencies.xml index 33439e4..91fb85c 100644 --- a/BranchUnityTestBed/ProjectSettings/AndroidResolverDependencies.xml +++ b/BranchUnityTestBed/ProjectSettings/AndroidResolverDependencies.xml @@ -1,61 +1,22 @@ com.google.android.gms:play-services-ads-identifier:18+ - io.branch.sdk.android:library:5.8.0 + io.branch.sdk.android:library:5.12.0 - - Assets/Plugins/Android/androidx.annotation.annotation-1.4.0.jar - Assets/Plugins/Android/androidx.arch.core.core-common-2.0.0.jar - Assets/Plugins/Android/androidx.arch.core.core-runtime-2.0.0.aar - Assets/Plugins/Android/androidx.asynclayoutinflater.asynclayoutinflater-1.0.0.aar - Assets/Plugins/Android/androidx.collection.collection-1.0.0.jar - Assets/Plugins/Android/androidx.coordinatorlayout.coordinatorlayout-1.0.0.aar - Assets/Plugins/Android/androidx.core.core-1.2.0.aar - Assets/Plugins/Android/androidx.cursoradapter.cursoradapter-1.0.0.aar - Assets/Plugins/Android/androidx.customview.customview-1.0.0.aar - Assets/Plugins/Android/androidx.documentfile.documentfile-1.0.0.aar - Assets/Plugins/Android/androidx.drawerlayout.drawerlayout-1.0.0.aar - Assets/Plugins/Android/androidx.fragment.fragment-1.0.0.aar - Assets/Plugins/Android/androidx.interpolator.interpolator-1.0.0.aar - Assets/Plugins/Android/androidx.legacy.legacy-support-core-ui-1.0.0.aar - Assets/Plugins/Android/androidx.legacy.legacy-support-core-utils-1.0.0.aar - Assets/Plugins/Android/androidx.lifecycle.lifecycle-common-2.0.0.jar - Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-2.0.0.aar - Assets/Plugins/Android/androidx.lifecycle.lifecycle-livedata-core-2.0.0.aar - Assets/Plugins/Android/androidx.lifecycle.lifecycle-runtime-2.0.0.aar - Assets/Plugins/Android/androidx.lifecycle.lifecycle-viewmodel-2.0.0.aar - Assets/Plugins/Android/androidx.loader.loader-1.0.0.aar - Assets/Plugins/Android/androidx.localbroadcastmanager.localbroadcastmanager-1.0.0.aar - Assets/Plugins/Android/androidx.print.print-1.0.0.aar - Assets/Plugins/Android/androidx.slidingpanelayout.slidingpanelayout-1.0.0.aar - Assets/Plugins/Android/androidx.swiperefreshlayout.swiperefreshlayout-1.0.0.aar - Assets/Plugins/Android/androidx.versionedparcelable.versionedparcelable-1.1.0.aar - Assets/Plugins/Android/androidx.viewpager.viewpager-1.0.0.aar - Assets/Plugins/Android/com.android.installreferrer.installreferrer-2.2.aar - Assets/Plugins/Android/com.google.android.gms.play-services-ads-identifier-18.0.1.aar - Assets/Plugins/Android/com.google.android.gms.play-services-basement-18.0.0.aar - Assets/Plugins/Android/io.branch.sdk.android.library-5.8.0.aar - Assets/Plugins/Android/org.jetbrains.annotations-13.0.jar - Assets/Plugins/Android/org.jetbrains.kotlin.kotlin-stdlib-1.6.21.jar - Assets/Plugins/Android/org.jetbrains.kotlin.kotlin-stdlib-common-1.6.21.jar - Assets/Plugins/Android/org.jetbrains.kotlin.kotlin-stdlib-jdk7-1.6.21.jar - Assets/Plugins/Android/org.jetbrains.kotlin.kotlin-stdlib-jdk8-1.6.21.jar - Assets/Plugins/Android/org.jetbrains.kotlinx.kotlinx-coroutines-android-1.6.4.jar - Assets/Plugins/Android/org.jetbrains.kotlinx.kotlinx-coroutines-core-jvm-1.6.4.jar - + - - + + - - + + - + diff --git a/BranchUnityTestBed/ProjectSettings/PackageManagerSettings.asset b/BranchUnityTestBed/ProjectSettings/PackageManagerSettings.asset index be4a797..83860ed 100644 --- a/BranchUnityTestBed/ProjectSettings/PackageManagerSettings.asset +++ b/BranchUnityTestBed/ProjectSettings/PackageManagerSettings.asset @@ -12,10 +12,11 @@ MonoBehaviour: m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0} m_Name: m_EditorClassIdentifier: - m_EnablePreviewPackages: 0 + m_EnablePreReleasePackages: 0 m_EnablePackageDependencies: 0 m_AdvancedSettingsExpanded: 1 m_ScopedRegistriesSettingsExpanded: 1 + m_SeeAllPackageVersions: 0 oneTimeWarningShown: 0 m_Registries: - m_Id: main @@ -24,20 +25,20 @@ MonoBehaviour: m_Scopes: [] m_IsDefault: 1 m_Capabilities: 7 - m_UserSelectedRegistryName: + m_ConfigSource: 0 + - m_Id: scoped:project:package.openupm.com + m_Name: package.openupm.com + m_Url: https://package.openupm.com + m_Scopes: + - com.google.external-dependency-manager + m_IsDefault: 0 + m_Capabilities: 0 + m_ConfigSource: 4 + m_UserSelectedRegistryName: package.openupm.com m_UserAddingNewScopedRegistry: 0 m_RegistryInfoDraft: - m_ErrorMessage: - m_Original: - m_Id: - m_Name: - m_Url: - m_Scopes: [] - m_IsDefault: 0 - m_Capabilities: 0 m_Modified: 0 - m_Name: - m_Url: - m_Scopes: - - - m_SelectedScopeIndex: 0 + m_ErrorMessage: + m_UserModificationsInstanceId: -828 + m_OriginalInstanceId: -830 + m_LoadAssets: 0 diff --git a/BranchUnityTestBed/ProjectSettings/ProjectSettings.asset b/BranchUnityTestBed/ProjectSettings/ProjectSettings.asset index f782a9c..83e7edc 100644 Binary files a/BranchUnityTestBed/ProjectSettings/ProjectSettings.asset and b/BranchUnityTestBed/ProjectSettings/ProjectSettings.asset differ diff --git a/BranchUnityTestBed/ProjectSettings/UnityConnectSettings.asset b/BranchUnityTestBed/ProjectSettings/UnityConnectSettings.asset index b24708f..14e0104 100644 Binary files a/BranchUnityTestBed/ProjectSettings/UnityConnectSettings.asset and b/BranchUnityTestBed/ProjectSettings/UnityConnectSettings.asset differ diff --git a/BranchUnityWrapper.unitypackage b/BranchUnityWrapper.unitypackage deleted file mode 100644 index 8b720f1..0000000 Binary files a/BranchUnityWrapper.unitypackage and /dev/null differ diff --git a/Changelog.md b/Changelog.md index 64ad760..9d2be7d 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,5 +1,10 @@ Branch Unity SDK change log +- 2.0.0 + * External Dependency Manager for Unity (EDM4U) is no longer bundled with the Branch SDK. Clients will need to install it separately. + * Update iOS SDK to 3.4.3 + * Update Android SDK to 5.12.0 + - 1.0.0 * Update iOS SDK to 2.1.0 * Update Android SDK to 5.3.0