Пример #1
0
    public string PrepareCompressDirectory()
    {
        string zipName    = null;
        string mainVerDir = null;

        if (IsPackageInfoNull())
        {
            return(string.Empty);
        }

        if (string.IsNullOrEmpty(PackageExportConfig.ExportPath))
        {
            return(string.Empty);
        }

        if (string.IsNullOrEmpty(PackageExportConfig.PackageName))
        {
            return(string.Empty);
        }

        if (!IsSubPackageVersionValid())
        {
            return(string.Empty);
        }

        if (m_IsWithManual && string.IsNullOrEmpty(PackageExportConfig.ManualPath))
        {
            return(string.Empty);
        }

        mainVerDir = PackageExportConfig.ExportPath + "Ver" + m_PackageVer.MainVers + "." + m_PackageVer.UpgradeVer + "/";
        zipName    = mainVerDir + Path.GetFileNameWithoutExtension(PackageExportConfig.PackageName) + "_Ver" + m_Assets.PackageInfo.VersionNum;

        if (Directory.Exists(zipName))
        {
            DirectoryInfo info = new DirectoryInfo(zipName);
            UniversalEditorUtility.MakeDictionaryWriteable(info);

            UniversalEditorUtility.DeleteFileByDirectory(info);
        }

        Directory.CreateDirectory(zipName);

        File.Copy(PackageExportConfig.ExportPath + PackageExportConfig.PackageName, zipName + "/" + PackageExportConfig.PackageName, true);

        if (m_IsWithManual)
        {
            UniversalEditorUtility.CopyDirectory(PackageExportConfig.ManualPath, zipName + "/Manual/", true);
        }

        return(zipName);
    }