diff --git a/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderHelper.cs b/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderHelper.cs
index 020c2162..eb11b8f7 100644
--- a/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderHelper.cs
+++ b/Assets/YooAsset/Editor/AssetBundleBuilder/AssetBundleBuilderHelper.cs
@@ -22,7 +22,7 @@ namespace YooAsset.Editor
///
public static string GetStreamingAssetsRoot()
{
- return YooAssetSettingsData.GetYooEditorBuildinRoot();
+ return YooAssetSettingsData.GetYooDefaultBuildinRoot();
}
}
}
\ No newline at end of file
diff --git a/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystem.cs b/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystem.cs
index ae545f4d..b3326a5b 100644
--- a/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystem.cs
+++ b/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystem.cs
@@ -68,6 +68,17 @@ namespace YooAsset
///
public bool DisableCatalogFile { private set; get; } = false;
+ ///
+ /// 自定义参数:拷贝内置清单
+ ///
+ public bool CopyBuildinPackageManifest { private set; get; } = false;
+
+ ///
+ /// 自定义参数:拷贝内置清单的目标目录
+ /// 注意:该参数为空的时候,会获取默认的沙盒目录!
+ ///
+ public string CopyBuildinPackageManifestDestPath { private set; get; }
+
///
/// 自定义参数:解密方法类
///
@@ -147,6 +158,11 @@ namespace YooAsset
{
DisableCatalogFile = (bool)value;
}
+ else if (name == FileSystemParametersDefine.COPY_BUILDIN_PACKAGE_MANIFEST)
+ {
+ CopyBuildinPackageManifest = true;
+ CopyBuildinPackageManifestDestPath = (string)value;
+ }
else if (name == FileSystemParametersDefine.DECRYPTION_SERVICES)
{
DecryptionServices = (IDecryptionServices)value;
@@ -291,7 +307,7 @@ namespace YooAsset
#region 内部方法
protected string GetDefaultBuildinPackageRoot(string packageName)
{
- string rootDirectory = YooAssetSettingsData.GetYooMobileBuildinRoot();
+ string rootDirectory = YooAssetSettingsData.GetYooDefaultBuildinRoot();
return PathUtility.Combine(rootDirectory, packageName);
}
public string GetBuildinFileLoadPath(PackageBundle bundle)
diff --git a/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystemBuild.cs b/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystemBuild.cs
index eb1d6a9b..0568c157 100644
--- a/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystemBuild.cs
+++ b/Assets/YooAsset/Runtime/FileSystem/DefaultBuildinFileSystem/DefaultBuildinFileSystemBuild.cs
@@ -22,7 +22,7 @@ namespace YooAsset
if (saveDirectory.Exists)
saveDirectory.Delete(true);
- string rootPath = YooAssetSettingsData.GetYooEditorBuildinRoot();
+ string rootPath = YooAssetSettingsData.GetYooDefaultBuildinRoot();
DirectoryInfo rootDirectory = new DirectoryInfo(rootPath);
if (rootDirectory.Exists == false)
{
diff --git a/Assets/YooAsset/Runtime/FileSystem/DefaultCacheFileSystem/DefaultCacheFileSystem.cs b/Assets/YooAsset/Runtime/FileSystem/DefaultCacheFileSystem/DefaultCacheFileSystem.cs
index 8374c5d3..bff667ea 100644
--- a/Assets/YooAsset/Runtime/FileSystem/DefaultCacheFileSystem/DefaultCacheFileSystem.cs
+++ b/Assets/YooAsset/Runtime/FileSystem/DefaultCacheFileSystem/DefaultCacheFileSystem.cs
@@ -473,16 +473,7 @@ namespace YooAsset
#region 内部方法
public string GetDefaultCachePackageRoot(string packageName)
{
- string rootDirectory;
-
-#if UNITY_EDITOR
- rootDirectory = YooAssetSettingsData.GetYooEditorCacheRoot();
-#elif UNITY_STANDALONE
- rootDirectory = YooAssetSettingsData.GetYooStandaloneCacheRoot();
-#else
- rootDirectory = YooAssetSettingsData.GetYooMobileCacheRoot();
-#endif
-
+ string rootDirectory = YooAssetSettingsData.GetYooDefaultCacheRoot();
return PathUtility.Combine(rootDirectory, packageName);
}
public string GetCacheBundleFileLoadPath(PackageBundle bundle)
diff --git a/Assets/YooAsset/Runtime/FileSystem/DefaultEditorFileSystem/DefaultEditorFileSystem.cs b/Assets/YooAsset/Runtime/FileSystem/DefaultEditorFileSystem/DefaultEditorFileSystem.cs
index 6ea9ab5e..0736905e 100644
--- a/Assets/YooAsset/Runtime/FileSystem/DefaultEditorFileSystem/DefaultEditorFileSystem.cs
+++ b/Assets/YooAsset/Runtime/FileSystem/DefaultEditorFileSystem/DefaultEditorFileSystem.cs
@@ -174,17 +174,17 @@ namespace YooAsset
public string GetEditorPackageVersionFilePath()
{
string fileName = YooAssetSettingsData.GetPackageVersionFileName(PackageName);
- return PathUtility.Combine(FileRoot, fileName);
+ return PathUtility.Combine(_packageRoot, fileName);
}
public string GetEditorPackageHashFilePath(string packageVersion)
{
string fileName = YooAssetSettingsData.GetPackageHashFileName(PackageName, packageVersion);
- return PathUtility.Combine(FileRoot, fileName);
+ return PathUtility.Combine(_packageRoot, fileName);
}
public string GetEditorPackageManifestFilePath(string packageVersion)
{
string fileName = YooAssetSettingsData.GetManifestBinaryFileName(PackageName, packageVersion);
- return PathUtility.Combine(FileRoot, fileName);
+ return PathUtility.Combine(_packageRoot, fileName);
}
public int GetAsyncSimulateFrame()
{
diff --git a/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/DefaultWebServerFileSystem.cs b/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/DefaultWebServerFileSystem.cs
index fc666e5f..08fd015e 100644
--- a/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/DefaultWebServerFileSystem.cs
+++ b/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/DefaultWebServerFileSystem.cs
@@ -168,7 +168,7 @@ namespace YooAsset
#region 内部方法
protected string GetDefaultWebPackageRoot(string packageName)
{
- string rootDirectory = YooAssetSettingsData.GetYooWebBuildinRoot();
+ string rootDirectory = YooAssetSettingsData.GetYooDefaultBuildinRoot();
return PathUtility.Combine(rootDirectory, packageName);
}
public string GetWebFileLoadPath(PackageBundle bundle)
diff --git a/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/Operation/DWSFSInitializeOperation.cs b/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/Operation/DWSFSInitializeOperation.cs
index 1813211a..8b4c8f6a 100644
--- a/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/Operation/DWSFSInitializeOperation.cs
+++ b/Assets/YooAsset/Runtime/FileSystem/DefaultWebServerFileSystem/Operation/DWSFSInitializeOperation.cs
@@ -37,8 +37,7 @@ namespace YooAsset
#if UNITY_EDITOR
// 兼容性初始化
// 说明:内置文件系统在编辑器下运行时需要动态生成
- string buildinRoot = YooAssetSettingsData.GetYooEditorBuildinRoot();
- string packageRoot = PathUtility.Combine(buildinRoot, _fileSystem.PackageName);
+ string packageRoot = _fileSystem.FileRoot;
bool result = DefaultBuildinFileSystemBuild.CreateBuildinCatalogFile(_fileSystem.PackageName, packageRoot);
if (result == false)
{
diff --git a/Assets/YooAsset/Runtime/FileSystem/FileSystemParametersDefine.cs b/Assets/YooAsset/Runtime/FileSystem/FileSystemParametersDefine.cs
index 5f864a2c..86bef3d9 100644
--- a/Assets/YooAsset/Runtime/FileSystem/FileSystemParametersDefine.cs
+++ b/Assets/YooAsset/Runtime/FileSystem/FileSystemParametersDefine.cs
@@ -15,5 +15,6 @@ namespace YooAsset
public const string RESUME_DOWNLOAD_RESPONSE_CODES = "RESUME_DOWNLOAD_RESPONSE_CODES";
public const string ASYNC_SIMULATE_MIN_FRAME = "ASYNC_SIMULATE_MIN_FRAME";
public const string ASYNC_SIMULATE_MAX_FRAME = "ASYNC_SIMULATE_MAX_FRAME";
+ public const string COPY_BUILDIN_PACKAGE_MANIFEST = "COPY_BUILDIN_PACKAGE_MANIFEST";
}
}
\ No newline at end of file
diff --git a/Assets/YooAsset/Runtime/Settings/YooAssetSettingsData.cs b/Assets/YooAsset/Runtime/Settings/YooAssetSettingsData.cs
index d62a541a..6e7e0bd3 100644
--- a/Assets/YooAsset/Runtime/Settings/YooAssetSettingsData.cs
+++ b/Assets/YooAsset/Runtime/Settings/YooAssetSettingsData.cs
@@ -111,50 +111,6 @@ namespace YooAsset
return $"Assets/Resources/{Setting.DefaultYooFolderName}";
}
- ///
- /// 获取YOO的编辑器下内置文件根目录
- ///
- public static string GetYooEditorBuildinRoot()
- {
- if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
- return PathUtility.Combine(Application.dataPath, "StreamingAssets");
- else
- return PathUtility.Combine(Application.dataPath, "StreamingAssets", Setting.DefaultYooFolderName);
- }
-
- ///
- /// 获取YOO的PC端内置文件根目录
- ///
- public static string GetYooStandaloneBuildinRoot()
- {
- if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
- return Application.streamingAssetsPath;
- else
- return PathUtility.Combine(Application.streamingAssetsPath, Setting.DefaultYooFolderName);
- }
-
- ///
- /// 获取YOO的移动端内置文件根目录
- ///
- public static string GetYooMobileBuildinRoot()
- {
- if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
- return Application.streamingAssetsPath;
- else
- return PathUtility.Combine(Application.streamingAssetsPath, Setting.DefaultYooFolderName);
- }
-
- ///
- /// 获取YOO的Web端内置文件根目录
- ///
- public static string GetYooWebBuildinRoot()
- {
- if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
- return Application.streamingAssetsPath;
- else
- return PathUtility.Combine(Application.streamingAssetsPath, Setting.DefaultYooFolderName);
- }
-
///
/// 获取YOO的编辑器下缓存文件根目录
///
@@ -196,6 +152,31 @@ namespace YooAsset
else
return PathUtility.Combine(Application.persistentDataPath, Setting.DefaultYooFolderName);
}
+
+ ///
+ /// 获取YOO默认的缓存文件根目录
+ ///
+ public static string GetYooDefaultCacheRoot()
+ {
+#if UNITY_EDITOR
+ return GetYooEditorCacheRoot();
+#elif UNITY_STANDALONE
+ return GetYooStandaloneCacheRoot();
+#else
+ return GetYooMobileCacheRoot();
+#endif
+ }
+
+ ///
+ /// 获取YOO默认的内置文件根目录
+ ///
+ public static string GetYooDefaultBuildinRoot()
+ {
+ if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
+ return Application.streamingAssetsPath;
+ else
+ return PathUtility.Combine(Application.streamingAssetsPath, Setting.DefaultYooFolderName);
+ }
#endregion
}
}
\ No newline at end of file