public static void GetPackageVersionAsync(string packageName, Action<string> callback)
{
ListRequest Request = Client.List(); // List packages installed for the project
EditorApplication.CallbackFunction progress = null;
progress = delegate()
{
if (!Request.IsCompleted)
{
return;
}
EditorApplication.update -= progress;
if (Request.Status == StatusCode.Success)
{
foreach (var package in Request.Result)
{
if (package.name == packageName)
{
callback(package.version);
return;
}
}
}
else if (Request.Status >= StatusCode.Failure)
{
Debug.Log(Request.Error.message);
}
};
EditorApplication.update += progress;
}
public static string GetPackageVersion(string packageName)
{
ListRequest Request = Client.List(); // List packages installed for the project
while (!Request.IsCompleted)
{
Thread.Sleep(100);
}
if (Request.Status == StatusCode.Success)
{
foreach (var package in Request.Result)
{
if (package.name == packageName)
{
return package.version;
}
}
}
else if (Request.Status >= StatusCode.Failure)
{
Debug.Log(Request.Error.message);
}
return "";
}