| | |
| | | get { return LocalSave.GetBool("obfuscatorEnabled", false); }
|
| | | set { LocalSave.SetBool("obfuscatorEnabled", value); }
|
| | | }
|
| | | public static bool includeConfig
|
| | | {
|
| | | get { return LocalSave.GetBool("client_pg_includeConfig", false); }
|
| | | set { LocalSave.SetBool("client_pg_includeConfig", value); }
|
| | | }
|
| | |
|
| | | public static bool includeUI
|
| | | {
|
| | | get { return LocalSave.GetBool("client_pg_includeUI", false); }
|
| | | set { LocalSave.SetBool("client_pg_includeUI", value); }
|
| | | }
|
| | |
|
| | | public static int AssetPrior
|
| | | {
|
| | |
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | var extersion = Path.GetExtension(file.FullName);
|
| | | var fileName = Path.GetFileName(file.FullName);
|
| | | if (!string.IsNullOrEmpty(extersion))
|
| | | {
|
| | | fileName = fileName.Replace(extersion, "");
|
| | | }
|
| | |
|
| | | var fileName = Path.GetFileNameWithoutExtension(file.FullName);
|
| | | var prior = PriorBundleConfig.GetAssetPrior(AssetVersion.AssetCategory.Mob, fileName);
|
| | | if (prior > AssetPrior)
|
| | | {
|
| | |
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | var extersion = Path.GetExtension(file.FullName);
|
| | | var fileName = Path.GetFileName(file.FullName);
|
| | | if (!string.IsNullOrEmpty(extersion))
|
| | | {
|
| | | fileName = fileName.Replace(extersion, "");
|
| | | }
|
| | |
|
| | | var fileName = Path.GetFileNameWithoutExtension(file.FullName);
|
| | | var prior = PriorBundleConfig.GetAssetPrior(AssetVersion.AssetCategory.Scene, fileName);
|
| | | if (prior > AssetPrior)
|
| | | {
|
| | |
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | var extersion = Path.GetExtension(file.FullName);
|
| | | var fileName = Path.GetFileName(file.FullName);
|
| | | if (!string.IsNullOrEmpty(extersion))
|
| | | {
|
| | | fileName = fileName.Replace(extersion, "");
|
| | | }
|
| | |
|
| | | var fileName = Path.GetFileNameWithoutExtension(file.FullName);
|
| | | var prior = PriorBundleConfig.GetAssetPrior(AssetVersion.AssetCategory.Audio, fileName);
|
| | | if (prior > AssetPrior)
|
| | | {
|
| | |
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | var extersion = Path.GetExtension(file.FullName);
|
| | | var fileName = Path.GetFileName(file.FullName);
|
| | | if (!string.IsNullOrEmpty(extersion))
|
| | | {
|
| | | fileName = fileName.Replace(extersion, "");
|
| | | }
|
| | |
|
| | | var fileName = Path.GetFileNameWithoutExtension(file.FullName);
|
| | | var prior = PriorBundleConfig.GetAssetPrior(AssetVersion.AssetCategory.Effect, fileName);
|
| | | if (prior > AssetPrior)
|
| | | {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | //剔除视频资源
|
| | | tempFiles.Clear();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(_assetBundlePath, "/video"), tempFiles);
|
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | var extersion = Path.GetExtension(file.FullName);
|
| | | var fileName = Path.GetFileNameWithoutExtension(file.FullName);
|
| | | var prior = PriorBundleConfig.GetAssetPrior(AssetVersion.AssetCategory.Video, fileName);
|
| | | if (prior > AssetPrior)
|
| | | {
|
| | | excludeFileFullNames.Add(file.FullName);
|
| | | }
|
| | | }
|
| | |
|
| | | //剔除表资源
|
| | | if (!includeConfig)
|
| | | {
|
| | | tempFiles.Clear();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(_assetBundlePath, "/config"), tempFiles);
|
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | excludeFileFullNames.Add(file.FullName);
|
| | | }
|
| | | }
|
| | |
|
| | | //剔除UI资源
|
| | | tempFiles.Clear();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(_assetBundlePath, "/ui/sprite"), tempFiles);
|
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | var fileName = Path.GetFileName(file.FullName);
|
| | | if (fileName == "loadingbg")
|
| | | {
|
| | | excludeFileFullNames.Add(file.FullName);
|
| | | }
|
| | | }
|
| | | if (!includeUI)
|
| | | {
|
| | | tempFiles.Clear();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(_assetBundlePath, "/ui"), tempFiles);
|
| | | foreach (var file in tempFiles)
|
| | | {
|
| | | excludeFileFullNames.Add(file.FullName);
|
| | | }
|
| | |
| | | {
|
| | | var relativePath = FileExtersion.GetFileRelativePath(_assetBundlePath, item.FullName);
|
| | | var to = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, relativePath);
|
| | | if (relativePath.StartsWith("patch"))//不包含meta文件和补丁
|
| | | continue;
|
| | |
|
| | | var directory = Path.GetDirectoryName(to);
|
| | | if (!Directory.Exists(directory))
|
| | | {
|
| | | Directory.CreateDirectory(directory);
|
| | | }
|
| | |
|
| | | var extension = Path.GetExtension(item.FullName);
|
| | | if (extension == ".meta")
|
| | | {
|
| | | continue;
|
| | | }
|
| | |
|
| | | File.Copy(item.FullName, to, true);
|
| | | completeCount++;
|
| | |
| | | {
|
| | | var relativePath = FileExtersion.GetFileRelativePath(_assetBundlePath, item.FullName);
|
| | | var to = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, relativePath);
|
| | | if (relativePath.StartsWith("patch"))//不包含meta文件和补丁
|
| | | continue;
|
| | |
|
| | | var directory = Path.GetDirectoryName(to);
|
| | | if (!Directory.Exists(directory))
|
| | | {
|
| | | Directory.CreateDirectory(directory);
|
| | | }
|
| | |
|
| | | var extension = Path.GetExtension(item.FullName);
|
| | | if (extension == ".meta")
|
| | | {
|
| | | continue;
|
| | | }
|
| | |
|
| | | File.Copy(item.FullName, to, true);
|
| | | completeCount++;
|
| | |
| | | AssetDatabase.SaveAssets();
|
| | | AssetDatabase.Refresh();
|
| | |
|
| | | IFix.Editor.IFixEditor.InjectAllAssemblys();//对injectAssemblys里的程序集进行注入,然后备份
|
| | |
|
| | | if (_development)
|
| | | {
|
| | | var apkName = StringUtility.Contact(_output, "/", versionName, "_", versionConfig.clientPackageFlag, "_v", versionConfig.m_Version, "_", _buildIndex, "_development.apk");
|
| | |
| | | PlayerSettings.iOS.buildNumber = VersionConfig.Get().buildIndex.ToString();
|
| | | PlayerSettings.iOS.appleDeveloperTeamID = VersionConfig.Get().appleDeveloperTeamID;
|
| | |
|
| | | IFix.Editor.IFixEditor.InjectAllAssemblys();//对injectAssemblys里的程序集进行注入,然后备份
|
| | |
|
| | | if (_replace)
|
| | | {
|
| | | XCodeProjectMod.BuildIOSProject_Replace();
|