| | |
| | |
|
| | | private void StandaloneCopyAsset()
|
| | | {
|
| | | if (!SDKUtility.builtinAssetCopyFinished)
|
| | | var targetDirectory = ResourcesPath.Instance.ExternalStorePath;
|
| | | if (!Directory.Exists(targetDirectory))
|
| | | {
|
| | | firstLaunch = true;
|
| | | var targetDirectory = ResourcesPath.Instance.ExternalStorePath;
|
| | | if (!Directory.Exists(targetDirectory))
|
| | | Directory.CreateDirectory(targetDirectory);
|
| | | }
|
| | |
|
| | | var fileNames = new List<string>();
|
| | | var files = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, "builtin"), files);
|
| | | foreach (var file in files)
|
| | | {
|
| | | var name = Path.GetFileName(file.FullName);
|
| | | fileNames.Add(StringUtility.Contact("builtin", Path.DirectorySeparatorChar, name));
|
| | | }
|
| | |
|
| | | fileNames.Add("builtin_assetbundle");
|
| | | fileNames.Add("builtin_assetbundle.manifest");
|
| | |
|
| | | var configFiles = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, "config"), configFiles);
|
| | | foreach (var file in configFiles)
|
| | | {
|
| | | var name = Path.GetFileName(file.FullName);
|
| | | fileNames.Add(StringUtility.Contact("config", Path.DirectorySeparatorChar, name));
|
| | | }
|
| | |
|
| | | foreach (var item in fileNames)
|
| | | {
|
| | | var fromPath = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, item);
|
| | | var toPath = StringUtility.Contact(targetDirectory, item);
|
| | |
|
| | | if (File.Exists(toPath))
|
| | | {
|
| | | Directory.CreateDirectory(targetDirectory);
|
| | | continue;
|
| | | }
|
| | |
|
| | | var fileNames = new List<string>();
|
| | | var files = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, "builtin"), files);
|
| | | foreach (var file in files)
|
| | | var destDirectoryName = Path.GetDirectoryName(toPath);
|
| | | if (!Directory.Exists(destDirectoryName))
|
| | | {
|
| | | var name = Path.GetFileName(file.FullName);
|
| | | fileNames.Add(StringUtility.Contact("builtin", Path.DirectorySeparatorChar, name));
|
| | | Directory.CreateDirectory(destDirectoryName);
|
| | | }
|
| | |
|
| | | fileNames.Add("builtin_assetbundle");
|
| | | fileNames.Add("builtin_assetbundle.manifest");
|
| | |
|
| | | var configFiles = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, "config"), configFiles);
|
| | | foreach (var file in configFiles)
|
| | | {
|
| | | var name = Path.GetFileName(file.FullName);
|
| | | fileNames.Add(StringUtility.Contact("config", Path.DirectorySeparatorChar, name));
|
| | | }
|
| | |
|
| | | foreach (var item in fileNames)
|
| | | {
|
| | | var fromPath = StringUtility.Contact(ResourcesPath.Instance.StreamingAssetPath, item);
|
| | | var toPath = StringUtility.Contact(targetDirectory, item);
|
| | |
|
| | | var destDirectoryName = Path.GetDirectoryName(toPath);
|
| | | if (!Directory.Exists(destDirectoryName))
|
| | | {
|
| | | Directory.CreateDirectory(destDirectoryName);
|
| | | }
|
| | |
|
| | | File.Copy(fromPath, toPath, true);
|
| | | }
|
| | |
|
| | | LocalSave.SetString("BuiltInAssetCopyCompleted_IOSorStandalone", VersionConfig.Get().version);
|
| | | File.Copy(fromPath, toPath, true);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | AndroidCopyAsset();
|
| | | break;
|
| | | case RuntimePlatform.IPhonePlayer:
|
| | | IOSCopyAsset();
|
| | | break;
|
| | | case RuntimePlatform.WindowsPlayer:
|
| | | IOSorStandaloneCopyAsset();
|
| | | StandaloneCopyAsset();
|
| | | break;
|
| | | }
|
| | | }
|
| | |
| | | AndroidProcessCopyComplete();
|
| | | break;
|
| | | case RuntimePlatform.IPhonePlayer:
|
| | | case RuntimePlatform.WindowsPlayer:
|
| | | IOSorStandaloneProcessCopyComplete();
|
| | | IOSProcessCopyComplete();
|
| | | break;
|
| | | }
|
| | | }
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | private void IOSorStandaloneCopyAsset()
|
| | | private void IOSCopyAsset()
|
| | | {
|
| | | if (VersionUtility.Instance.versionInfo != null && VersionUtility.Instance.versionInfo.downAsset == 1)
|
| | | {
|
| | |
| | | completedCount = 0;
|
| | | totalCount = copyTasks.Count;
|
| | | }
|
| | |
|
| | | if (totalCount > 0)
|
| | | {
|
| | | done = false;
|
| | | progress = 0f;
|
| | | }
|
| | | else
|
| | | {
|
| | | done = true;
|
| | | }
|
| | | break;
|
| | | case InstalledAsset.NullAsset:
|
| | | done = true;
|
| | | break;
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | done = true;
|
| | | }
|
| | | }
|
| | |
|
| | | private void StandaloneCopyAsset()
|
| | | {
|
| | | if (VersionUtility.Instance.versionInfo != null && VersionUtility.Instance.versionInfo.downAsset == 1)
|
| | | {
|
| | | switch (VersionConfig.Get().assetAccess)
|
| | | {
|
| | | case InstalledAsset.FullAsset:
|
| | | case InstalledAsset.HalfAsset:
|
| | | case InstalledAsset.IngoreDownLoad:
|
| | | copyTasks = new List<FileInfo>();
|
| | | FileExtersion.GetAllDirectoryFileInfos(ResourcesPath.Instance.StreamingAssetPath, copyTasks);
|
| | |
|
| | | for (var i = copyTasks.Count - 1; i >= 0; i--)
|
| | | {
|
| | | var fileInfo = copyTasks[i];
|
| | | var destPath = fileInfo.FullName.Replace(ResourcesPath.Instance.StreamingAssetPath, ResourcesPath.Instance.ExternalStorePath);
|
| | | if (File.Exists(destPath))
|
| | | {
|
| | | copyTasks.RemoveAt(i);
|
| | | }
|
| | | }
|
| | |
|
| | | completedCount = 0;
|
| | | totalCount = copyTasks.Count;
|
| | |
|
| | | if (totalCount > 0)
|
| | | {
|
| | |
| | | {
|
| | | }
|
| | |
|
| | | private void IOSorStandaloneProcessCopyComplete()
|
| | | private void IOSProcessCopyComplete()
|
| | | {
|
| | | LocalSave.SetString("AssetCopyCompleted_IOSorStandalone", VersionConfig.Get().version);
|
| | | }
|