private static void ResolveBinaryLibs(AN_AndroidBuildRequirements requirements) { if (AN_Settings.Instance.UseUnityJarResolver) { AN_Dependencies.Resolve(requirements.BinaryDependencies); SA_AssetDatabase.DeleteAsset(AN_Settings.ANDROID_MAVEN_FOLDER); } else { AN_Dependencies.Resolve(new List <AN_BinaryDependency>()); List <string> repositorysToAdd = new List <string>(); List <string> repositorysToRemove = new List <string>(); List <string> mavenLibs = SA_AssetDatabase.FindAssetsWithExtentions(AN_Settings.ANDROID_MAVEN_FOLDER); foreach (var lib in mavenLibs) { //we are only interested in folder, we also assume all folders are located inside a root folder if (!SA_AssetDatabase.IsValidFolder(lib)) { continue; } string libName = SA_AssetDatabase.GetFileName(lib); if (!requirements.HasBinaryDependency(libName)) { repositorysToRemove.Add(libName); } } foreach (var dep in requirements.BinaryDependencies) { string libPath = AN_Settings.ANDROID_MAVEN_FOLDER + dep.GetLocalRepositoryName(); if (!SA_AssetDatabase.IsDirectoryExists(libPath)) { string localRepositoryName = dep.GetLocalRepositoryName(); if (!repositorysToAdd.Contains(localRepositoryName)) { repositorysToAdd.Add(localRepositoryName); } } } SA_PluginsEditor.UninstallLibs(AN_Settings.ANDROID_MAVEN_FOLDER, repositorysToRemove); foreach (var lib in repositorysToAdd) { string source = AN_Settings.ANDROID_MAVEN_FOLDER_DISABLED + lib; string destination = AN_Settings.ANDROID_MAVEN_FOLDER + lib; SA_PluginsEditor.InstallLibFolder(source, destination); } } }
//-------------------------------------- // Private Methods //-------------------------------------- private void Enable() { //There is no additional lib dependensies for this API if (string.IsNullOrEmpty(LibFolder)) { return; } string source = ISN_Settings.IOS_NATIVE_XCODE_SOURCE + LibFolder; string destination = LibFolderPath; SA_PluginsEditor.InstallLibFolder(source, destination); }