diff --git a/CHANGELOG.md b/CHANGELOG.md index 61b40d7ff..4eb015ed4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,32 @@ Removed - 删除功能/接口 Fixed - 修复问题 Others - 其他 --> +## 2026-3-16 v0.1.32 【普通更新】 +### Feature +* 普通:更新基础库版本 +* 普通:擂台赛api新增subScoreKey参数 +* 普通:支持gameeventreport(试玩) +* 普通:添加WX数据保护插件,支持游戏数据加密存储和篡改检测 +### Fixed +* 普通:修复订阅消息报错问题 + +## 2026-1-13 v0.1.31 【普通更新】 +### Fixed +* 普通:修复glx模式下 createVideo underGameView为true 黑屏的问题 +* 普通:修复build profile在团结1.6之后的导出问题 + +## 2025-11-6 v0.1.30 【重要更新】 +### Feature +* 重要:EmscriptenGLX支持微信压缩纹理 +* 普通:EmscriptenGLX支持Android glReadpixels +* 普通:EmscriptenGLX优化Android CPU与功耗 +* 普通:Metal高帧率下功耗优化 +* 普通:团结引擎buildprofile支持 +### Fixed +* 重要:Metal编码库batch size修复 +* 普通:PageManager相关问题修复 +* 普通:iOS18的微信字体修复 + ## 2025-9-8 v0.1.29 【重要更新】 ### Feature * 普通:本地缓存存在时,UnityWebRequest支持同步方式(API:wx.SetSyncReadCacheEnabled)以加快读取速度 diff --git a/Editor/PCHighPerformance/PCHPBuildPreProcessor.cs.meta b/Editor/PCHighPerformance/PCHPBuildPreProcessor.cs.meta index e83437f71..6e74db546 100644 --- a/Editor/PCHighPerformance/PCHPBuildPreProcessor.cs.meta +++ b/Editor/PCHighPerformance/PCHPBuildPreProcessor.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 5de16ad36f64db23a22cae68133a4cd6 +guid: b2764f66c7a7ee9dfaf53ffe5f6215d0 DefaultImporter: externalObjects: {} userData: diff --git a/Editor/PCHighPerformance/README_AutoInjection.md.meta b/Editor/PCHighPerformance/README_AutoInjection.md.meta index c3476f2a3..f42ff1083 100644 --- a/Editor/PCHighPerformance/README_AutoInjection.md.meta +++ b/Editor/PCHighPerformance/README_AutoInjection.md.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 082529088926e488aeebff321e33bf34 +guid: aacc596790ffe1aad08acb624adcdfaa DefaultImporter: externalObjects: {} userData: diff --git a/Editor/PCHighPerformance/TROUBLESHOOTING.md.meta b/Editor/PCHighPerformance/TROUBLESHOOTING.md.meta index e08b54a6b..2147b9adf 100644 --- a/Editor/PCHighPerformance/TROUBLESHOOTING.md.meta +++ b/Editor/PCHighPerformance/TROUBLESHOOTING.md.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d2446107c636a44e9f63a597550ecd47 +guid: 8b57398b893716f5822f5e196466fee6 DefaultImporter: externalObjects: {} userData: diff --git a/Editor/PCHighPerformance/WXApkgPacker.cs b/Editor/PCHighPerformance/WXApkgPacker.cs new file mode 100644 index 000000000..2b63f65cd --- /dev/null +++ b/Editor/PCHighPerformance/WXApkgPacker.cs @@ -0,0 +1,267 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Text; +using UnityEngine; + +namespace WeChatWASM +{ + /// + /// wxapkg 文件打包器 + /// 将目录内容打包成 .wxapkg 格式 + /// + /// wxapkg 格式结构: + /// 1. 头部段 (14 字节) + /// - 起始标志: 1 字节 (0xBE) + /// - 未知字段: 4 字节 (固定为 0) + /// - 结束标志: 1 字节 (0xED) + /// - 索引段长度: 4 字节 (大端序) + /// - 数据段长度: 4 字节 (大端序) + /// 2. 索引段 + /// - 文件数量: 4 字节 (大端序) + /// - 文件信息块序列(每个文件): + /// - 文件名长度: 4 字节 (大端序) + /// - 文件名: 可变长度 (UTF-8) + /// - 文件偏移: 4 字节 (大端序) + /// - 文件长度: 4 字节 (大端序) + /// 3. 数据段 + /// - 实际文件内容的二进制数据 + /// + public static class WXApkgPacker + { + private const byte HEADER_MARK_START = 0xBE; + private const byte HEADER_MARK_END = 0xED; + private const int HEADER_SIZE = 14; + + /// + /// 文件信息结构 + /// + private class FileInfo + { + public string RelativePath; // 相对路径(以 / 开头) + public string FullPath; // 完整路径 + public int Size; // 文件大小 + public int Offset; // 在数据段中的偏移 + } + + /// + /// 将目录打包成 wxapkg 文件 + /// + /// 源目录路径 + /// 输出的 wxapkg 文件路径 + /// 是否成功 + public static bool Pack(string sourceDir, string outputPath) + { + try + { + if (!Directory.Exists(sourceDir)) + { + Debug.LogError($"[WXApkgPacker] 源目录不存在: {sourceDir}"); + return false; + } + + // 收集所有文件信息 + var files = CollectFiles(sourceDir); + if (files.Count == 0) + { + Debug.LogError($"[WXApkgPacker] 目录为空: {sourceDir}"); + return false; + } + + Debug.Log($"[WXApkgPacker] 收集到 {files.Count} 个文件"); + + // 构建索引段 + byte[] indexData = BuildIndexSection(files); + + // 构建数据段 + byte[] dataSection = BuildDataSection(files); + + // 构建头部 + byte[] header = BuildHeader(indexData.Length, dataSection.Length); + + // 确保输出目录存在 + string outputDir = Path.GetDirectoryName(outputPath); + if (!string.IsNullOrEmpty(outputDir) && !Directory.Exists(outputDir)) + { + Directory.CreateDirectory(outputDir); + } + + // 写入文件 + using (var fs = new FileStream(outputPath, FileMode.Create, FileAccess.Write)) + { + fs.Write(header, 0, header.Length); + fs.Write(indexData, 0, indexData.Length); + fs.Write(dataSection, 0, dataSection.Length); + } + + long totalSize = header.Length + indexData.Length + dataSection.Length; + Debug.Log($"[WXApkgPacker] 打包完成: {outputPath}"); + Debug.Log($"[WXApkgPacker] 文件大小: {totalSize / 1024.0 / 1024.0:F2} MB"); + + return true; + } + catch (Exception e) + { + Debug.LogError($"[WXApkgPacker] 打包失败: {e.Message}"); + Debug.LogException(e); + return false; + } + } + + /// + /// 收集目录下所有文件 + /// + private static List CollectFiles(string sourceDir) + { + var files = new List(); + var allFiles = Directory.GetFiles(sourceDir, "*", SearchOption.AllDirectories); + + foreach (var filePath in allFiles) + { + // 跳过 .DS_Store 等隐藏文件 + string fileName = Path.GetFileName(filePath); + if (fileName.StartsWith(".")) + { + continue; + } + + // 计算相对路径(使用正斜杠,以 / 开头) + string relativePath = filePath.Substring(sourceDir.Length); + relativePath = relativePath.Replace('\\', '/'); + if (!relativePath.StartsWith("/")) + { + relativePath = "/" + relativePath; + } + + var info = new System.IO.FileInfo(filePath); + files.Add(new FileInfo + { + RelativePath = relativePath, + FullPath = filePath, + Size = (int)info.Length + }); + } + + // 按路径排序,保持一致性 + files.Sort((a, b) => string.Compare(a.RelativePath, b.RelativePath, StringComparison.Ordinal)); + + return files; + } + + /// + /// 构建头部段 (14 字节) + /// + private static byte[] BuildHeader(int indexLength, int dataLength) + { + byte[] header = new byte[HEADER_SIZE]; + + // 起始标志 + header[0] = HEADER_MARK_START; + + // 4 字节未知字段 (固定为 0) + header[1] = 0; + header[2] = 0; + header[3] = 0; + header[4] = 0; + + // 结束标志 + header[5] = HEADER_MARK_END; + + // 索引段长度 (大端序) + WriteInt32BE(header, 6, indexLength); + + // 数据段长度 (大端序) + WriteInt32BE(header, 10, dataLength); + + return header; + } + + /// + /// 构建索引段 + /// + private static byte[] BuildIndexSection(List files) + { + using (var ms = new MemoryStream()) + using (var writer = new BinaryWriter(ms)) + { + // 文件数量 (大端序) + WriteInt32BE(writer, files.Count); + + // 计算数据段起始偏移 + // 偏移量 = 头部大小 + 索引段大小 + // 需要先计算索引段大小 + int indexSize = 4; // 文件数量 + foreach (var file in files) + { + byte[] nameBytes = Encoding.UTF8.GetBytes(file.RelativePath); + indexSize += 4 + nameBytes.Length + 4 + 4; // nameLen + name + offset + size + } + + int dataOffset = HEADER_SIZE + indexSize; + + // 写入每个文件的索引信息 + foreach (var file in files) + { + byte[] nameBytes = Encoding.UTF8.GetBytes(file.RelativePath); + + // 文件名长度 (大端序) + WriteInt32BE(writer, nameBytes.Length); + + // 文件名 + writer.Write(nameBytes); + + // 文件偏移 (大端序) + file.Offset = dataOffset; + WriteInt32BE(writer, dataOffset); + + // 文件大小 (大端序) + WriteInt32BE(writer, file.Size); + + // 更新下一个文件的偏移 + dataOffset += file.Size; + } + + return ms.ToArray(); + } + } + + /// + /// 构建数据段 + /// + private static byte[] BuildDataSection(List files) + { + using (var ms = new MemoryStream()) + { + foreach (var file in files) + { + byte[] content = File.ReadAllBytes(file.FullPath); + ms.Write(content, 0, content.Length); + } + + return ms.ToArray(); + } + } + + /// + /// 写入 32 位大端序整数到字节数组 + /// + private static void WriteInt32BE(byte[] buffer, int offset, int value) + { + buffer[offset] = (byte)((value >> 24) & 0xFF); + buffer[offset + 1] = (byte)((value >> 16) & 0xFF); + buffer[offset + 2] = (byte)((value >> 8) & 0xFF); + buffer[offset + 3] = (byte)(value & 0xFF); + } + + /// + /// 写入 32 位大端序整数到流 + /// + private static void WriteInt32BE(BinaryWriter writer, int value) + { + writer.Write((byte)((value >> 24) & 0xFF)); + writer.Write((byte)((value >> 16) & 0xFF)); + writer.Write((byte)((value >> 8) & 0xFF)); + writer.Write((byte)(value & 0xFF)); + } + } +} diff --git a/Editor/PCHighPerformance/WXApkgPacker.cs.meta b/Editor/PCHighPerformance/WXApkgPacker.cs.meta new file mode 100644 index 000000000..8418c3908 --- /dev/null +++ b/Editor/PCHighPerformance/WXApkgPacker.cs.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 92432ea937bc0c5eb90a582c16865d31 +DefaultImporter: +externalObjects: {} +userData: +assetBundleName: +assetBundleVariant: \ No newline at end of file diff --git a/Editor/PCHighPerformance/WXPCHPBuildHelper.cs b/Editor/PCHighPerformance/WXPCHPBuildHelper.cs new file mode 100644 index 000000000..95c71037e --- /dev/null +++ b/Editor/PCHighPerformance/WXPCHPBuildHelper.cs @@ -0,0 +1,234 @@ +using System.Collections.Generic; +using System.IO; +using UnityEngine; +using UnityEditor; +using UnityEditor.Build.Reporting; + +namespace WeChatWASM +{ + /// + /// PC高性能小游戏构建辅助类 + /// 用于在微信小游戏转换工具面板中集成PC高性能模式构建 + /// + public static class WXPCHPBuildHelper + { + /// + /// PC高性能构建产物目录名 + /// + public const string PCHPOutputDir = "pchpcode"; + + /// + /// 检查是否开启了PC高性能模式 + /// + public static bool IsPCHighPerformanceEnabled() + { + var config = UnityUtil.GetEditorConf(); + bool enabled = config != null && config.ProjectConf.EnablePCHighPerformance; + Debug.Log($"[PC高性能模式] 检查配置: config={config != null}, EnablePCHighPerformance={config?.ProjectConf?.EnablePCHighPerformance}, 结果={enabled}"); + return enabled; + } + + /// + /// 执行PC高性能构建 + /// + /// 导出基础路径(来自小游戏面板配置) + /// 构建是否成功 + public static bool BuildPCHighPerformance(string exportBasePath) + { + if (string.IsNullOrEmpty(exportBasePath)) + { + Debug.LogError("[PC高性能模式] 导出路径为空,无法构建"); + return false; + } + + // 确定构建目标平台 + var currentPlatform = Application.platform; + BuildTarget buildTarget; + string platformName; + + if (currentPlatform == RuntimePlatform.OSXEditor) + { + buildTarget = BuildTarget.StandaloneOSX; + platformName = "Mac"; + } + else + { + buildTarget = BuildTarget.StandaloneWindows64; + platformName = "Windows"; + } + + // 构建输出路径:直接放在 minigame/pchpcode 目录下 + string pchpOutputPath = Path.Combine(exportBasePath, WXConvertCore.miniGameDir, PCHPOutputDir); + + Debug.Log($"[PC高性能模式] 开始构建,目标平台: {platformName}"); + Debug.Log($"[PC高性能模式] 输出路径: {pchpOutputPath}"); + + // 保存当前构建目标 + var originalTarget = EditorUserBuildSettings.activeBuildTarget; + var originalTargetGroup = EditorUserBuildSettings.selectedBuildTargetGroup; + + try + { + // 切换构建目标(如果需要) + if (originalTarget != buildTarget) + { + Debug.Log($"[PC高性能模式] 切换构建目标: {originalTarget} -> {buildTarget}"); + if (!EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.Standalone, buildTarget)) + { + Debug.LogError("[PC高性能模式] 切换构建目标失败"); + return false; + } + } + + // 配置 Player Settings + ConfigurePlayerSettings(); + + // 确保输出目录存在 + if (!Directory.Exists(pchpOutputPath)) + { + Directory.CreateDirectory(pchpOutputPath); + } + + // 获取可执行文件路径 + string executablePath = GetExecutablePath(pchpOutputPath, buildTarget); + + // 获取场景列表 + var scenes = GetEnabledScenes(); + if (scenes.Length == 0) + { + Debug.LogError("[PC高性能模式] 没有启用的场景,请在 Build Settings 中添加场景"); + EditorUtility.DisplayDialog("PC高性能模式构建失败", "没有启用的场景,请在 Build Settings 中添加场景", "确定"); + return false; + } + + // 构建选项 + var buildOptions = BuildOptions.None; + + // 执行构建 + Debug.Log($"[PC高性能模式] 执行构建,输出: {executablePath}"); + var report = BuildPipeline.BuildPlayer(scenes, executablePath, buildTarget, buildOptions); + + // 检查构建结果 + if (report.summary.result == BuildResult.Succeeded) + { + Debug.Log($"[PC高性能模式] 构建成功! 耗时: {report.summary.totalTime.TotalSeconds:F2}秒"); + Debug.Log($"[PC高性能模式] 输出路径: {pchpOutputPath}"); + + // 打包成 wxapkg 格式(先打包到临时位置) + string tempWxapkgPath = Path.Combine(exportBasePath, WXConvertCore.miniGameDir, $"{PCHPOutputDir}_temp.wxapkg"); + string finalWxapkgPath = Path.Combine(pchpOutputPath, $"{PCHPOutputDir}.wxapkg"); + + Debug.Log($"[PC高性能模式] 开始打包 wxapkg..."); + + if (WXApkgPacker.Pack(pchpOutputPath, tempWxapkgPath)) + { + // 删除原始构建材料 + Debug.Log($"[PC高性能模式] 清理原始构建材料..."); + Directory.Delete(pchpOutputPath, true); + + // 重新创建目录并移动 wxapkg + Directory.CreateDirectory(pchpOutputPath); + File.Move(tempWxapkgPath, finalWxapkgPath); + + Debug.Log($"[PC高性能模式] wxapkg 打包完成: {finalWxapkgPath}"); + } + else + { + Debug.LogWarning("[PC高性能模式] wxapkg 打包失败,保留原始构建产物"); + if (File.Exists(tempWxapkgPath)) + { + File.Delete(tempWxapkgPath); + } + } + + return true; + } + else + { + Debug.LogError($"[PC高性能模式] 构建失败: {report.summary.result}"); + foreach (var step in report.steps) + { + foreach (var message in step.messages) + { + if (message.type == LogType.Error) + { + Debug.LogError($"[PC高性能模式] 构建错误: {message.content}"); + } + } + } + return false; + } + } + catch (System.Exception e) + { + Debug.LogError($"[PC高性能模式] 构建异常: {e.Message}"); + Debug.LogException(e); + return false; + } + finally + { + // 始终恢复到 WebGL 构建目标,确保微信小游戏转换工具能正常加载 + if (EditorUserBuildSettings.activeBuildTarget != BuildTarget.WebGL) + { + Debug.Log($"[PC高性能模式] 切换回 WebGL 构建目标"); + EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WebGL, BuildTarget.WebGL); + } + } + } + + /// + /// 配置 Player Settings 用于 PC 高性能构建 + /// + private static void ConfigurePlayerSettings() + { + // 设置窗口模式 + PlayerSettings.fullScreenMode = FullScreenMode.Windowed; + + // 设置默认分辨率 + PlayerSettings.defaultScreenWidth = 1280; + PlayerSettings.defaultScreenHeight = 720; + + // 允许调整窗口大小 + PlayerSettings.resizableWindow = true; + + Debug.Log("[PC高性能模式] Player Settings 配置完成"); + } + + /// + /// 获取可执行文件路径 + /// + private static string GetExecutablePath(string outputPath, BuildTarget target) + { + string productName = PlayerSettings.productName; + if (string.IsNullOrEmpty(productName)) + { + productName = "Game"; + } + + if (target == BuildTarget.StandaloneOSX) + { + return Path.Combine(outputPath, $"{productName}.app"); + } + else + { + return Path.Combine(outputPath, $"{productName}.exe"); + } + } + + /// + /// 获取启用的场景列表 + /// + private static string[] GetEnabledScenes() + { + var scenes = new List(); + foreach (var scene in EditorBuildSettings.scenes) + { + if (scene.enabled) + { + scenes.Add(scene.path); + } + } + return scenes.ToArray(); + } + } +} diff --git a/Editor/PCHighPerformance/WXPCHPBuildHelper.cs.meta b/Editor/PCHighPerformance/WXPCHPBuildHelper.cs.meta new file mode 100644 index 000000000..1d14e1083 --- /dev/null +++ b/Editor/PCHighPerformance/WXPCHPBuildHelper.cs.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1455a91f4635862b70423ea92eff07bb +DefaultImporter: +externalObjects: {} +userData: +assetBundleName: +assetBundleVariant: \ No newline at end of file diff --git a/Editor/WXConvertCore.cs b/Editor/WXConvertCore.cs index 37f40b2e4..e4e0f6db0 100644 --- a/Editor/WXConvertCore.cs +++ b/Editor/WXConvertCore.cs @@ -273,6 +273,24 @@ namespace WeChatWASM finishExport(); } } + + // PC高性能模式:在小游戏构建完成后构建PC版本 + if (buildWebGL && WXPCHPBuildHelper.IsPCHighPerformanceEnabled()) + { + Debug.Log("[微信小游戏] 小游戏构建完成,开始构建PC高性能版本..."); + + if (!WXPCHPBuildHelper.BuildPCHighPerformance(config.ProjectConf.DST)) + { + Debug.LogError("[微信小游戏] PC高性能模式构建失败"); + EditorUtility.DisplayDialog("PC高性能模式构建失败", + "PC高性能版本构建失败,但小游戏版本已构建成功。", "确定"); + } + else + { + Debug.Log("[微信小游戏] PC高性能版本构建完成!"); + } + } + return WXExportError.SUCCEED; } @@ -428,24 +446,24 @@ namespace WeChatWASM bool showEnableGLX2022Plugin = config.CompileOptions.enableEmscriptenGLX && IsCompatibleWithUnity202203OrNewer(); var glx2022Importer = AssetImporter.GetAtPath(glLibs[0]) as PluginImporter; - #if PLATFORM_WEIXINMINIGAME +#if PLATFORM_WEIXINMINIGAME glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2022Plugin); - #else - glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2022Plugin); - #endif +#else + glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2022Plugin); +#endif SetPluginCompatibilityByModifyingMetadataFile(glLibs[0], showEnableGLX2022Plugin); } - + { // unity2021 lib引入 bool showEnableGLX2021Plugin = config.CompileOptions.enableEmscriptenGLX && IsCompatibleWithUnity202102To202203(); var glx2021Importer = AssetImporter.GetAtPath(glLibs[1]) as PluginImporter; - #if PLATFORM_WEIXINMINIGAME +#if PLATFORM_WEIXINMINIGAME glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2021Plugin); - #else - glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2021Plugin); - #endif +#else + glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2021Plugin); +#endif SetPluginCompatibilityByModifyingMetadataFile(glLibs[1], showEnableGLX2021Plugin); } @@ -973,7 +991,7 @@ namespace WeChatWASM { new Rule() { - old = "if (GameGlobal.unityNamespace.enableProfileStats)", + old = "if (GameGlobal.unityNamespace.enableProfileStats)", newStr = "if (GameGlobal.unityNamespace.enableProfileStats || (typeof GameGlobal.manager.getWXAppCheatMonitor === 'function' && GameGlobal.manager.getWXAppCheatMonitor().shouldForceShowPerfMonitor()))" } }; diff --git a/Editor/WXEditorSettingHelper.cs b/Editor/WXEditorSettingHelper.cs index c6f91baae..cd45f7113 100644 --- a/Editor/WXEditorSettingHelper.cs +++ b/Editor/WXEditorSettingHelper.cs @@ -80,54 +80,14 @@ namespace WeChatWASM PluginUpdateManager.CheckUpdateOnce(); scrollRoot = EditorGUILayout.BeginScrollView(scrollRoot); - GUIStyle linkStyle = new GUIStyle(GUI.skin.label); - linkStyle.normal.textColor = Color.yellow; - linkStyle.hover.textColor = Color.yellow; - linkStyle.stretchWidth = false; - linkStyle.alignment = TextAnchor.UpperLeft; - linkStyle.wordWrap = true; + GUIStyle linkStyle = GetLinkStyle(); foldBaseInfo = EditorGUILayout.Foldout(foldBaseInfo, "基本信息"); if (foldBaseInfo) { EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - this.formInput("appid", "游戏AppID"); - this.formInput("cdn", "游戏资源CDN"); - this.formInput("projectName", "小游戏项目名"); - this.formIntPopup("orientation", "游戏方向", new[] { "Portrait", "Landscape", "LandscapeLeft", "LandscapeRight" }, new[] { 0, 1, 2, 3 }); - this.formInput("memorySize", "UnityHeap预留内存(?)", "单位MB,预分配内存值,超休闲游戏256/中轻度496/重度游戏768,需预估游戏最大UnityHeap值以防止内存自动扩容带来的峰值尖刺。预估方法请查看GIT文档《优化Unity WebGL的内存》"); - - GUILayout.BeginHorizontal(); - string targetDst = "dst"; - if (!formInputData.ContainsKey(targetDst)) - { - formInputData[targetDst] = ""; - } - EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); - GUILayout.Label(new GUIContent("导出路径(?)", "支持输入相对于项目根目录的相对路径,如:wxbuild"), GUILayout.Width(140)); - formInputData[targetDst] = GUILayout.TextField(formInputData[targetDst], GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 270)); - if (GUILayout.Button(new GUIContent("打开"), GUILayout.Width(40))) - { - if (!formInputData[targetDst].Trim().Equals(string.Empty)) - { - EditorUtility.RevealInFinder(GetAbsolutePath(formInputData[targetDst])); - } - GUIUtility.ExitGUI(); - } - if (GUILayout.Button(new GUIContent("选择"), GUILayout.Width(40))) - { - var dstPath = EditorUtility.SaveFolderPanel("选择你的游戏导出目录", string.Empty, string.Empty); - if (dstPath != string.Empty) - { - formInputData[targetDst] = dstPath; - this.saveData(); - } - GUIUtility.ExitGUI(); - } - GUILayout.EndHorizontal(); - - + OnSettingBaseInfo(); + OnSettingChooseFolder(); EditorGUILayout.EndVertical(); } @@ -148,12 +108,7 @@ namespace WeChatWASM } GUILayout.EndHorizontal(); - this.formInput("videoUrl", "加载阶段视频URL"); - this.formIntPopup("assetLoadType", "首包资源加载方式", new[] { "CDN", "小游戏包内" }, new[] { 0, 1 }); - this.formCheckbox("compressDataPackage", "压缩首包资源(?)", "将首包资源Brotli压缩, 降低资源大小. 注意: 首次启动耗时可能会增加200ms, 仅推荐使用小游戏分包加载时节省包体大小使用"); - this.formInput("bundleExcludeExtensions", "不自动缓存文件类型(?)", "(使用;分割)当请求url包含资源'cdn+StreamingAssets'时会自动缓存,但StreamingAssets目录下不是所有文件都需缓存,此选项配置不需要自动缓存的文件拓展名。默认值json"); - this.formInput("bundleHashLength", "Bundle名称Hash长度(?)", "自定义Bundle文件名中hash部分长度,默认值32,用于缓存控制。"); - this.formInput("preloadFiles", "预下载文件列表(?)", "使用;间隔,支持模糊匹配"); + OnSettingLoadingConfig(); EditorGUILayout.EndVertical(); } @@ -162,55 +117,22 @@ namespace WeChatWASM if (foldSDKOptions) { EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingSDKOptions(); + EditorGUILayout.EndVertical(); + } - this.formCheckbox("useFriendRelation", "使用好友关系链"); - this.formCheckbox("useMiniGameChat", "使用社交组件"); - this.formCheckbox("preloadWXFont", "预加载微信字体(?)", "在game.js执行开始时预载微信系统字体,运行期间可使用WX.GetWXFont获取微信字体"); - this.formCheckbox("disableMultiTouch", "禁用多点触控"); - + foldPCHighPerformance = EditorGUILayout.Foldout(foldPCHighPerformance, "PC高性能模式选项"); + if (foldPCHighPerformance) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingPCHighPerformance(); EditorGUILayout.EndVertical(); } foldDebugOptions = EditorGUILayout.Foldout(foldDebugOptions, "调试编译选项"); if (foldDebugOptions) { - EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - - - this.formCheckbox("developBuild", "Development Build", "", false, null, OnDevelopmentBuildToggleChanged); - this.formCheckbox("autoProfile", "Auto connect Profiler"); - this.formCheckbox("scriptOnly", "Scripts Only Build"); - this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP); - this.formCheckbox("profilingFuncs", "Profiling Funcs"); - this.formCheckbox("profilingMemory", "Profiling Memory"); - this.formCheckbox("webgl2", "WebGL2.0"); - this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存"); - this.formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案"); - this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗"); - this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets"); - this.formCheckbox("cleanBuild", "Clean WebGL Build"); - // this.formCheckbox("cleanCloudDev", "Clean Cloud Dev"); - this.formCheckbox("fbslim", "首包资源优化(?)", "导出时自动清理UnityEditor默认打包但游戏项目从未使用的资源,瘦身首包资源体积。(团结引擎已无需开启该能力)", UnityUtil.GetEngineVersion() > 0, (res) => - { - var fbWin = EditorWindow.GetWindow(typeof(WXFbSettingWindow), false, "首包资源优化配置面板", true); - fbWin.minSize = new Vector2(680, 350); - fbWin.Show(); - }); - this.formCheckbox("autoAdaptScreen", "自适应屏幕尺寸(?)", "移动端旋转屏幕和PC端拉伸窗口时,自动调整画布尺寸"); - this.formCheckbox("showMonitorSuggestModal", "显示优化建议弹窗"); - this.formCheckbox("enableProfileStats", "显示性能面板"); - this.formCheckbox("enableRenderAnalysis", "显示渲染日志(dev only)"); - this.formCheckbox("brotliMT", "brotli多线程压缩(?)", "开启多线程压缩可以提高出包速度,但会降低压缩率。如若不使用wasm代码分包请勿用多线程出包上线"); -#if UNITY_6000_0_OR_NEWER - this.formCheckbox("enableWasm2023", "WebAssembly 2023(?)", "WebAssembly 2023包括对WebAssembly.Table和BigInt的支持。(Android (Android 10 or later recommended), iOS (iOS 15 or later recommended))"); -#endif - - if (m_EnablePerfTool) - { - this.formCheckbox("enablePerfAnalysis", "集成性能分析工具", "将性能分析工具集成入Development Build包中", false, null, OnPerfAnalysisFeatureToggleChanged); - } - - EditorGUILayout.EndVertical(); + OnSettingDebugOptions(true); } @@ -265,31 +187,281 @@ namespace WeChatWASM if (foldFontOptions) { EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); - this.formCheckbox("CJK_Unified_Ideographs", "基本汉字(?)", "Unicode [0x4e00, 0x9fff]"); - this.formCheckbox("C0_Controls_and_Basic_Latin", "基本拉丁语(英文大小写、数字、英文标点)(?)", "Unicode [0x0, 0x7f]"); - this.formCheckbox("CJK_Symbols_and_Punctuation", "中文标点符号(?)", "Unicode [0x3000, 0x303f]"); - this.formCheckbox("General_Punctuation", "通用标点符号(?)", "Unicode [0x2000, 0x206f]"); - this.formCheckbox("Enclosed_CJK_Letters_and_Months", "CJK字母及月份(?)", "Unicode [0x3200, 0x32ff]"); - this.formCheckbox("Vertical_Forms", "中文竖排标点(?)", "Unicode [0xfe10, 0xfe1f]"); - this.formCheckbox("CJK_Compatibility_Forms", "CJK兼容符号(?)", "Unicode [0xfe30, 0xfe4f]"); - this.formCheckbox("Miscellaneous_Symbols", "杂项符号(?)", "Unicode [0x2600, 0x26ff]"); - this.formCheckbox("CJK_Compatibility", "CJK特殊符号(?)", "Unicode [0x3300, 0x33ff]"); - this.formCheckbox("Halfwidth_and_Fullwidth_Forms", "全角ASCII、全角中英文标点、半宽片假名、半宽平假名、半宽韩文字母(?)", "Unicode [0xff00, 0xffef]"); - this.formCheckbox("Dingbats", "装饰符号(?)", "Unicode [0x2700, 0x27bf]"); - this.formCheckbox("Letterlike_Symbols", "字母式符号(?)", "Unicode [0x2100, 0x214f]"); - this.formCheckbox("Enclosed_Alphanumerics", "带圈或括号的字母数字(?)", "Unicode [0x2460, 0x24ff]"); - this.formCheckbox("Number_Forms", "数字形式(?)", "Unicode [0x2150, 0x218f]"); - this.formCheckbox("Currency_Symbols", "货币符号(?)", "Unicode [0x20a0, 0x20cf]"); - this.formCheckbox("Arrows", "箭头(?)", "Unicode [0x2190, 0x21ff]"); - this.formCheckbox("Geometric_Shapes", "几何图形(?)", "Unicode [0x25a0, 0x25ff]"); - this.formCheckbox("Mathematical_Operators", "数学运算符号(?)", "Unicode [0x2200, 0x22ff]"); - this.formInput("CustomUnicode", "自定义Unicode(?)", "将填入的所有字符强制加入字体预加载列表"); + OnSettingFontOptions(); EditorGUILayout.EndVertical(); } EditorGUILayout.EndScrollView(); } + public void OnSettingsGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty) + { + loadData(serializedObject, miniGameProperty); + + scrollRoot = EditorGUILayout.BeginScrollView(scrollRoot); + + GUIStyle linkStyle = GetLinkStyle(); + + foldBaseInfo = EditorGUILayout.Foldout(foldBaseInfo, "基本信息"); + if (foldBaseInfo) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingBaseInfo(); + EditorGUILayout.EndVertical(); + } + + foldLoadingConfig = EditorGUILayout.Foldout(foldLoadingConfig, "启动Loading配置"); + if (foldLoadingConfig) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + + // Call saveData(serializedObject, miniGameProperty) not saveData() + GUILayout.BeginHorizontal(); + string targetBg = "bgImageSrc"; + EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); + tex = (Texture)EditorGUILayout.ObjectField("启动背景图/视频封面", tex, typeof(Texture2D), false); + var currentBgSrc = AssetDatabase.GetAssetPath(tex); + if (!string.IsNullOrEmpty(currentBgSrc) && currentBgSrc != formInputData[targetBg]) + { + formInputData[targetBg] = currentBgSrc; + saveData(serializedObject, miniGameProperty); + } + GUILayout.EndHorizontal(); + + OnSettingLoadingConfig(); + + EditorGUILayout.EndVertical(); + } + + foldSDKOptions = EditorGUILayout.Foldout(foldSDKOptions, "SDK功能选项"); + if (foldSDKOptions) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingSDKOptions(); + EditorGUILayout.EndVertical(); + } + + foldPCHighPerformance = EditorGUILayout.Foldout(foldPCHighPerformance, "PC高性能模式"); + if (foldPCHighPerformance) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingPCHighPerformance(); + EditorGUILayout.EndVertical(); + } + + foldDebugOptions = EditorGUILayout.Foldout(foldDebugOptions, "调试编译选项"); + if (foldDebugOptions) + { + OnSettingDebugOptions(false); + } + + if (WXConvertCore.IsInstantGameAutoStreaming()) + { + foldInstantGame = EditorGUILayout.Foldout(foldInstantGame, "Instant Game - AutoStreaming"); + if (foldInstantGame) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + formInput("bundlePathIdentifier", "Bundle Path Identifier"); + formInput("dataFileSubPrefix", "Data File Sub Prefix"); + + EditorGUI.BeginDisabledGroup(true); + formCheckbox("autoUploadFirstBundle", "构建后自动上传首包(?)", "仅在开启AutoStreaming生效", true); + EditorGUI.EndDisabledGroup(); + + GUILayout.BeginHorizontal(); + EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); + GUILayout.Label(new GUIContent("清理AS配置(?)", "如需关闭AutoStreaming选用默认发布方案则需要清理AS配置项目。"), GUILayout.Width(140)); + EditorGUI.BeginDisabledGroup(WXConvertCore.IsInstantGameAutoStreaming()); + // It is not same as OnSettingsGUI(EditorWindow) + if (GUILayout.Button(new GUIContent("恢复"), GUILayout.Width(60))) + { + var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); + string identifier = ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue; + string[] identifiers = identifier.Split(";"); + string idStr = ""; + foreach (string id in identifiers) + { + if (id != "AS" && id != "CUS/CustomAB") + { + idStr += id + ";"; + } + } + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = idStr.Trim(';'); + + if (ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue == "CUS") + { + ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = ""; + } + loadData(serializedObject, miniGameProperty); + } + EditorGUI.EndDisabledGroup(); + GUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUILayout.LabelField(string.Empty); + if (GUILayout.Button(new GUIContent("了解Instant Game AutoStreaming", ""), linkStyle)) + { + Application.OpenURL("https://github.com/wechat-miniprogram/minigame-unity-webgl-transform/blob/main/Design/InstantGameGuide.md"); + } + EditorGUILayout.EndHorizontal(); + EditorGUILayout.EndVertical(); + } + } + + foldFontOptions = EditorGUILayout.Foldout(foldFontOptions, "字体配置"); + if (foldFontOptions) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + OnSettingFontOptions(); + EditorGUILayout.EndVertical(); + } + + EditorGUILayout.EndScrollView(); + saveData(serializedObject, miniGameProperty); + } + + private GUIStyle GetLinkStyle() + { + GUIStyle linkStyle = new GUIStyle(GUI.skin.label); + linkStyle.normal.textColor = Color.yellow; + linkStyle.hover.textColor = Color.yellow; + linkStyle.stretchWidth = false; + linkStyle.alignment = TextAnchor.UpperLeft; + linkStyle.wordWrap = true; + return linkStyle; + } + + private void OnSettingBaseInfo() + { + this.formInput("appid", "游戏AppID"); + this.formInput("cdn", "游戏资源CDN"); + this.formInput("projectName", "小游戏项目名"); + this.formIntPopup("orientation", "游戏方向", new[] { "Portrait", "Landscape", "LandscapeLeft", "LandscapeRight" }, new[] { 0, 1, 2, 3 }); + this.formInput("memorySize", "UnityHeap预留内存(?)", "单位MB,预分配内存值,超休闲游戏256/中轻度496/重度游戏768,需预估游戏最大UnityHeap值以防止内存自动扩容带来的峰值尖刺。预估方法请查看GIT文档《优化Unity WebGL的内存》"); + } + + private void OnSettingChooseFolder() + { + GUILayout.BeginHorizontal(); + string targetDst = "dst"; + if (!formInputData.ContainsKey(targetDst)) + { + formInputData[targetDst] = ""; + } + EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10)); + GUILayout.Label(new GUIContent("导出路径(?)", "支持输入相对于项目根目录的相对路径,如:wxbuild"), GUILayout.Width(140)); + formInputData[targetDst] = GUILayout.TextField(formInputData[targetDst], GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 270)); + if (GUILayout.Button(new GUIContent("打开"), GUILayout.Width(40))) + { + if (!formInputData[targetDst].Trim().Equals(string.Empty)) + { + EditorUtility.RevealInFinder(GetAbsolutePath(formInputData[targetDst])); + } + GUIUtility.ExitGUI(); + } + if (GUILayout.Button(new GUIContent("选择"), GUILayout.Width(40))) + { + var dstPath = EditorUtility.SaveFolderPanel("选择你的游戏导出目录", string.Empty, string.Empty); + if (dstPath != string.Empty) + { + formInputData[targetDst] = dstPath; + this.saveData(); + } + GUIUtility.ExitGUI(); + } + GUILayout.EndHorizontal(); + } + + private void OnSettingLoadingConfig() + { + this.formInput("videoUrl", "加载阶段视频URL"); + this.formIntPopup("assetLoadType", "首包资源加载方式", new[] { "CDN", "小游戏包内" }, new[] { 0, 1 }); + this.formCheckbox("compressDataPackage", "压缩首包资源(?)", "将首包资源Brotli压缩, 降低资源大小. 注意: 首次启动耗时可能会增加200ms, 仅推荐使用小游戏分包加载时节省包体大小使用"); + this.formInput("bundleExcludeExtensions", "不自动缓存文件类型(?)", "(使用;分割)当请求url包含资源'cdn+StreamingAssets'时会自动缓存,但StreamingAssets目录下不是所有文件都需缓存,此选项配置不需要自动缓存的文件拓展名。默认值json"); + this.formInput("bundleHashLength", "Bundle名称Hash长度(?)", "自定义Bundle文件名中hash部分长度,默认值32,用于缓存控制。"); + this.formInput("preloadFiles", "预下载文件列表(?)", "使用;间隔,支持模糊匹配"); + } + + private void OnSettingSDKOptions() + { + formCheckbox("useFriendRelation", "使用好友关系链"); + formCheckbox("useMiniGameChat", "使用社交组件"); + formCheckbox("preloadWXFont", "预加载微信字体(?)", "在game.js执行开始时预载微信系统字体,运行期间可使用WX.GetWXFont获取微信字体"); + formCheckbox("disableMultiTouch", "禁止多点触控"); + } + + private void OnSettingPCHighPerformance() + { + formCheckbox("enablePCHighPerformance", "PC高性能模式(?)", "勾选后将在构建时同时构建PC端高性能版本,构建产物会放到导出路径下的PCHP目录"); + } + + private void OnSettingDebugOptions(bool showDevBuild) + { + EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true)); + + if (showDevBuild) + { + this.formCheckbox("developBuild", "Development Build", "", false, null, OnDevelopmentBuildToggleChanged); + } + this.formCheckbox("autoProfile", "Auto connect Profiler"); + this.formCheckbox("scriptOnly", "Scripts Only Build"); + this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP); + this.formCheckbox("profilingFuncs", "Profiling Funcs"); + this.formCheckbox("profilingMemory", "Profiling Memory"); + this.formCheckbox("webgl2", "WebGL2.0"); + this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存"); + this.formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案"); + this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗"); + this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets"); + this.formCheckbox("cleanBuild", "Clean WebGL Build"); + // this.formCheckbox("cleanCloudDev", "Clean Cloud Dev"); + this.formCheckbox("fbslim", "首包资源优化(?)", "导出时自动清理UnityEditor默认打包但游戏项目从未使用的资源,瘦身首包资源体积。(团结引擎已无需开启该能力)", UnityUtil.GetEngineVersion() > 0, (res) => + { + var fbWin = EditorWindow.GetWindow(typeof(WXFbSettingWindow), false, "首包资源优化配置面板", true); + fbWin.minSize = new Vector2(680, 350); + fbWin.Show(); + }); + this.formCheckbox("autoAdaptScreen", "自适应屏幕尺寸(?)", "移动端旋转屏幕和PC端拉伸窗口时,自动调整画布尺寸"); + this.formCheckbox("showMonitorSuggestModal", "显示优化建议弹窗"); + this.formCheckbox("enableProfileStats", "显示性能面板"); + this.formCheckbox("enableRenderAnalysis", "显示渲染日志(dev only)"); + this.formCheckbox("brotliMT", "brotli多线程压缩(?)", "开启多线程压缩可以提高出包速度,但会降低压缩率。如若不使用wasm代码分包请勿用多线程出包上线"); +#if UNITY_6000_0_OR_NEWER + this.formCheckbox("enableWasm2023", "WebAssembly 2023(?)", "WebAssembly 2023包括对WebAssembly.Table和BigInt的支持。(Android (Android 10 or later recommended), iOS (iOS 15 or later recommended))"); +#endif + + if (m_EnablePerfTool) + { + this.formCheckbox("enablePerfAnalysis", "集成性能分析工具", "将性能分析工具集成入Development Build包中", false, null, OnPerfAnalysisFeatureToggleChanged); + } + + EditorGUILayout.EndVertical(); + } + + private void OnSettingFontOptions() + { + formCheckbox("CJK_Unified_Ideographs", "基本汉字(?)", "Unicode [0x4e00, 0x9fff]"); + formCheckbox("C0_Controls_and_Basic_Latin", "基本拉丁语(英文大小写、数字、英文标点)(?)", "Unicode [0x0, 0x7f]"); + formCheckbox("CJK_Symbols_and_Punctuation", "中文标点符号(?)", "Unicode [0x3000, 0x303f]"); + formCheckbox("General_Punctuation", "通用标点符号(?)", "Unicode [0x2000, 0x206f]"); + formCheckbox("Enclosed_CJK_Letters_and_Months", "CJK字母及月份(?)", "Unicode [0x3200, 0x32ff]"); + formCheckbox("Vertical_Forms", "中文竖排标点(?)", "Unicode [0xfe10, 0xfe1f]"); + formCheckbox("CJK_Compatibility_Forms", "CJK兼容符号(?)", "Unicode [0xfe30, 0xfe4f]"); + formCheckbox("Miscellaneous_Symbols", "杂项符号(?)", "Unicode [0x2600, 0x26ff]"); + formCheckbox("CJK_Compatibility", "CJK特殊符号(?)", "Unicode [0x3300, 0x33ff]"); + formCheckbox("Halfwidth_and_Fullwidth_Forms", "全角ASCII、全角中英文标点、半宽片假名、半宽平假名、半宽韩文字母(?)", "Unicode [0xff00, 0xffef]"); + formCheckbox("Dingbats", "装饰符号(?)", "Unicode [0x2700, 0x27bf]"); + formCheckbox("Letterlike_Symbols", "字母式符号(?)", "Unicode [0x2100, 0x214f]"); + formCheckbox("Enclosed_Alphanumerics", "带圈或括号的字母数字(?)", "Unicode [0x2460, 0x24ff]"); + formCheckbox("Number_Forms", "数字形式(?)", "Unicode [0x2150, 0x218f]"); + formCheckbox("Currency_Symbols", "货币符号(?)", "Unicode [0x20a0, 0x20cf]"); + formCheckbox("Arrows", "箭头(?)", "Unicode [0x2190, 0x21ff]"); + formCheckbox("Geometric_Shapes", "几何图形(?)", "Unicode [0x25a0, 0x25ff]"); + formCheckbox("Mathematical_Operators", "数学运算符号(?)", "Unicode [0x2200, 0x22ff]"); + formInput("CustomUnicode", "自定义Unicode(?)", "将填入的所有字符强制加入字体预加载列表"); + } + + public void OnBuildButtonGUI(EditorWindow window) { GUIStyle linkStyle = new GUIStyle(GUI.skin.label); @@ -368,6 +540,7 @@ namespace WeChatWASM private bool foldBaseInfo = true; private bool foldLoadingConfig = true; private bool foldSDKOptions = true; + private bool foldPCHighPerformance = true; private bool foldDebugOptions = true; private bool foldInstantGame = false; private bool foldFontOptions = false; @@ -426,162 +599,458 @@ namespace WeChatWASM } } - this.setData("projectName", config.ProjectConf.projectName); - this.setData("appid", config.ProjectConf.Appid); - this.setData("cdn", config.ProjectConf.CDN); - this.setData("assetLoadType", config.ProjectConf.assetLoadType); - this.setData("compressDataPackage", config.ProjectConf.compressDataPackage); - this.setData("videoUrl", config.ProjectConf.VideoUrl); - this.setData("orientation", (int)config.ProjectConf.Orientation); - this.setData("dst", config.ProjectConf.relativeDST); - this.setData("bundleHashLength", config.ProjectConf.bundleHashLength.ToString()); - this.setData("bundlePathIdentifier", config.ProjectConf.bundlePathIdentifier); - this.setData("bundleExcludeExtensions", config.ProjectConf.bundleExcludeExtensions); - this.setData("preloadFiles", config.ProjectConf.preloadFiles); - this.setData("developBuild", config.CompileOptions.DevelopBuild); - this.setData("autoProfile", config.CompileOptions.AutoProfile); - this.setData("scriptOnly", config.CompileOptions.ScriptOnly); - this.setData("il2CppOptimizeSize", config.CompileOptions.Il2CppOptimizeSize); - this.setData("profilingFuncs", config.CompileOptions.profilingFuncs); - this.setData("profilingMemory", config.CompileOptions.ProfilingMemory); - this.setData("deleteStreamingAssets", config.CompileOptions.DeleteStreamingAssets); - this.setData("cleanBuild", config.CompileOptions.CleanBuild); - this.setData("customNodePath", config.CompileOptions.CustomNodePath); - this.setData("webgl2", config.CompileOptions.Webgl2); - this.setData("iOSPerformancePlus", config.CompileOptions.enableIOSPerformancePlus); - this.setData("iOSMetal", config.CompileOptions.enableiOSMetal); - this.setData("EmscriptenGLX", config.CompileOptions.enableEmscriptenGLX); - this.setData("fbslim", config.CompileOptions.fbslim); - this.setData("useFriendRelation", config.SDKOptions.UseFriendRelation); - this.setData("useMiniGameChat", config.SDKOptions.UseMiniGameChat); - this.setData("preloadWXFont", config.SDKOptions.PreloadWXFont); - this.setData("disableMultiTouch", config.SDKOptions.disableMultiTouch); - this.setData("bgImageSrc", config.ProjectConf.bgImageSrc); - tex = AssetDatabase.LoadAssetAtPath(config.ProjectConf.bgImageSrc); - this.setData("memorySize", config.ProjectConf.MemorySize.ToString()); - this.setData("hideAfterCallMain", config.ProjectConf.HideAfterCallMain); - - this.setData("dataFileSubPrefix", config.ProjectConf.dataFileSubPrefix); - this.setData("maxStorage", config.ProjectConf.maxStorage.ToString()); - this.setData("defaultReleaseSize", config.ProjectConf.defaultReleaseSize.ToString()); - this.setData("texturesHashLength", config.ProjectConf.texturesHashLength.ToString()); - this.setData("texturesPath", config.ProjectConf.texturesPath); - this.setData("needCacheTextures", config.ProjectConf.needCacheTextures); - this.setData("loadingBarWidth", config.ProjectConf.loadingBarWidth.ToString()); - this.setData("needCheckUpdate", config.ProjectConf.needCheckUpdate); - this.setData("disableHighPerformanceFallback", config.ProjectConf.disableHighPerformanceFallback); - this.setData("autoAdaptScreen", config.CompileOptions.autoAdaptScreen); - this.setData("showMonitorSuggestModal", config.CompileOptions.showMonitorSuggestModal); - this.setData("enableProfileStats", config.CompileOptions.enableProfileStats); - this.setData("enableRenderAnalysis", config.CompileOptions.enableRenderAnalysis); - this.setData("brotliMT", config.CompileOptions.brotliMT); -#if UNITY_6000_0_OR_NEWER - this.setData("enableWasm2023", config.CompileOptions.enableWasm2023); -#endif - this.setData("enablePerfAnalysis", config.CompileOptions.enablePerfAnalysis); this.setData("autoUploadFirstBundle", true); + loadProjectConfData(config.ProjectConf); + loadSDKOptionsData(config.SDKOptions); + loadCompileOptionsData(config.CompileOptions); + loadFontOptionsData(config.FontOptions); + } - // font options - this.setData("CJK_Unified_Ideographs", config.FontOptions.CJK_Unified_Ideographs); - this.setData("C0_Controls_and_Basic_Latin", config.FontOptions.C0_Controls_and_Basic_Latin); - this.setData("CJK_Symbols_and_Punctuation", config.FontOptions.CJK_Symbols_and_Punctuation); - this.setData("General_Punctuation", config.FontOptions.General_Punctuation); - this.setData("Enclosed_CJK_Letters_and_Months", config.FontOptions.Enclosed_CJK_Letters_and_Months); - this.setData("Vertical_Forms", config.FontOptions.Vertical_Forms); - this.setData("CJK_Compatibility_Forms", config.FontOptions.CJK_Compatibility_Forms); - this.setData("Miscellaneous_Symbols", config.FontOptions.Miscellaneous_Symbols); - this.setData("CJK_Compatibility", config.FontOptions.CJK_Compatibility); - this.setData("Halfwidth_and_Fullwidth_Forms", config.FontOptions.Halfwidth_and_Fullwidth_Forms); - this.setData("Dingbats", config.FontOptions.Dingbats); - this.setData("Letterlike_Symbols", config.FontOptions.Letterlike_Symbols); - this.setData("Enclosed_Alphanumerics", config.FontOptions.Enclosed_Alphanumerics); - this.setData("Number_Forms", config.FontOptions.Number_Forms); - this.setData("Currency_Symbols", config.FontOptions.Currency_Symbols); - this.setData("Arrows", config.FontOptions.Arrows); - this.setData("Geometric_Shapes", config.FontOptions.Geometric_Shapes); - this.setData("Mathematical_Operators", config.FontOptions.Mathematical_Operators); - this.setData("CustomUnicode", config.FontOptions.CustomUnicode); + private void loadData(SerializedObject serializedObject, SerializedProperty miniGameProperty) + { + serializedObject.UpdateIfRequiredOrScript(); + var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); + + // Instant Game + if (WXConvertCore.IsInstantGameAutoStreaming()) + { + var automaticfillinstantgame = miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame"); + if (automaticfillinstantgame.boolValue) + { + ProjectConf.FindPropertyRelative("CDN").stringValue = WXConvertCore.GetInstantGameAutoStreamingCDN(); + if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("AS;")) + { + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "AS;"; + } + if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("CUS/CustomAB;")) + { + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "CUS/CustomAB;"; + } + ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = "CUS"; + } + } + + var _ProjectConf = new WXProjectConf(); + deserializeProjectConf(_ProjectConf, ProjectConf); + loadProjectConfData(_ProjectConf); + + var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions"); + var _SDKOptions = new SDKOptions(); + deserializeSDKOptions(_SDKOptions, SDKOptions); + loadSDKOptionsData(_SDKOptions); + + var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions"); + var _CompileOptions = new CompileOptions(); + deserializeCompileOptions(_CompileOptions, CompileOptions); + loadCompileOptionsData(_CompileOptions); + + var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions"); + var _FontOptions = new FontOptions(); + deserializeFontOptions(_FontOptions, FontOptions); + loadFontOptionsData(_FontOptions); + } + + private void loadProjectConfData(WXProjectConf ProjectConf) + { + this.setData("projectName", ProjectConf.projectName); + this.setData("appid", ProjectConf.Appid); + this.setData("cdn", ProjectConf.CDN); + this.setData("assetLoadType", ProjectConf.assetLoadType); + this.setData("compressDataPackage", ProjectConf.compressDataPackage); + this.setData("videoUrl", ProjectConf.VideoUrl); + this.setData("orientation", (int)ProjectConf.Orientation); + this.setData("dst", ProjectConf.relativeDST); + this.setData("bundleHashLength", ProjectConf.bundleHashLength.ToString()); + this.setData("bundlePathIdentifier", ProjectConf.bundlePathIdentifier); + this.setData("bundleExcludeExtensions", ProjectConf.bundleExcludeExtensions); + this.setData("preloadFiles", ProjectConf.preloadFiles); + this.setData("bgImageSrc", ProjectConf.bgImageSrc); + + tex = AssetDatabase.LoadAssetAtPath(ProjectConf.bgImageSrc); + this.setData("memorySize", ProjectConf.MemorySize.ToString()); + this.setData("hideAfterCallMain", ProjectConf.HideAfterCallMain); + + this.setData("dataFileSubPrefix", ProjectConf.dataFileSubPrefix); + this.setData("maxStorage", ProjectConf.maxStorage.ToString()); + this.setData("defaultReleaseSize", ProjectConf.defaultReleaseSize.ToString()); + this.setData("texturesHashLength", ProjectConf.texturesHashLength.ToString()); + this.setData("texturesPath", ProjectConf.texturesPath); + this.setData("needCacheTextures", ProjectConf.needCacheTextures); + this.setData("loadingBarWidth", ProjectConf.loadingBarWidth.ToString()); + this.setData("needCheckUpdate", ProjectConf.needCheckUpdate); + this.setData("disableHighPerformanceFallback", ProjectConf.disableHighPerformanceFallback); + this.setData("enablePCHighPerformance", ProjectConf.EnablePCHighPerformance); + } + + private void loadSDKOptionsData(SDKOptions SDKOptions) + { + this.setData("useFriendRelation", SDKOptions.UseFriendRelation); + this.setData("useMiniGameChat", SDKOptions.UseMiniGameChat); + this.setData("preloadWXFont", SDKOptions.PreloadWXFont); + this.setData("disableMultiTouch", SDKOptions.disableMultiTouch); + } + + private void loadCompileOptionsData(CompileOptions CompileOptions) + { + this.setData("developBuild", CompileOptions.DevelopBuild); + this.setData("autoProfile", CompileOptions.AutoProfile); + this.setData("scriptOnly", CompileOptions.ScriptOnly); + this.setData("il2CppOptimizeSize", CompileOptions.Il2CppOptimizeSize); + this.setData("profilingFuncs", CompileOptions.profilingFuncs); + this.setData("profilingMemory", CompileOptions.ProfilingMemory); + this.setData("deleteStreamingAssets", CompileOptions.DeleteStreamingAssets); + this.setData("cleanBuild", CompileOptions.CleanBuild); + this.setData("customNodePath", CompileOptions.CustomNodePath); + this.setData("webgl2", CompileOptions.Webgl2); + this.setData("iOSPerformancePlus", CompileOptions.enableIOSPerformancePlus); + this.setData("iOSMetal", CompileOptions.enableiOSMetal); + this.setData("EmscriptenGLX", CompileOptions.enableEmscriptenGLX); + this.setData("fbslim", CompileOptions.fbslim); + this.setData("autoAdaptScreen", CompileOptions.autoAdaptScreen); + this.setData("showMonitorSuggestModal", CompileOptions.showMonitorSuggestModal); + this.setData("enableProfileStats", CompileOptions.enableProfileStats); + this.setData("enableRenderAnalysis", CompileOptions.enableRenderAnalysis); + this.setData("brotliMT", CompileOptions.brotliMT); +#if UNITY_6000_0_OR_NEWER + this.setData("enableWasm2023", CompileOptions.enableWasm2023); +#endif + this.setData("enablePerfAnalysis", CompileOptions.enablePerfAnalysis); + } + + private void loadFontOptionsData(FontOptions FontOptions) + { + this.setData("CJK_Unified_Ideographs", FontOptions.CJK_Unified_Ideographs); + this.setData("C0_Controls_and_Basic_Latin", FontOptions.C0_Controls_and_Basic_Latin); + this.setData("CJK_Symbols_and_Punctuation", FontOptions.CJK_Symbols_and_Punctuation); + this.setData("General_Punctuation", FontOptions.General_Punctuation); + this.setData("Enclosed_CJK_Letters_and_Months", FontOptions.Enclosed_CJK_Letters_and_Months); + this.setData("Vertical_Forms", FontOptions.Vertical_Forms); + this.setData("CJK_Compatibility_Forms", FontOptions.CJK_Compatibility_Forms); + this.setData("Miscellaneous_Symbols", FontOptions.Miscellaneous_Symbols); + this.setData("CJK_Compatibility", FontOptions.CJK_Compatibility); + this.setData("Halfwidth_and_Fullwidth_Forms", FontOptions.Halfwidth_and_Fullwidth_Forms); + this.setData("Dingbats", FontOptions.Dingbats); + this.setData("Letterlike_Symbols", FontOptions.Letterlike_Symbols); + this.setData("Enclosed_Alphanumerics", FontOptions.Enclosed_Alphanumerics); + this.setData("Number_Forms", FontOptions.Number_Forms); + this.setData("Currency_Symbols", FontOptions.Currency_Symbols); + this.setData("Arrows", FontOptions.Arrows); + this.setData("Geometric_Shapes", FontOptions.Geometric_Shapes); + this.setData("Mathematical_Operators", FontOptions.Mathematical_Operators); + this.setData("CustomUnicode", FontOptions.CustomUnicode); } private void saveData() { - config.ProjectConf.projectName = this.getDataInput("projectName"); - config.ProjectConf.Appid = this.getDataInput("appid"); - config.ProjectConf.CDN = this.getDataInput("cdn"); - config.ProjectConf.assetLoadType = this.getDataPop("assetLoadType"); - config.ProjectConf.compressDataPackage = this.getDataCheckbox("compressDataPackage"); - config.ProjectConf.VideoUrl = this.getDataInput("videoUrl"); - config.ProjectConf.Orientation = (WXScreenOritation)this.getDataPop("orientation"); - config.ProjectConf.relativeDST = this.getDataInput("dst"); - config.ProjectConf.DST = GetAbsolutePath(config.ProjectConf.relativeDST); - config.ProjectConf.bundleHashLength = int.Parse(this.getDataInput("bundleHashLength")); - config.ProjectConf.bundlePathIdentifier = this.getDataInput("bundlePathIdentifier"); - config.ProjectConf.bundleExcludeExtensions = this.getDataInput("bundleExcludeExtensions"); - config.ProjectConf.preloadFiles = this.getDataInput("preloadFiles"); - config.CompileOptions.DevelopBuild = this.getDataCheckbox("developBuild"); - config.CompileOptions.AutoProfile = this.getDataCheckbox("autoProfile"); - config.CompileOptions.ScriptOnly = this.getDataCheckbox("scriptOnly"); - config.CompileOptions.Il2CppOptimizeSize = this.getDataCheckbox("il2CppOptimizeSize"); - config.CompileOptions.profilingFuncs = this.getDataCheckbox("profilingFuncs"); - config.CompileOptions.ProfilingMemory = this.getDataCheckbox("profilingMemory"); - config.CompileOptions.DeleteStreamingAssets = this.getDataCheckbox("deleteStreamingAssets"); - config.CompileOptions.CleanBuild = this.getDataCheckbox("cleanBuild"); - config.CompileOptions.CustomNodePath = this.getDataInput("customNodePath"); - config.CompileOptions.Webgl2 = this.getDataCheckbox("webgl2"); - config.CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus"); - config.CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal"); - config.CompileOptions.enableEmscriptenGLX = this.getDataCheckbox("EmscriptenGLX"); - config.CompileOptions.fbslim = this.getDataCheckbox("fbslim"); - config.SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation"); - config.SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat"); - config.SDKOptions.PreloadWXFont = this.getDataCheckbox("preloadWXFont"); - config.SDKOptions.disableMultiTouch = this.getDataCheckbox("disableMultiTouch"); - config.ProjectConf.bgImageSrc = this.getDataInput("bgImageSrc"); - config.ProjectConf.MemorySize = int.Parse(this.getDataInput("memorySize")); - config.ProjectConf.HideAfterCallMain = this.getDataCheckbox("hideAfterCallMain"); - config.ProjectConf.dataFileSubPrefix = this.getDataInput("dataFileSubPrefix"); - config.ProjectConf.maxStorage = int.Parse(this.getDataInput("maxStorage")); - config.ProjectConf.defaultReleaseSize = int.Parse(this.getDataInput("defaultReleaseSize")); - config.ProjectConf.texturesHashLength = int.Parse(this.getDataInput("texturesHashLength")); - config.ProjectConf.texturesPath = this.getDataInput("texturesPath"); - config.ProjectConf.needCacheTextures = this.getDataCheckbox("needCacheTextures"); - config.ProjectConf.loadingBarWidth = int.Parse(this.getDataInput("loadingBarWidth")); - config.ProjectConf.needCheckUpdate = this.getDataCheckbox("needCheckUpdate"); - config.ProjectConf.disableHighPerformanceFallback = this.getDataCheckbox("disableHighPerformanceFallback"); - config.CompileOptions.autoAdaptScreen = this.getDataCheckbox("autoAdaptScreen"); - config.CompileOptions.showMonitorSuggestModal = this.getDataCheckbox("showMonitorSuggestModal"); - config.CompileOptions.enableProfileStats = this.getDataCheckbox("enableProfileStats"); - config.CompileOptions.enableRenderAnalysis = this.getDataCheckbox("enableRenderAnalysis"); - config.CompileOptions.brotliMT = this.getDataCheckbox("brotliMT"); -#if UNITY_6000_0_OR_NEWER - config.CompileOptions.enableWasm2023 = this.getDataCheckbox("enableWasm2023"); -#endif - config.CompileOptions.enablePerfAnalysis = this.getDataCheckbox("enablePerfAnalysis"); - - // font options - config.FontOptions.CJK_Unified_Ideographs = this.getDataCheckbox("CJK_Unified_Ideographs"); - config.FontOptions.C0_Controls_and_Basic_Latin = this.getDataCheckbox("C0_Controls_and_Basic_Latin"); - config.FontOptions.CJK_Symbols_and_Punctuation = this.getDataCheckbox("CJK_Symbols_and_Punctuation"); - config.FontOptions.General_Punctuation = this.getDataCheckbox("General_Punctuation"); - config.FontOptions.Enclosed_CJK_Letters_and_Months = this.getDataCheckbox("Enclosed_CJK_Letters_and_Months"); - config.FontOptions.Vertical_Forms = this.getDataCheckbox("Vertical_Forms"); - config.FontOptions.CJK_Compatibility_Forms = this.getDataCheckbox("CJK_Compatibility_Forms"); - config.FontOptions.Miscellaneous_Symbols = this.getDataCheckbox("Miscellaneous_Symbols"); - config.FontOptions.CJK_Compatibility = this.getDataCheckbox("CJK_Compatibility"); - config.FontOptions.Halfwidth_and_Fullwidth_Forms = this.getDataCheckbox("Halfwidth_and_Fullwidth_Forms"); - config.FontOptions.Dingbats = this.getDataCheckbox("Dingbats"); - config.FontOptions.Letterlike_Symbols = this.getDataCheckbox("Letterlike_Symbols"); - config.FontOptions.Enclosed_Alphanumerics = this.getDataCheckbox("Enclosed_Alphanumerics"); - config.FontOptions.Number_Forms = this.getDataCheckbox("Number_Forms"); - config.FontOptions.Currency_Symbols = this.getDataCheckbox("Currency_Symbols"); - config.FontOptions.Arrows = this.getDataCheckbox("Arrows"); - config.FontOptions.Geometric_Shapes = this.getDataCheckbox("Geometric_Shapes"); - config.FontOptions.Mathematical_Operators = this.getDataCheckbox("Mathematical_Operators"); - config.FontOptions.CustomUnicode = this.getDataInput("CustomUnicode"); + saveProjectConfData(config.ProjectConf); + saveSDKOptionsData(config.SDKOptions); + saveCompileOptionsData(config.CompileOptions); + saveFontOptionsData(config.FontOptions); ApplyPerfAnalysisSetting(); } + private void saveData(SerializedObject serializedObject, SerializedProperty miniGameProperty) + { + serializedObject.UpdateIfRequiredOrScript(); + + var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf"); + var _ProjectConf = new WXProjectConf(); + saveProjectConfData(_ProjectConf); + serializeProjectConf(_ProjectConf, ProjectConf); + + var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions"); + var _CompileOptions = new CompileOptions(); + saveCompileOptionsData(_CompileOptions); + serializeCompileOptions(_CompileOptions, CompileOptions); + + var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions"); + var _SDKOptions = new SDKOptions(); + saveSDKOptionsData(_SDKOptions); + serializeSDKOptions(_SDKOptions, SDKOptions); + + var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions"); + var _FontOptions = new FontOptions(); + saveFontOptionsData(_FontOptions); + serializeFontOptions(_FontOptions, FontOptions); + + miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue = getDataCheckbox("m_AutomaticFillInstantGame"); + + serializedObject.ApplyModifiedProperties(); + } + + private void saveProjectConfData(WXProjectConf ProjectConf) + { + ProjectConf.projectName = this.getDataInput("projectName"); + ProjectConf.Appid = this.getDataInput("appid"); + ProjectConf.CDN = this.getDataInput("cdn"); + ProjectConf.assetLoadType = this.getDataPop("assetLoadType"); + ProjectConf.compressDataPackage = this.getDataCheckbox("compressDataPackage"); + ProjectConf.VideoUrl = this.getDataInput("videoUrl"); + ProjectConf.Orientation = (WXScreenOritation)this.getDataPop("orientation"); + ProjectConf.relativeDST = this.getDataInput("dst"); + ProjectConf.DST = GetAbsolutePath(ProjectConf.relativeDST); + ProjectConf.bundleHashLength = int.Parse(this.getDataInput("bundleHashLength")); + ProjectConf.bundlePathIdentifier = this.getDataInput("bundlePathIdentifier"); + ProjectConf.bundleExcludeExtensions = this.getDataInput("bundleExcludeExtensions"); + ProjectConf.preloadFiles = this.getDataInput("preloadFiles"); + + ProjectConf.bgImageSrc = this.getDataInput("bgImageSrc"); + ProjectConf.MemorySize = int.Parse(this.getDataInput("memorySize")); + ProjectConf.HideAfterCallMain = this.getDataCheckbox("hideAfterCallMain"); + ProjectConf.dataFileSubPrefix = this.getDataInput("dataFileSubPrefix"); + ProjectConf.maxStorage = int.Parse(this.getDataInput("maxStorage")); + ProjectConf.defaultReleaseSize = int.Parse(this.getDataInput("defaultReleaseSize")); + ProjectConf.texturesHashLength = int.Parse(this.getDataInput("texturesHashLength")); + ProjectConf.texturesPath = this.getDataInput("texturesPath"); + ProjectConf.needCacheTextures = this.getDataCheckbox("needCacheTextures"); + ProjectConf.loadingBarWidth = int.Parse(this.getDataInput("loadingBarWidth")); + ProjectConf.needCheckUpdate = this.getDataCheckbox("needCheckUpdate"); + ProjectConf.disableHighPerformanceFallback = this.getDataCheckbox("disableHighPerformanceFallback"); + ProjectConf.EnablePCHighPerformance = this.getDataCheckbox("enablePCHighPerformance"); + } + + private void saveSDKOptionsData(SDKOptions SDKOptions) + { + SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation"); + SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat"); + SDKOptions.PreloadWXFont = this.getDataCheckbox("preloadWXFont"); + SDKOptions.disableMultiTouch = this.getDataCheckbox("disableMultiTouch"); + } + + private void saveCompileOptionsData(CompileOptions CompileOptions) + { + CompileOptions.DevelopBuild = this.getDataCheckbox("developBuild"); + CompileOptions.AutoProfile = this.getDataCheckbox("autoProfile"); + CompileOptions.ScriptOnly = this.getDataCheckbox("scriptOnly"); + CompileOptions.Il2CppOptimizeSize = this.getDataCheckbox("il2CppOptimizeSize"); + CompileOptions.profilingFuncs = this.getDataCheckbox("profilingFuncs"); + CompileOptions.ProfilingMemory = this.getDataCheckbox("profilingMemory"); + CompileOptions.DeleteStreamingAssets = this.getDataCheckbox("deleteStreamingAssets"); + CompileOptions.CleanBuild = this.getDataCheckbox("cleanBuild"); + CompileOptions.CustomNodePath = this.getDataInput("customNodePath"); + CompileOptions.Webgl2 = this.getDataCheckbox("webgl2"); + CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus"); + CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal"); + CompileOptions.enableEmscriptenGLX = this.getDataCheckbox("EmscriptenGLX"); + CompileOptions.fbslim = this.getDataCheckbox("fbslim"); + + CompileOptions.autoAdaptScreen = this.getDataCheckbox("autoAdaptScreen"); + CompileOptions.showMonitorSuggestModal = this.getDataCheckbox("showMonitorSuggestModal"); + CompileOptions.enableProfileStats = this.getDataCheckbox("enableProfileStats"); + CompileOptions.enableRenderAnalysis = this.getDataCheckbox("enableRenderAnalysis"); + CompileOptions.brotliMT = this.getDataCheckbox("brotliMT"); +#if UNITY_6000_0_OR_NEWER + CompileOptions.enableWasm2023 = this.getDataCheckbox("enableWasm2023"); +#endif + CompileOptions.enablePerfAnalysis = this.getDataCheckbox("enablePerfAnalysis"); + } + + private void saveFontOptionsData(FontOptions FontOptions) + { + FontOptions.CJK_Unified_Ideographs = this.getDataCheckbox("CJK_Unified_Ideographs"); + FontOptions.C0_Controls_and_Basic_Latin = this.getDataCheckbox("C0_Controls_and_Basic_Latin"); + FontOptions.CJK_Symbols_and_Punctuation = this.getDataCheckbox("CJK_Symbols_and_Punctuation"); + FontOptions.General_Punctuation = this.getDataCheckbox("General_Punctuation"); + FontOptions.Enclosed_CJK_Letters_and_Months = this.getDataCheckbox("Enclosed_CJK_Letters_and_Months"); + FontOptions.Vertical_Forms = this.getDataCheckbox("Vertical_Forms"); + FontOptions.CJK_Compatibility_Forms = this.getDataCheckbox("CJK_Compatibility_Forms"); + FontOptions.Miscellaneous_Symbols = this.getDataCheckbox("Miscellaneous_Symbols"); + FontOptions.CJK_Compatibility = this.getDataCheckbox("CJK_Compatibility"); + FontOptions.Halfwidth_and_Fullwidth_Forms = this.getDataCheckbox("Halfwidth_and_Fullwidth_Forms"); + FontOptions.Dingbats = this.getDataCheckbox("Dingbats"); + FontOptions.Letterlike_Symbols = this.getDataCheckbox("Letterlike_Symbols"); + FontOptions.Enclosed_Alphanumerics = this.getDataCheckbox("Enclosed_Alphanumerics"); + FontOptions.Number_Forms = this.getDataCheckbox("Number_Forms"); + FontOptions.Currency_Symbols = this.getDataCheckbox("Currency_Symbols"); + FontOptions.Arrows = this.getDataCheckbox("Arrows"); + FontOptions.Geometric_Shapes = this.getDataCheckbox("Geometric_Shapes"); + FontOptions.Mathematical_Operators = this.getDataCheckbox("Mathematical_Operators"); + FontOptions.CustomUnicode = this.getDataInput("CustomUnicode"); + } + + private void deserializeProjectConf(WXProjectConf _ProjectConf, SerializedProperty ProjectConf) + { + _ProjectConf.projectName = ProjectConf.FindPropertyRelative("projectName").stringValue; + _ProjectConf.Appid = ProjectConf.FindPropertyRelative("Appid").stringValue; + _ProjectConf.CDN = ProjectConf.FindPropertyRelative("CDN").stringValue; + _ProjectConf.assetLoadType = ProjectConf.FindPropertyRelative("assetLoadType").intValue; + _ProjectConf.compressDataPackage = ProjectConf.FindPropertyRelative("compressDataPackage").boolValue; + _ProjectConf.VideoUrl = ProjectConf.FindPropertyRelative("VideoUrl").stringValue; + _ProjectConf.Orientation = (WXScreenOritation)ProjectConf.FindPropertyRelative("Orientation").enumValueIndex; + _ProjectConf.relativeDST = ProjectConf.FindPropertyRelative("relativeDST").stringValue; + _ProjectConf.DST = ProjectConf.FindPropertyRelative("DST").stringValue; + + _ProjectConf.bundleHashLength = ProjectConf.FindPropertyRelative("bundleHashLength").intValue; + _ProjectConf.bundlePathIdentifier = ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue; + _ProjectConf.bundleExcludeExtensions = ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue; + _ProjectConf.preloadFiles = ProjectConf.FindPropertyRelative("preloadFiles").stringValue; + _ProjectConf.bgImageSrc = ProjectConf.FindPropertyRelative("bgImageSrc").stringValue; + _ProjectConf.MemorySize = ProjectConf.FindPropertyRelative("MemorySize").intValue; + _ProjectConf.HideAfterCallMain = ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue; + _ProjectConf.dataFileSubPrefix = ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue; + _ProjectConf.maxStorage = ProjectConf.FindPropertyRelative("maxStorage").intValue; + _ProjectConf.defaultReleaseSize = ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue; + _ProjectConf.texturesHashLength = ProjectConf.FindPropertyRelative("texturesHashLength").intValue; + _ProjectConf.texturesPath = ProjectConf.FindPropertyRelative("texturesPath").stringValue; + _ProjectConf.needCacheTextures = ProjectConf.FindPropertyRelative("needCacheTextures").boolValue; + _ProjectConf.loadingBarWidth = ProjectConf.FindPropertyRelative("loadingBarWidth").intValue; + _ProjectConf.needCheckUpdate = ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue; + _ProjectConf.disableHighPerformanceFallback = ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue; + _ProjectConf.EnablePCHighPerformance = ProjectConf.FindPropertyRelative("EnablePCHighPerformance").boolValue; + } + private void serializeProjectConf(WXProjectConf _ProjectConf, SerializedProperty ProjectConf) + { + ProjectConf.FindPropertyRelative("projectName").stringValue = _ProjectConf.projectName; + ProjectConf.FindPropertyRelative("Appid").stringValue = _ProjectConf.Appid; + ProjectConf.FindPropertyRelative("CDN").stringValue = _ProjectConf.CDN; + ProjectConf.FindPropertyRelative("assetLoadType").intValue = _ProjectConf.assetLoadType; + ProjectConf.FindPropertyRelative("compressDataPackage").boolValue = _ProjectConf.compressDataPackage; + ProjectConf.FindPropertyRelative("VideoUrl").stringValue = _ProjectConf.VideoUrl; + ProjectConf.FindPropertyRelative("Orientation").enumValueIndex = (int)_ProjectConf.Orientation; + ProjectConf.FindPropertyRelative("relativeDST").stringValue = _ProjectConf.relativeDST; + ProjectConf.FindPropertyRelative("DST").stringValue = _ProjectConf.DST; + + ProjectConf.FindPropertyRelative("bundleHashLength").intValue = _ProjectConf.bundleHashLength; + ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = _ProjectConf.bundlePathIdentifier; + ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue = _ProjectConf.bundleExcludeExtensions; + ProjectConf.FindPropertyRelative("preloadFiles").stringValue = _ProjectConf.preloadFiles; + ProjectConf.FindPropertyRelative("bgImageSrc").stringValue = _ProjectConf.bgImageSrc; + ProjectConf.FindPropertyRelative("MemorySize").intValue = _ProjectConf.MemorySize; + ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue = _ProjectConf.HideAfterCallMain; + ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = _ProjectConf.dataFileSubPrefix; + ProjectConf.FindPropertyRelative("maxStorage").intValue = _ProjectConf.maxStorage; + ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue = _ProjectConf.defaultReleaseSize; + ProjectConf.FindPropertyRelative("texturesHashLength").intValue = _ProjectConf.texturesHashLength; + ProjectConf.FindPropertyRelative("texturesPath").stringValue = _ProjectConf.texturesPath; + ProjectConf.FindPropertyRelative("needCacheTextures").boolValue = _ProjectConf.needCacheTextures; + ProjectConf.FindPropertyRelative("loadingBarWidth").intValue = _ProjectConf.loadingBarWidth; + ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue = _ProjectConf.needCheckUpdate; + ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue = _ProjectConf.disableHighPerformanceFallback; + ProjectConf.FindPropertyRelative("EnablePCHighPerformance").boolValue = _ProjectConf.EnablePCHighPerformance; + + //miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue = getDataCheckbox("m_AutomaticFillInstantGame"); + + } + + private void deserializeSDKOptions(SDKOptions _SDKOptions, SerializedProperty SDKOptions) + { + _SDKOptions.UseFriendRelation = SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue; + _SDKOptions.UseMiniGameChat = SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue; + _SDKOptions.PreloadWXFont = SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue; + _SDKOptions.disableMultiTouch = SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue; + } + private void serializeSDKOptions(SDKOptions _SDKOptionsf, SerializedProperty SDKOptions) + { + SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue = _SDKOptionsf.UseFriendRelation; + SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue = _SDKOptionsf.UseMiniGameChat; + SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue = _SDKOptionsf.PreloadWXFont; + SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue = _SDKOptionsf.disableMultiTouch; + } + + private void deserializeCompileOptions(CompileOptions _CompileOptions, SerializedProperty CompileOptions) + { + //CompileOptions.FindPropertyRelative("DevelopBuild").boolValue = serializedObject.FindProperty("m_PlatformSettings").FindPropertyRelative("m_Development").boolValue; + _CompileOptions.DevelopBuild = CompileOptions.FindPropertyRelative("DevelopBuild").boolValue; + _CompileOptions.AutoProfile = CompileOptions.FindPropertyRelative("AutoProfile").boolValue; + _CompileOptions.ScriptOnly = CompileOptions.FindPropertyRelative("ScriptOnly").boolValue; + _CompileOptions.Il2CppOptimizeSize = CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue; + _CompileOptions.profilingFuncs = CompileOptions.FindPropertyRelative("profilingFuncs").boolValue; + _CompileOptions.ProfilingMemory = CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue; + _CompileOptions.DeleteStreamingAssets = CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue; + _CompileOptions.CleanBuild = CompileOptions.FindPropertyRelative("CleanBuild").boolValue; + _CompileOptions.CustomNodePath = CompileOptions.FindPropertyRelative("CustomNodePath").stringValue; + _CompileOptions.Webgl2 = CompileOptions.FindPropertyRelative("Webgl2").boolValue; + _CompileOptions.enableIOSPerformancePlus = CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue; + _CompileOptions.enableiOSMetal = CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue; + _CompileOptions.enableEmscriptenGLX = CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue; + _CompileOptions.fbslim = CompileOptions.FindPropertyRelative("fbslim").boolValue; + + _CompileOptions.autoAdaptScreen = CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue; + _CompileOptions.showMonitorSuggestModal = CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue; + _CompileOptions.enableProfileStats = CompileOptions.FindPropertyRelative("enableProfileStats").boolValue; + _CompileOptions.enableRenderAnalysis = CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue; + _CompileOptions.brotliMT = CompileOptions.FindPropertyRelative("brotliMT").boolValue; +#if UNITY_6000_0_OR_NEWER + _CompileOptions.enableWasm2023 = CompileOptions.FindPropertyRelative("enableWasm2023").boolValue; +#endif + _CompileOptions.enablePerfAnalysis = CompileOptions.FindPropertyRelative("enablePerfAnalysis").boolValue; + } + private void serializeCompileOptions(CompileOptions _CompileOptions, SerializedProperty CompileOptions) + { + //CompileOptions.FindPropertyRelative("DevelopBuild").boolValue = serializedObject.FindProperty("m_PlatformSettings").FindPropertyRelative("m_Development").boolValue; + CompileOptions.FindPropertyRelative("AutoProfile").boolValue = _CompileOptions.AutoProfile; + CompileOptions.FindPropertyRelative("ScriptOnly").boolValue = _CompileOptions.ScriptOnly; + CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue = _CompileOptions.Il2CppOptimizeSize; + CompileOptions.FindPropertyRelative("profilingFuncs").boolValue = _CompileOptions.profilingFuncs; + CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue = _CompileOptions.ProfilingMemory; + CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue = _CompileOptions.DeleteStreamingAssets; + CompileOptions.FindPropertyRelative("CleanBuild").boolValue = _CompileOptions.CleanBuild; + CompileOptions.FindPropertyRelative("CustomNodePath").stringValue = _CompileOptions.CustomNodePath; + CompileOptions.FindPropertyRelative("Webgl2").boolValue = _CompileOptions.Webgl2; + CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue = _CompileOptions.enableIOSPerformancePlus; + CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue = _CompileOptions.enableiOSMetal; + CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue = _CompileOptions.enableEmscriptenGLX; + CompileOptions.FindPropertyRelative("fbslim").boolValue = _CompileOptions.fbslim; + + CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue = _CompileOptions.autoAdaptScreen; + CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue = _CompileOptions.showMonitorSuggestModal; + CompileOptions.FindPropertyRelative("enableProfileStats").boolValue = _CompileOptions.enableProfileStats; + CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue = _CompileOptions.enableRenderAnalysis; + CompileOptions.FindPropertyRelative("brotliMT").boolValue = _CompileOptions.brotliMT; + + } + + private void deserializeFontOptions(FontOptions _FontOptions, SerializedProperty FontOptions) + { + _FontOptions.CJK_Unified_Ideographs = FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue; + _FontOptions.C0_Controls_and_Basic_Latin = FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue; + _FontOptions.CJK_Symbols_and_Punctuation = FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue; + _FontOptions.General_Punctuation = FontOptions.FindPropertyRelative("General_Punctuation").boolValue; + _FontOptions.Enclosed_CJK_Letters_and_Months = FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue; + _FontOptions.Vertical_Forms = FontOptions.FindPropertyRelative("Vertical_Forms").boolValue; + _FontOptions.CJK_Compatibility_Forms = FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue; + _FontOptions.Miscellaneous_Symbols = FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue; + _FontOptions.CJK_Compatibility = FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue; + _FontOptions.Halfwidth_and_Fullwidth_Forms = FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue; + _FontOptions.Dingbats = FontOptions.FindPropertyRelative("Dingbats").boolValue; + _FontOptions.Letterlike_Symbols = FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue; + _FontOptions.Enclosed_Alphanumerics = FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue; + _FontOptions.Number_Forms = FontOptions.FindPropertyRelative("Number_Forms").boolValue; + _FontOptions.Currency_Symbols = FontOptions.FindPropertyRelative("Currency_Symbols").boolValue; + _FontOptions.Arrows = FontOptions.FindPropertyRelative("Arrows").boolValue; + _FontOptions.Geometric_Shapes = FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue; + _FontOptions.Mathematical_Operators = FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue; + _FontOptions.CustomUnicode = FontOptions.FindPropertyRelative("CustomUnicode").stringValue; + } + private void serializeFontOptions(FontOptions _FontOptions, SerializedProperty FontOptions) + { + FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue = _FontOptions.CJK_Unified_Ideographs; + FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue = _FontOptions.C0_Controls_and_Basic_Latin; + FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue = _FontOptions.CJK_Symbols_and_Punctuation; + FontOptions.FindPropertyRelative("General_Punctuation").boolValue = _FontOptions.General_Punctuation; + FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue = _FontOptions.Enclosed_CJK_Letters_and_Months; + FontOptions.FindPropertyRelative("Vertical_Forms").boolValue = _FontOptions.Vertical_Forms; + FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue = _FontOptions.CJK_Compatibility_Forms; + FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue = _FontOptions.Miscellaneous_Symbols; + FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue = _FontOptions.CJK_Compatibility; + FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue = _FontOptions.Halfwidth_and_Fullwidth_Forms; + FontOptions.FindPropertyRelative("Dingbats").boolValue = _FontOptions.Dingbats; + FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue = _FontOptions.Letterlike_Symbols; + FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue = _FontOptions.Enclosed_Alphanumerics; + FontOptions.FindPropertyRelative("Number_Forms").boolValue = _FontOptions.Number_Forms; + FontOptions.FindPropertyRelative("Currency_Symbols").boolValue = _FontOptions.Currency_Symbols; + FontOptions.FindPropertyRelative("Arrows").boolValue = _FontOptions.Arrows; + FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = _FontOptions.Geometric_Shapes; + FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = _FontOptions.Mathematical_Operators; + FontOptions.FindPropertyRelative("CustomUnicode").stringValue = _FontOptions.CustomUnicode; + FontOptions.FindPropertyRelative("Arrows").boolValue = _FontOptions.Arrows; + FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = _FontOptions.Geometric_Shapes; + FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = _FontOptions.Mathematical_Operators; + FontOptions.FindPropertyRelative("CustomUnicode").stringValue = _FontOptions.CustomUnicode; + } + + private string getDataInput(string target) { if (this.formInputData.ContainsKey(target)) diff --git a/Editor/WXPluginVersion.cs b/Editor/WXPluginVersion.cs index b681112c1..30695ba3c 100644 --- a/Editor/WXPluginVersion.cs +++ b/Editor/WXPluginVersion.cs @@ -2,7 +2,7 @@ namespace WeChatWASM { public class WXPluginVersion { - public static string pluginVersion = "202603030315"; // 这一行不要改他,导出的时候会自动替换 + public static string pluginVersion = "202603191252"; // 这一行不要改他,导出的时候会自动替换 } public class WXPluginConf diff --git a/Editor/wx-editor.dll b/Editor/wx-editor.dll index e2273da9d..172d4ea45 100644 Binary files a/Editor/wx-editor.dll and b/Editor/wx-editor.dll differ diff --git a/Editor/wx-editor.xml b/Editor/wx-editor.xml index 71eca6215..7a39ca753 100644 --- a/Editor/wx-editor.xml +++ b/Editor/wx-editor.xml @@ -493,6 +493,11 @@ 注意:不要随意修改,默认值为0,0表示不限制 + + + 是否开启PC高性能模式 + + 自动将图片尺寸减小一半 diff --git a/Editor/wx-editor.xml.meta b/Editor/wx-editor.xml.meta index d0598a3cb..dde8e8a6d 100644 --- a/Editor/wx-editor.xml.meta +++ b/Editor/wx-editor.xml.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 01f24b642a2b90e786ee873037b35a96 +guid: 84292b2775189daf4efde379175af966 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/Examples.meta b/Runtime/Examples.meta new file mode 100644 index 000000000..dc0fa4646 --- /dev/null +++ b/Runtime/Examples.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7d6c78027d6455a42af92e84d7d7763e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: \ No newline at end of file diff --git a/Runtime/Examples/PCHPTestExample.cs b/Runtime/Examples/PCHPTestExample.cs new file mode 100644 index 000000000..7a3e705e0 --- /dev/null +++ b/Runtime/Examples/PCHPTestExample.cs @@ -0,0 +1,257 @@ +using UnityEngine; +using WeChatWASM; + +namespace WeChatWASM.Examples +{ + /// + /// PC高性能小游戏通信测试示例 + /// + /// 通信链路: + /// 1. C# 调用 ShowToast + /// 2. WXPCHPInitScript.CallWXAPI 构建 PCHPRequestMessage + /// 3. SendMsgAsync -> direct_applet_sdk.dll -> 内核 + /// 4. 内核 -> 基础库 pc-adapter -> game.js + /// 5. game.js 执行 wx.showToast + /// 6. 回调 -> 基础库 -> 内核 -> DLL -> HandleAsyncMessage + /// 7. 解析 PCHPResponseMessage -> 触发 C# 回调 + /// + public class PCHPTestExample : MonoBehaviour + { + private WXPCHighPerformanceManager _pcManager; + + private void Start() + { + Debug.Log("[PCHPTestExample] Start - 获取 PC 高性能管理器"); + +#if UNITY_STANDALONE_WIN + _pcManager = WX.GetPCHighPerformanceManager(); + + if (_pcManager != null && _pcManager.IsSupported) + { + Debug.Log("[PCHPTestExample] PC 高性能模式已支持!"); + } + else + { + Debug.LogWarning("[PCHPTestExample] PC 高性能模式不可用"); + } +#else + Debug.Log("[PCHPTestExample] 当前平台非 Windows,PC 高性能模式不可用"); +#endif + } + + /// + /// 测试 ShowToast - 在 Inspector 中调用或通过 UI 按钮调用 + /// + [ContextMenu("Test ShowToast")] + public void TestShowToast() + { + if (_pcManager == null || !_pcManager.IsSupported) + { + Debug.LogError("[PCHPTestExample] PC 高性能模式不可用"); + return; + } + + Debug.Log("[PCHPTestExample] 调用 ShowToast..."); + + _pcManager.ShowToast( + new PCHPShowToastOption + { + title = "Hello from Unity!", + icon = "success", + duration = 2000, + mask = false + }, + success: (res) => + { + Debug.Log($"[PCHPTestExample] ShowToast 成功: {res.errMsg}"); + }, + fail: (res) => + { + Debug.LogError($"[PCHPTestExample] ShowToast 失败: {res.errMsg}"); + }, + complete: (res) => + { + Debug.Log($"[PCHPTestExample] ShowToast 完成"); + } + ); + } + + /// + /// 测试 ShowModal - 在 Inspector 中调用或通过 UI 按钮调用 + /// + [ContextMenu("Test ShowModal")] + public void TestShowModal() + { + if (_pcManager == null || !_pcManager.IsSupported) + { + Debug.LogError("[PCHPTestExample] PC 高性能模式不可用"); + return; + } + + Debug.Log("[PCHPTestExample] 调用 ShowModal..."); + + _pcManager.ShowModal( + new PCHPShowModalOption + { + title = "提示", + content = "这是一个来自 Unity 的模态框测试", + showCancel = true, + cancelText = "取消", + confirmText = "确定" + }, + success: (res) => + { + if (res.confirm) + { + Debug.Log("[PCHPTestExample] 用户点击了确定"); + } + else if (res.cancel) + { + Debug.Log("[PCHPTestExample] 用户点击了取消"); + } + }, + fail: (res) => + { + Debug.LogError($"[PCHPTestExample] ShowModal 失败: {res.errMsg}"); + }, + complete: (res) => + { + Debug.Log($"[PCHPTestExample] ShowModal 完成"); + } + ); + } + + /// + /// 测试 ShowLoading - 在 Inspector 中调用或通过 UI 按钮调用 + /// + [ContextMenu("Test ShowLoading")] + public void TestShowLoading() + { + if (_pcManager == null || !_pcManager.IsSupported) + { + Debug.LogError("[PCHPTestExample] PC 高性能模式不可用"); + return; + } + + Debug.Log("[PCHPTestExample] 调用 ShowLoading..."); + + _pcManager.ShowLoading("加载中...", true, + success: (res) => + { + Debug.Log($"[PCHPTestExample] ShowLoading 成功"); + + // 2秒后隐藏 + StartCoroutine(HideLoadingAfterDelay(2f)); + }, + fail: (res) => + { + Debug.LogError($"[PCHPTestExample] ShowLoading 失败: {res.errMsg}"); + } + ); + } + + private System.Collections.IEnumerator HideLoadingAfterDelay(float delay) + { + yield return new WaitForSeconds(delay); + + _pcManager?.HideLoading( + success: (res) => + { + Debug.Log("[PCHPTestExample] HideLoading 成功"); + } + ); + } + + /// + /// 测试通用 API 调用 + /// + [ContextMenu("Test Generic API Call")] + public void TestGenericAPICall() + { + if (_pcManager == null || !_pcManager.IsSupported) + { + Debug.LogError("[PCHPTestExample] PC 高性能模式不可用"); + return; + } + + Debug.Log("[PCHPTestExample] 调用通用 API (getSystemInfoSync)..."); + + // 示例:调用任意 wx API + _pcManager.CallWXAPI( + "getSystemInfo", + new { }, // 无参数 + onSuccess: (res) => + { + Debug.Log($"[PCHPTestExample] getSystemInfo 成功: {res}"); + }, + onFail: (res) => + { + Debug.LogError($"[PCHPTestExample] getSystemInfo 失败: {res}"); + }, + onComplete: (res) => + { + Debug.Log("[PCHPTestExample] getSystemInfo 完成"); + } + ); + } + + /// + /// 测试事件监听 + /// + [ContextMenu("Test Event Listener")] + public void TestEventListener() + { + if (_pcManager == null || !_pcManager.IsSupported) + { + Debug.LogError("[PCHPTestExample] PC 高性能模式不可用"); + return; + } + + Debug.Log("[PCHPTestExample] 注册 onShow 事件监听..."); + + _pcManager.On("onShow", (data) => + { + Debug.Log($"[PCHPTestExample] 收到 onShow 事件: {data}"); + }); + + _pcManager.On("onHide", (data) => + { + Debug.Log($"[PCHPTestExample] 收到 onHide 事件: {data}"); + }); + } + + private void OnGUI() + { + // 简单的测试按钮 UI + GUILayout.BeginArea(new Rect(10, 10, 200, 300)); + GUILayout.Label("PC高性能小游戏测试"); + + if (GUILayout.Button("ShowToast")) + { + TestShowToast(); + } + + if (GUILayout.Button("ShowModal")) + { + TestShowModal(); + } + + if (GUILayout.Button("ShowLoading")) + { + TestShowLoading(); + } + + if (GUILayout.Button("GetSystemInfo")) + { + TestGenericAPICall(); + } + + if (GUILayout.Button("Register Events")) + { + TestEventListener(); + } + + GUILayout.EndArea(); + } + } +} diff --git a/Runtime/Examples/PCHPTestExample.cs.meta b/Runtime/Examples/PCHPTestExample.cs.meta new file mode 100644 index 000000000..c736d0c30 --- /dev/null +++ b/Runtime/Examples/PCHPTestExample.cs.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0ded19877eaa0ed06ad5a1d789d245ee +DefaultImporter: +externalObjects: {} +userData: +assetBundleName: +assetBundleVariant: \ No newline at end of file diff --git a/Runtime/Plugins/wx-perf.dll b/Runtime/Plugins/wx-perf.dll index 0e282e0f7..f0da3908d 100644 Binary files a/Runtime/Plugins/wx-perf.dll and b/Runtime/Plugins/wx-perf.dll differ diff --git a/Runtime/Plugins/wx-runtime-editor.dll b/Runtime/Plugins/wx-runtime-editor.dll index ebd135de6..7ff4efc34 100644 Binary files a/Runtime/Plugins/wx-runtime-editor.dll and b/Runtime/Plugins/wx-runtime-editor.dll differ diff --git a/Runtime/Plugins/wx-runtime-editor.xml b/Runtime/Plugins/wx-runtime-editor.xml index c33745751..49960d977 100644 --- a/Runtime/Plugins/wx-runtime-editor.xml +++ b/Runtime/Plugins/wx-runtime-editor.xml @@ -3410,7 +3410,7 @@ 需要基础库: `2.10.0` 小程序版本 可选值: - - 'develop': 开发版; + - 'develop': 开发版,提交代码审核时默认使用开发版进行审核。; - 'trial': 体验版; - 'release': 正式版; @@ -3486,6 +3486,11 @@ 允许微信读写日历的开关 + + + PC 内核版本号,仅在 PC 端存在该值 + + 客户端基础库版本 @@ -3588,6 +3593,14 @@ 客户端平台 + 可选值: + - 'ios': iOS微信(包含 iPhone、iPad); + - 'android': Android微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; + - 'windows': Windows微信; + - 'mac': macOS微信; + - 'devtools': 微信开发者工具; @@ -3595,6 +3608,16 @@ 操作系统及版本 + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 需要基础库: `2.20.0` @@ -3661,6 +3684,11 @@ 直播间 id + + + 宿主传递的数据,第三方 app 中运行小游戏时返回 + + 启动小游戏的 query 参数 @@ -3691,6 +3719,11 @@ shareTicket,详见[获取更多转发信息](#) + + + 宿主app对应的场景值 + + 下边界坐标,单位:px @@ -3721,11 +3754,86 @@ 宽度,单位:px + + + 擂台赛组件领奖信息 + + 通知组件信息 + + + 福利组件信息 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 奖励领取结果:1-全部成功, 2-部分成功(礼物达到领取上限), 3-领奖失败 + + + + + 是否收到了稀有奖励 + + + + + 用户领取的奖励列表 + + + + + 奖励类型:0-道具礼包, 1-微信蓝包, 2-h5商家券, 3-现金红包, 4-小程序券, 5-盲盒 + + + + + 奖励来源信息 + + + + + 获取的奖励数量 + + + + + 道具列表 + + + + + 奖励类型:1-普通奖励, 2-稀有奖励 + + + + + 礼包名称 + + + + + 道具名称 + + + + + 道具数量 + + 组件的布局位置信息 @@ -3741,6 +3849,46 @@ 组件的名称 + + + 可领取的好友礼包数量 + + + + + 可领取的礼包数量 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 礼包描述,只有 gift 类型才有 + + + + + 礼包图标,只有 gift 类型才有 + + + + + 礼包名称,只有 gift 类型才有 + + + + + gift: 礼包, friendGift: 好友礼包 + + 当前占用的空间大小, 单位 KB @@ -3887,7 +4035,8 @@ 可选值: - 'ios': iOS微信(包含 iPhone、iPad); - 'android': Android微信; - - 'ohos': HarmonyOS微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; - 'windows': Windows微信; - 'mac': macOS微信; - 'devtools': 微信开发者工具; @@ -4542,6 +4691,36 @@ 是否被添加至 「我的小程序」 + + + 错误信息 + + + + + 支付支持信息对象 + + + + + 调用结果信息,格式为 "checkIsSupportMidasPayment:ok" + + + + + 是否支持支付,true 表示支持,false 表示不支持 + + + + + 错误码,0 表示成功 + + + + + 错误信息,"success" 表示成功 + + 最多可以选择的图片张数 @@ -5710,22 +5889,22 @@ 预告状态:0可用 1取消 2已用 - + 敏感数据对应的云 ID,开通[云开发](https://developers.weixin.qq.com/minigame/dev/wxcloud/basis/getting-started.html)的小程序才会返回,可通过云调用直接获取开放数据,详细见[云调用直接获取开放数据](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#method-cloud) - + 包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) - + 错误信息 - + 加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) @@ -5820,6 +5999,21 @@ 实验参数数组,不填则获取所有实验参数 + + + 实验ID,标识实验 + + + + + 参数名称 + + + + + 参数值 + + 需要基础库: `3.7.8` @@ -5941,6 +6135,67 @@ 本机局域网子网掩码,基础库 2.24.0 开始支持 + + + 需要基础库: `1.6.0` + 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 + + + + + 需要基础库: `2.9.0` + 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 + + + + + 需要基础库: `2.9.0` + 开启高精度定位 + + + + + wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标 + + + + + 位置的精确度,反应与真实位置之间的接近程度,可以理解成10即与真实位置相差10m,越小越精确 + + + + + 需要基础库: `1.2.0` + 高度,单位 m + + + + + 需要基础库: `1.2.0` + 水平精度,单位 m + + + + + 纬度,范围为 -90~90,负数表示南纬 + + + + + 经度,范围为 -180~180,负数表示西经 + + + + + 速度,单位 m/s + + + + + 需要基础库: `1.2.0` + 垂直精度,单位 m(Android 无法获取,返回 0) + + 需要基础库: `2.22.1` @@ -6056,6 +6311,17 @@ - itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。 + + + shareTicket,详见[获取更多转发信息](#) + + + + + 需要基础库: `1.9.90` + 超时时间,单位 ms + + 封面广告组件展示状态码 @@ -6602,6 +6868,11 @@ 用短链打开小程序时当前页面携带的查询字符串。小程序中使用时,应在进入页面时调用 `wx.onCopyUrl` 自定义 `query`,退出页面时调用 `wx.offCopyUrl`,防止影响其它页面。 + + + 短链中的自定义标题,显示在小程序名称之后,可以不填 + + 当 手机坐标 X/Y 和 地球 X/Y 重合时,绕着 Z 轴转动的夹角为 alpha,范围值为 [0, 2*PI)。逆时针转动为正。 @@ -6625,6 +6896,21 @@ - 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向; + + + 当前直玩广告是否由于异常流程而结束(如 下拉/搜索 进入正在直玩广告流程中的游戏) + + + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 错误信息,包含堆栈 @@ -7020,7 +7306,7 @@ - 视频号 id + 视频号id(参考格式为:sphcqO59YEPCvoe;查看路径为:微信客户端->我tab->视频号->右上角.->视频号名字-视频号ID) @@ -7340,6 +7626,53 @@ 自定义维度,基础库 v2.14.0 开始支持可选 + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 人脸核身会话唯一标识(小程序后台根据「用户实名信息(姓名+身份证)」调用微信后台[getVerifyId](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_getverifyid.html)接口获取) + + + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + 购买数量。mode=game 时必填。购买数量。详见 [buyQuantity 限制说明](#buyQuantity限制说明)。 @@ -7725,7 +8058,7 @@ - 自定义的登录态 + 自定义的登录态。上限 1024 字符。 diff --git a/Runtime/Plugins/wx-runtime-editor.xml.meta b/Runtime/Plugins/wx-runtime-editor.xml.meta index 57a123a9b..dda8ea016 100644 --- a/Runtime/Plugins/wx-runtime-editor.xml.meta +++ b/Runtime/Plugins/wx-runtime-editor.xml.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 71e9b55c1d032860fb8a8436cd200183 +guid: f16c957495a42f3bc9459358eafe87b7 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/Plugins/wx-runtime.dll b/Runtime/Plugins/wx-runtime.dll index 6f8456467..0c63cc692 100644 Binary files a/Runtime/Plugins/wx-runtime.dll and b/Runtime/Plugins/wx-runtime.dll differ diff --git a/Runtime/Plugins/wx-runtime.xml b/Runtime/Plugins/wx-runtime.xml index 5b8aa2017..65fae8683 100644 --- a/Runtime/Plugins/wx-runtime.xml +++ b/Runtime/Plugins/wx-runtime.xml @@ -3410,7 +3410,7 @@ 需要基础库: `2.10.0` 小程序版本 可选值: - - 'develop': 开发版; + - 'develop': 开发版,提交代码审核时默认使用开发版进行审核。; - 'trial': 体验版; - 'release': 正式版; @@ -3486,6 +3486,11 @@ 允许微信读写日历的开关 + + + PC 内核版本号,仅在 PC 端存在该值 + + 客户端基础库版本 @@ -3588,6 +3593,14 @@ 客户端平台 + 可选值: + - 'ios': iOS微信(包含 iPhone、iPad); + - 'android': Android微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; + - 'windows': Windows微信; + - 'mac': macOS微信; + - 'devtools': 微信开发者工具; @@ -3595,6 +3608,16 @@ 操作系统及版本 + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 需要基础库: `2.20.0` @@ -3661,6 +3684,11 @@ 直播间 id + + + 宿主传递的数据,第三方 app 中运行小游戏时返回 + + 启动小游戏的 query 参数 @@ -3691,6 +3719,11 @@ shareTicket,详见[获取更多转发信息](#) + + + 宿主app对应的场景值 + + 下边界坐标,单位:px @@ -3721,11 +3754,86 @@ 宽度,单位:px + + + 擂台赛组件领奖信息 + + 通知组件信息 + + + 福利组件信息 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 奖励领取结果:1-全部成功, 2-部分成功(礼物达到领取上限), 3-领奖失败 + + + + + 是否收到了稀有奖励 + + + + + 用户领取的奖励列表 + + + + + 奖励类型:0-道具礼包, 1-微信蓝包, 2-h5商家券, 3-现金红包, 4-小程序券, 5-盲盒 + + + + + 奖励来源信息 + + + + + 获取的奖励数量 + + + + + 道具列表 + + + + + 奖励类型:1-普通奖励, 2-稀有奖励 + + + + + 礼包名称 + + + + + 道具名称 + + + + + 道具数量 + + 组件的布局位置信息 @@ -3741,6 +3849,46 @@ 组件的名称 + + + 可领取的好友礼包数量 + + + + + 可领取的礼包数量 + + + + + 组件的名称 + + + + + 领取事件详情(只在onOfficialComponentsInfoChange回调中返回) + + + + + 礼包描述,只有 gift 类型才有 + + + + + 礼包图标,只有 gift 类型才有 + + + + + 礼包名称,只有 gift 类型才有 + + + + + gift: 礼包, friendGift: 好友礼包 + + 当前占用的空间大小, 单位 KB @@ -3887,7 +4035,8 @@ 可选值: - 'ios': iOS微信(包含 iPhone、iPad); - 'android': Android微信; - - 'ohos': HarmonyOS微信; + - 'ohos': HarmonyOS 手机端微信; + - 'ohos_pc': HarmonyOS PC微信; - 'windows': Windows微信; - 'mac': macOS微信; - 'devtools': 微信开发者工具; @@ -4542,6 +4691,36 @@ 是否被添加至 「我的小程序」 + + + 错误信息 + + + + + 支付支持信息对象 + + + + + 调用结果信息,格式为 "checkIsSupportMidasPayment:ok" + + + + + 是否支持支付,true 表示支持,false 表示不支持 + + + + + 错误码,0 表示成功 + + + + + 错误信息,"success" 表示成功 + + 最多可以选择的图片张数 @@ -5710,22 +5889,22 @@ 预告状态:0可用 1取消 2已用 - + 敏感数据对应的云 ID,开通[云开发](https://developers.weixin.qq.com/minigame/dev/wxcloud/basis/getting-started.html)的小程序才会返回,可通过云调用直接获取开放数据,详细见[云调用直接获取开放数据](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#method-cloud) - + 包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) - + 错误信息 - + 加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html) @@ -5820,6 +5999,21 @@ 实验参数数组,不填则获取所有实验参数 + + + 实验ID,标识实验 + + + + + 参数名称 + + + + + 参数值 + + 需要基础库: `3.7.8` @@ -5941,6 +6135,67 @@ 本机局域网子网掩码,基础库 2.24.0 开始支持 + + + 需要基础库: `1.6.0` + 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 + + + + + 需要基础库: `2.9.0` + 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 + + + + + 需要基础库: `2.9.0` + 开启高精度定位 + + + + + wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标 + + + + + 位置的精确度,反应与真实位置之间的接近程度,可以理解成10即与真实位置相差10m,越小越精确 + + + + + 需要基础库: `1.2.0` + 高度,单位 m + + + + + 需要基础库: `1.2.0` + 水平精度,单位 m + + + + + 纬度,范围为 -90~90,负数表示南纬 + + + + + 经度,范围为 -180~180,负数表示西经 + + + + + 速度,单位 m/s + + + + + 需要基础库: `1.2.0` + 垂直精度,单位 m(Android 无法获取,返回 0) + + 需要基础库: `2.22.1` @@ -6056,6 +6311,17 @@ - itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。 + + + shareTicket,详见[获取更多转发信息](#) + + + + + 需要基础库: `1.9.90` + 超时时间,单位 ms + + 封面广告组件展示状态码 @@ -6602,6 +6868,11 @@ 用短链打开小程序时当前页面携带的查询字符串。小程序中使用时,应在进入页面时调用 `wx.onCopyUrl` 自定义 `query`,退出页面时调用 `wx.offCopyUrl`,防止影响其它页面。 + + + 短链中的自定义标题,显示在小程序名称之后,可以不填 + + 当 手机坐标 X/Y 和 地球 X/Y 重合时,绕着 Z 轴转动的夹角为 alpha,范围值为 [0, 2*PI)。逆时针转动为正。 @@ -6625,6 +6896,21 @@ - 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向; + + + 当前直玩广告是否由于异常流程而结束(如 下拉/搜索 进入正在直玩广告流程中的游戏) + + + + + 当前是否处于直接广告中 + + + + + 当前是否处于蒙层阶段 + + 错误信息,包含堆栈 @@ -7020,7 +7306,7 @@ - 视频号 id + 视频号id(参考格式为:sphcqO59YEPCvoe;查看路径为:微信客户端->我tab->视频号->右上角.->视频号名字-视频号ID) @@ -7340,6 +7626,53 @@ 自定义维度,基础库 v2.14.0 开始支持可选 + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别成功 | | + | 2002004 | 人脸识别失败 | | + | 2002006 | 用户取消/超时/不同意,导致未完成人脸识别 | | + | 2002007 | 本用户7天内人脸识别已通过,通过日期为XX | | + | 2002008 | 本日已调起过人脸识别或者本月调用次数已达上限 | | + | 2002009 | 无权限发起人脸识别 | | + + + + + 人脸核身会话唯一标识(小程序后台根据「用户实名信息(姓名+身份证)」调用微信后台[getVerifyId](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_getverifyid.html)接口获取) + + + + + 错误信息 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + + + + 错误码 + | 错误码 | 错误信息 | 说明 | + | - | - | - | + | 0 | 人脸识别完成(需要通过[queryVerifyInfo](https://developers.weixin.qq.com/miniprogram/dev/server/API/face/api_queryverifyinfo.html)接口查询人脸核身真实验证结果) | | + + 购买数量。mode=game 时必填。购买数量。详见 [buyQuantity 限制说明](#buyQuantity限制说明)。 @@ -7725,7 +8058,7 @@ - 自定义的登录态 + 自定义的登录态。上限 1024 字符。 diff --git a/Runtime/Plugins/wx-runtime.xml.meta b/Runtime/Plugins/wx-runtime.xml.meta index 8b3952148..ec67e175d 100644 --- a/Runtime/Plugins/wx-runtime.xml.meta +++ b/Runtime/Plugins/wx-runtime.xml.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d1f5d9ba947a5cbf0b2b2466da1d2919 +guid: 8d0fd7078a0800c27bb5a0d4cb97ccec DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/WX.cs b/Runtime/WX.cs index 0049afc2d..6f6c03762 100644 --- a/Runtime/WX.cs +++ b/Runtime/WX.cs @@ -107,6 +107,69 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.CheckIsAddedToMyMiniProgram(callback); } + /// + /// [wx.checkIsSupportFacialRecognition(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/face/wx.checkIsSupportFacialRecognition.html) + /// 需要基础库: `3.8.12` + /// 检查当前设备是否支持人脸识别能力 + /// **示例代码** + /// ```js + /// wx.checkIsSupportFacialRecognition({ + /// success() { + /// // 支持人脸识别 + /// }, + /// fail() { + /// // 不支持人脸识别 + /// }, + /// }) + /// ``` + /// + public static void CheckIsSupportFacialRecognition(CheckIsSupportFacialRecognitionOption callback) + { + WXSDKManagerHandler.Instance.CheckIsSupportFacialRecognition(callback); + } + + /// + /// [wx.checkIsSupportMidasPayment(Object object)](https://developers.weixin.qq.com/minigame/dev/api/midas-payment/wx.checkIsSupportMidasPayment.html) + /// 需要基础库: `3.10.3` + /// 检查当前环境是否支持虚拟支付。使用前请注意阅读[相关说明](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/virtual-payment/virtual-payment2.html)。 + /// **平台支持说明** + /// - Android、Windows、OHOS 平台:默认支持虚拟支付,接口直接返回支持 + /// - iOS 平台:需满足以下环境要求才可能支持虚拟支付 + /// - 操作系统要求:使用 iPhone 或者 iPad,iOS 15 及以上版本 + /// - 基础库版本要求:3.10.3 及以上 + /// - 客户端版本要求:8.0.68 及以上 + /// - 苹果支付不支持使用沙箱环境,仅支持使用现网环境 + /// **注意事项** + /// 若该 API 都不存在,则 iOS 一定不支持虚拟支付,请保持旧版本逻辑。 + /// **示例代码** + /// ```js + /// if (wx.checkIsSupportMidasPayment) { + /// wx.checkIsSupportMidasPayment({ + /// success(res) { + /// console.log('支持检查结果:', res) + /// if (res.data.allow_pay) { + /// console.log('当前环境支持支付') + /// // 可以继续调用支付相关接口 + /// } else { + /// console.log('当前环境不支持支付') + /// // 请自行适配用户提示文案 + /// } + /// }, + /// fail(err) { + /// console.error('检查支持情况失败:', err) + /// }, + /// complete() { + /// console.log('检查完成') + /// } + /// }) + /// } + /// ``` + /// + public static void CheckIsSupportMidasPayment(CheckIsSupportMidasPaymentOption callback) + { + WXSDKManagerHandler.Instance.CheckIsSupportMidasPayment(callback); + } + /// /// [wx.checkSession(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/login/wx.checkSession.html) /// 检查登录态 session_key 是否过期。 @@ -279,7 +342,7 @@ namespace WeChatWASM /// /// [wx.exitChatTool(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.exitChatTool.html) /// 需要基础库: `3.7.12` - /// 退出聊天工具模式 + /// 退出聊天工具开放能力模式 /// public static void ExitChatTool(ExitChatToolOption callback) { @@ -675,6 +738,7 @@ namespace WeChatWASM /// | 8 | 当天(自然日)赞官方贴子数 | 无需传入 | | /// | 9 | 当天(自然日)评论官方贴子数 | 无需传入 | | /// | 10 | 当天(自然日)发表到本圈子话题的贴子数 | 传入话题id,从mp-游戏圈话题管理处获取 | | + /// | 11 | 用户最近一次推荐游戏时间 | 无需传入 | 秒级时间戳 | | /// **encryptedData 解密后得到的 GameClubData 的结构** /// | 属性 | 类型 | 说明 | /// | ------- | ------- | -------------------------------------- | @@ -691,9 +755,22 @@ namespace WeChatWASM } /// - /// [wx.getGameExptInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/data-analysis/wx.getGameExptInfo.html) + /// [wx.getGameExptInfo(Object options)](https://developers.weixin.qq.com/minigame/dev/api/data-analysis/wx.getGameExptInfo.html) /// 需要基础库: `3.8.8` /// 给定实验参数数组,获取对应的实验参数值 + /// **示例代码** + /// ```js + /// wx.getGameExptInfo({ + /// keyList: ['experiment_key1', 'experiment_key2'], + /// success(res) { + /// res.list.forEach((expParam) => { + /// console.log('实验ID:', expParam.expt_id); + /// console.log('参数名:', expParam.param_name); + /// console.log('参数值:', expParam.param_value); + /// }) + /// } + /// }); + /// ``` /// public static void GetGameExptInfo(GetGameExptInfoOption callback) { @@ -790,6 +867,14 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.GetLocalIPAddress(callback); } + /// + /// [wx.getLocation(Object object)](https://developers.weixin.qq.com/minigame/dev/api/location/wx.getLocation.html) + /// + public static void GetLocation(GetLocationOption callback) + { + WXSDKManagerHandler.Instance.GetLocation(callback); + } + /// /// [wx.getNetworkType(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/network/wx.getNetworkType.html) /// 获取网络类型 @@ -916,6 +1001,15 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.GetSetting(callback); } + /// + /// [wx.getShareInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.getShareInfo.html) + /// 需要基础库: `1.1.0` + /// + public static void GetShareInfo(GetShareInfoOption callback) + { + WXSDKManagerHandler.Instance.GetShareInfo(callback); + } + /// /// [wx.getShowSplashAdStatus(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.getShowSplashAdStatus.html) /// 需要基础库: `3.7.8` @@ -1262,9 +1356,6 @@ namespace WeChatWASM /// 从 2.3.0 版本开始,若用户未点击小程序页面任意位置,则开发者将无法调用此接口自动跳转至其他小程序。 /// ##### 需要用户确认跳转 /// 从 2.3.0 版本开始,在跳转至其他小程序前,将统一增加弹窗,询问是否跳转,用户确认后才可以跳转其他小程序。如果用户点击取消,则回调 `fail cancel`。 - /// ##### 无需声明跳转名单,不限跳转数量(众测中) - /// 1. 从2020年4月24日起,使用跳转其他小程序功能将无需在全局配置中声明跳转名单,调用此接口时将不再校验所跳转的 AppID 是否在 navigateToMiniProgramAppIdList 中。 - /// 2. 从2020年4月24日起,跳转其他小程序将不再受数量限制,使用此功能时请注意遵守运营规范。 /// **运营规范** /// 平台将坚决打击小程序盒子等互推行为,使用此功能时请严格遵守[《微信小程序平台运营规范》](https://developers.weixin.qq.com/miniprogram/product/#_5-10-%E4%BA%92%E6%8E%A8%E8%A1%8C%E4%B8%BA),若发现小程序违反运营规范将被下架处理。 /// **关于调试** @@ -1700,6 +1791,125 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.ReportScene(callback); } + /// + /// [wx.requestFacialRecognition(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/account-info/wx.requestFacialRecognition.html) + /// 需要基础库: `3.11.2` + /// 腾讯游戏人脸识别验证功能是基于健康系统防沉迷体系,用于识别疑似未成年人冒用成年人账号游玩游戏的行为,是防止未成年人沉迷网络游戏的一项重要措施。本接口是为开通虚拟支付功能的小游戏开发者提供的,此接口是基于人脸识别的未成年人身份核验接口。本次识别是根据用户在腾讯健康系统中留存的实名信息进行验证,结果将直接返回至开发者。 + /// **接口限额** + /// - 超出限额后将返回错误码 2002008(频率控制) + /// - 1天内全部游戏对一个用户只能调起1次人脸识别 + /// - 若用户人脸识别通过:7天内不能再被弹出人脸识别 + /// - 根据小游戏评级每个月限制使用次数,一旦发现恶意滥用接口,会取消使用资格。具体使用次数如下: + /// - S级:300次/月 + /// - A级:100次/月 + /// - B级:30次/月 + /// **处理流程** + /// 人脸识别流程图 + /// **示例代码** + /// ```js + /// // 实际业务场景:防沉迷身份验证 + /// function checkUserIdentity() { + /// wx.requestFacialRecognition({ + /// success(res) { + /// // 场景 1:本次人脸识别通过 + /// // res = { errCode: 0, errMsg: 'ok' } + /// console.log('人脸识别成功:', res) + /// // 允许继续游戏 + /// startGame() + /// }, + /// fail(err) { + /// console.error('人脸识别失败:', err) + /// let tipMessage = '' + /// let shouldBlock = false // 是否需要阻断游戏 + /// // 根据错误码进行不同处理 + /// switch (err.errCode) { + /// case 2002004: + /// // 人脸识别失败(需要阻断) + /// // err = { errCode: 2002004, errMsg: '人脸识别失败' } + /// tipMessage = '识别失败,请稍后重试' + /// shouldBlock = true + /// break + /// case 2002006: + /// // 用户取消/超时/不同意,导致未完成人脸识别(需要阻断) + /// // err = { errCode: 2002006, errMsg: '用户取消' } + /// tipMessage = '您已取消验证,无法继续游戏' + /// shouldBlock = true + /// break + /// case 2002007: + /// // 本用户7天内人脸识别已通过(可以继续游戏) + /// // err = { errCode: 2002007, errMsg: '本用户7天内人脸识别已通过,通过日期为2024-01-15' } + /// tipMessage = '您已完成验证' + /// shouldBlock = false + /// break + /// case 2002008: + /// // 频率控制:本日已调起过人脸识别 or 本月调用次数已达上限(可以继续游戏) + /// // err = { errCode: 2002008, errMsg: '本日已调起过人脸识别' } + /// // 或 err = { errCode: 2002008, errMsg: '本月调用次数已达上限' } + /// tipMessage = '今日验证次数已达上限' + /// shouldBlock = false + /// break + /// case 2002009: + /// // 无权限发起人脸识别(可以继续游戏) + /// // err = { errCode: 2002009, errMsg: '无权限发起人脸识别' } + /// tipMessage = '暂无权限使用此功能' + /// shouldBlock = false + /// break + /// default: + /// // 系统异常等其他错误(可以继续游戏,避免影响正常用户) + /// tipMessage = '系统异常,请稍后重试' + /// shouldBlock = false + /// } + /// if (tipMessage) { + /// wx.showModal({ + /// title: '提示', + /// content: tipMessage, + /// showCancel: false + /// }) + /// } + /// if (shouldBlock) { + /// // 仅对识别失败(2002004)和用户取消(2002006)阻断游戏 + /// restrictGameFeatures() + /// } else { + /// // 其他情况允许继续游戏 + /// startGame() + /// } + /// }, + /// complete(res) { + /// // 无论成功失败均会触发 + /// console.log('人脸识别流程结束:', res) + /// } + /// }) + /// } + /// ``` + /// + public static void RequestFacialRecognition(RequestFacialRecognitionOption callback) + { + WXSDKManagerHandler.Instance.RequestFacialRecognition(callback); + } + + /// + /// [wx.requestFacialVerify(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/face/wx.requestFacialVerify.html) + /// 需要基础库: `3.8.12` + /// 对用户实名信息进行基于生物识别的人脸核身验证 + /// **示例代码** + /// ```js + /// wx.requestFacialVerify({ + /// // 人脸核身会话唯一标识 + /// verifyId: 'xxx', + /// success() { + /// // 人脸核身验证成功,需要通知小程序后台根据本次人脸核身会话唯一标识 verifyId 字段调用微信后台 queryVerifyInfo 接口查询人脸核身真实验证结果。 + /// }, + /// fail() { + /// // 人脸核身验证失败 + /// }, + /// }) + /// ``` + /// + public static void RequestFacialVerify(RequestFacialVerifyOption callback) + { + WXSDKManagerHandler.Instance.RequestFacialVerify(callback); + } + /// /// [wx.requestMidasFriendPayment(Object object)](https://developers.weixin.qq.com/minigame/dev/api/midas-payment/wx.requestMidasFriendPayment.html) /// 需要基础库: `2.11.0` @@ -2043,6 +2253,8 @@ namespace WeChatWASM /// [wx.setDeviceOrientation(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/orientation/wx.setDeviceOrientation.html) /// 需要基础库: `2.26.0` /// 切换横竖屏。接口调用成功后会触发 wx.onDeviceOrientationChange 事件 + /// **注意** + /// - PC小程序处于全屏时,无法切换横竖屏。 /// public static void SetDeviceOrientation(SetDeviceOrientationOption callback) { @@ -2763,6 +2975,15 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.ReportEvent(eventId, data); } + /// + /// [wx.reportMonitor(string name, number value)](https://developers.weixin.qq.com/minigame/dev/api/data-analysis/wx.reportMonitor.html) + /// 需要基础库: `2.1.2` + /// + public static void ReportMonitor(string name, double value) + { + WXSDKManagerHandler.Instance.ReportMonitor(name, value); + } + /// /// [wx.reportPerformance(Number id, Number value, String|Array dimensions)](https://developers.weixin.qq.com/minigame/dev/api/base/performance/wx.reportPerformance.html) /// 需要基础库: `2.10.0` @@ -3027,6 +3248,7 @@ namespace WeChatWASM /// 监听搜索到新设备的事件 /// **注意** /// - 若在 [wx.onBluetoothDeviceFound](https://developers.weixin.qq.com/minigame/dev/api/device/bluetooth/wx.onBluetoothDeviceFound.html) 回调了某个设备,则此设备会添加到 [wx.getBluetoothDevices](https://developers.weixin.qq.com/minigame/dev/api/device/bluetooth/wx.getBluetoothDevices.html) 接口获取到的数组中。 + /// - 地址变化这个是鸿蒙系统特性,小程序可以不缓存地址,重新搜索连接。 /// **示例代码** /// [在微信开发者工具中查看示例](https://developers.weixin.qq.com/s/pQU51zmz7a3K) /// ```js @@ -3121,6 +3343,34 @@ namespace WeChatWASM WXSDKManagerHandler.Instance.OffDeviceOrientationChange(result); } + /// + /// [wx.onDirectAdStatusChange(function listener)](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.onDirectAdStatusChange.html) + /// 需要基础库: `3.11.2` + /// 监听监听直玩广告状态变化 + /// **示例代码** + /// ```js + /// wx.onDirectAdStatusChange(res => { + /// // 会有如下的几种状态值组合 + /// // a) { isInMask: true, isInDirectGameAd: true } -> 表示当前正在直玩广告 且 未戳破蒙层 + /// // b) { isInMask: false, isInDirectGameAd: true } -> 表示当前正在直玩广告 且 戳破了蒙层 + /// // c) { isInMask: false, isInDirectGameAd: false, isEndByAbnormal: false }, -> 表示倒计时结束了,并且选择了继续玩 + /// // d) { isInMask: false, isInDirectGameAd: false, isEndByAbnormal: true }, -> 表示由于异常流程而结束 + /// console.log(res.isInMask) + /// console.log(res.isInDirectGameAd) + /// console.log(res.isEndByAbnormal) + /// }) + /// ``` + /// + public static void OnDirectAdStatusChange(Action result) + { + WXSDKManagerHandler.Instance.OnDirectAdStatusChange(result); + } + + public static void OffDirectAdStatusChange(Action result) + { + WXSDKManagerHandler.Instance.OffDirectAdStatusChange(result); + } + /// /// [wx.onError(function listener)](https://developers.weixin.qq.com/minigame/dev/api/base/app/app-event/wx.onError.html) /// 监听全局错误事件 @@ -3495,21 +3745,21 @@ namespace WeChatWASM /// 需要基础库: `2.8.1` /// 监听用户主动截屏事件。用户使用系统截屏按键截屏时触发,只能注册一个监听 /// **示例代码** + /// 页面要先调用wx.showShareMenu()来允许调用 /// ```js /// wx.onUserCaptureScreen(function (res) { /// console.log('用户截屏了') /// return { /// query: "parameter=test", // 通过截屏图片打开小程序的query参数 /// promise: new Promise((resolve) => { // 通过promise延时传递小程序的query参数 - /// setTimeout(() => { - /// resolve({ - /// query: "parameter=test2", - /// }) - /// }, 1000) // 在1秒内对query进行解析 - /// }) + /// setTimeout(() => { + /// resolve({ + /// query: "parameter=test2", + /// }) + /// }, 1000) // 在1秒内对query进行解析 + /// }) /// } - /// } - /// ) + /// }) /// ``` /// public static void OnUserCaptureScreen(Action result) @@ -3643,7 +3893,7 @@ namespace WeChatWASM /// /// [wx.onCopyUrl(function listener)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.onCopyUrl.html) /// 需要基础库: `2.14.3` - /// 监听用户点击右上角菜单的「复制链接」按钮时触发的事件。本接口为 Beta 版本,暂只在 Android 平台支持。 + /// 监听用户点击右上角菜单的「复制链接」按钮时触发的事件。 /// public static void OnCopyUrl(Action> callback) { @@ -3831,6 +4081,23 @@ namespace WeChatWASM return WXSDKManagerHandler.GetDeviceInfo(); } + /// + /// [Object wx.getDirectAdStatusSync()](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.getDirectAdStatusSync.html) + /// 需要基础库: `3.11.2` + /// 获取直玩广告组件展示状态。 + /// **示例代码** + /// ```js + /// const statusInfo = wx.getDirectAdStatusSync(); + /// console.log(statusInfo.isInMask) // 当前是否在蒙层阶段 + /// console.log(statusInfo.isInDirectGameAd) // 当前是否在直玩广告中 + /// ``` + /// + /// + public static DirectAdStatusInfo GetDirectAdStatusSync() + { + return WXSDKManagerHandler.GetDirectAdStatusSync(); + } + /// /// [Object wx.getEnterOptionsSync()](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.getEnterOptionsSync.html) /// 需要基础库: `2.13.2` @@ -4045,19 +4312,19 @@ namespace WeChatWASM } /// - /// [[ImageData](https://developers.weixin.qq.com/minigame/dev/api/render/image/ImageData.html) wx.createImageData(number width, number height)](https://developers.weixin.qq.com/minigame/dev/api/render/image/wx.createImageData.html) + /// [[ImageData](https://developers.weixin.qq.com/minigame/dev/api/render/image/ImageData.html) wx.createImageData(number width, number height, Uint8ClampedArray data)](https://developers.weixin.qq.com/minigame/dev/api/render/image/wx.createImageData.html) /// 需要基础库: `3.4.10` - /// 这里有两种使用方法, 一种是指定ImageData的宽和高, 另外一种是使用ImageData, 通过它本身的宽高尺寸来构建新的对象。 + /// 这里有两种使用方法, 一种是指定ImageData的宽和高, 另外一种使用已有的ImageData的图像二进制数据,来构建新的对象。 /// **示例代码** /// ```js - /// const imageData1 = wx.createImageData(100, 100) - /// const imageData2 = wx.createImageData(imageData1) + /// const imageData1 = wx.createImageData(100, 100) + /// const imageData2 = wx.createImageData(imageData1.data, 100, 100) /// ``` /// /// - public static ImageData CreateImageData(double width, double height) + public static ImageData CreateImageData(double width, double height, int[] data) { - return WXSDKManagerHandler.CreateImageData(width, height); + return WXSDKManagerHandler.CreateImageData(width, height, data); } /// diff --git a/Runtime/WXBase.cs b/Runtime/WXBase.cs index 7f7718edd..591aec7e8 100644 --- a/Runtime/WXBase.cs +++ b/Runtime/WXBase.cs @@ -1195,8 +1195,38 @@ namespace WeChatWASM public static WXRankManager GetRankManager() { return WXSDKManagerHandler.Instance.GetRankManager(); } - } -} #endregion +#region PC高性能小游戏 + /// + /// 获取 PC 高性能小游戏管理器 + /// 类似于 VA 方案的 wx.getAndroidHighPerformanceManager() + /// 用于在 PC 原生环境下与微信基础库通信 + /// + /// PC高性能管理器实例,如果不支持则返回 null + /// + /// var pcManager = WX.GetPCHighPerformanceManager(); + /// if (pcManager != null && pcManager.IsSupported) + /// { + /// pcManager.ShowToast(new PCHPShowToastOption + /// { + /// title = "Hello PC!", + /// icon = "success", + /// duration = 2000 + /// }); + /// } + /// + public static WXPCHighPerformanceManager GetPCHighPerformanceManager() + { +#if UNITY_STANDALONE_WIN + return WXPCHighPerformanceManager.GetInstance(); +#else + Debug.LogWarning("[WX] GetPCHighPerformanceManager 仅在 Windows 平台可用"); + return null; +#endif + } +#endregion + } +} + #endif diff --git a/Runtime/WXPCHPInitScript.cs b/Runtime/WXPCHPInitScript.cs index b0f0741bc..97d569562 100644 --- a/Runtime/WXPCHPInitScript.cs +++ b/Runtime/WXPCHPInitScript.cs @@ -1,9 +1,143 @@ using System; +using System.Collections.Generic; +using System.Collections.Concurrent; using System.Runtime.InteropServices; using UnityEngine; +using LitJson; namespace WeChatWASM { + #region Message Protocol Models + + /// + /// PC高性能方案通信协议 - 请求消息 + /// C# -> DLL -> 内核 -> 基础库 + /// + [Serializable] + public class PCHPRequestMessage + { + /// + /// 消息类型: "request" | "event_register" | "event_unregister" + /// + public string type; + + /// + /// 请求ID,用于匹配回调 + /// + public string requestId; + + /// + /// API名称,如 "showToast", "login" 等 + /// + public string api; + + /// + /// API参数,JSON格式 + /// + public string data; + + /// + /// 时间戳 + /// + public long timestamp; + } + + /// + /// PC高性能方案通信协议 - 响应消息 + /// 基础库 -> 内核 -> DLL -> C# + /// + [Serializable] + public class PCHPResponseMessage + { + /// + /// 消息类型: "response" | "event" + /// + public string type; + + /// + /// 请求ID,与请求消息匹配 + /// + public string requestId; + + /// + /// 回调类型: "success" | "fail" | "complete" + /// + public string callbackType; + + /// + /// API名称(事件类型时使用) + /// + public string api; + + /// + /// 响应数据,JSON格式 + /// + public string data; + + /// + /// 错误信息(失败时) + /// + public string errMsg; + + /// + /// 时间戳 + /// + public long timestamp; + } + + /// + /// 通用回调结果 + /// + [Serializable] + public class PCHPGeneralCallbackResult + { + public string errMsg; + } + + /// + /// ShowToast 参数 + /// + [Serializable] + public class PCHPShowToastOption + { + public string title; + public string icon; + public string image; + public int duration; + public bool mask; + } + + /// + /// ShowModal 参数 + /// + [Serializable] + public class PCHPShowModalOption + { + public string title; + public string content; + public bool showCancel; + public string cancelText; + public string cancelColor; + public string confirmText; + public string confirmColor; + public bool editable; + public string placeholderText; + } + + /// + /// ShowModal 成功回调结果 + /// + [Serializable] + public class PCHPShowModalSuccessCallbackResult + { + public bool confirm; + public bool cancel; + public string content; + public string errMsg; + } + + #endregion + /// /// PC高性能小游戏初始化脚本 /// 负责与宿主程序的 direct_applet_sdk.dll 进行交互 @@ -66,9 +200,37 @@ namespace WeChatWASM #endregion + #region Callback Management + + /// + /// 回调信息封装 + /// + private class CallbackInfo + { + public Action OnSuccess; + public Action OnFail; + public Action OnComplete; + public string ApiName; + public long Timestamp; + } + + // 待处理的回调字典 + private readonly Dictionary _pendingCallbacks = new Dictionary(); + + // 事件监听器字典 >> + private readonly Dictionary>> _eventListeners = new Dictionary>>(); + + // 请求ID计数器 + private int _requestIdCounter = 0; + + // 线程安全的消息队列,用于主线程处理 + private readonly ConcurrentQueue _messageQueue = new ConcurrentQueue(); + + #endregion + #region Events - // 收到异步消息时触发的事件 + // 收到异步消息时触发的事件(原始字节) public event Action OnMessageReceived; #endregion @@ -109,6 +271,12 @@ namespace WeChatWASM Initialize(); } + private void Update() + { + // 在主线程中处理消息队列 + ProcessMessageQueue(); + } + private void OnDestroy() { if (instance == this) @@ -125,7 +293,7 @@ namespace WeChatWASM #endregion - #region Public Methods + #region Public Methods - SDK Lifecycle /// /// 初始化SDK并建立连接 @@ -177,6 +345,7 @@ namespace WeChatWASM } Debug.Log($"获取窗口句柄成功: 0x{WindowHandle.ToInt64():X}"); + // 5. 通知内核获取窗口句柄 Debug.Log("[WXPCHPInitScript] Step 5: 调用 InitGameWindow"); if (!InitGameWindow((ulong)WindowHandle.ToInt64())) { @@ -207,71 +376,216 @@ namespace WeChatWASM } } - /// - /// 显示信息弹窗(仅 Windows) - /// - private void ShowInfo(string message) - { - Debug.Log($"[WXPCHPInitScript] {message}"); -#if UNITY_STANDALONE_WIN - try - { - // MB_OK | MB_ICONINFORMATION = 0x40 - MessageBox(IntPtr.Zero, message, "WXPCHPInitScript Info", 0x40); - } - catch (System.Exception e) - { - Debug.LogWarning($"[WXPCHPInitScript] MessageBox 调用失败: {e.Message}"); - } -#endif - } + #endregion + + #region Public Methods - WX API Calls /// - /// 显示错误弹窗(仅 Windows) + /// 调用微信API(通用方法) /// - private void ShowError(string message) - { - Debug.LogError($"[WXPCHPInitScript] {message}"); -#if UNITY_STANDALONE_WIN - try - { - // MB_OK | MB_ICONERROR = 0x10 - MessageBox(IntPtr.Zero, message, "WXPCHPInitScript Error", 0x10); - } - catch (System.Exception e) - { - Debug.LogWarning($"[WXPCHPInitScript] MessageBox 调用失败: {e.Message}"); - } -#endif - } - - /// - /// 发送异步消息到宿主 - /// - /// 消息内容 - /// 是否发送成功 - public bool SendMessage(string message) + /// API名称,如 "showToast" + /// API参数对象 + /// 成功回调 + /// 失败回调 + /// 完成回调 + /// 请求ID + public string CallWXAPI(string apiName, object data, Action onSuccess = null, Action onFail = null, Action onComplete = null) { if (!IsInitialized || !IsConnected) { - Debug.LogWarning("[WXPCHPInitScript] SDK未初始化或未连接"); - return false; + Debug.LogWarning($"[WXPCHPInitScript] SDK未初始化或未连接,无法调用 {apiName}"); + onFail?.Invoke(JsonMapper.ToJson(new PCHPGeneralCallbackResult { errMsg = "SDK not initialized" })); + onComplete?.Invoke(JsonMapper.ToJson(new PCHPGeneralCallbackResult { errMsg = "SDK not initialized" })); + return null; } - try + string requestId = GenerateRequestId(); + string dataJson = data != null ? JsonMapper.ToJson(data) : "{}"; + + // 注册回调 + var callbackInfo = new CallbackInfo { - byte[] data = System.Text.Encoding.UTF8.GetBytes(message); - return SendMessage(data); - } - catch (Exception e) + OnSuccess = onSuccess, + OnFail = onFail, + OnComplete = onComplete, + ApiName = apiName, + Timestamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() + }; + _pendingCallbacks[requestId] = callbackInfo; + + // 构建请求消息 + var request = new PCHPRequestMessage { - Debug.LogError($"[WXPCHPInitScript] 发送消息异常: {e.Message}"); - return false; + type = "request", + requestId = requestId, + api = apiName, + data = dataJson, + timestamp = callbackInfo.Timestamp + }; + + string requestJson = JsonMapper.ToJson(request); + Debug.Log($"[WXPCHPInitScript] 发送API请求: {apiName}, requestId: {requestId}"); + + if (!SendMessageInternal(requestJson)) + { + _pendingCallbacks.Remove(requestId); + onFail?.Invoke(JsonMapper.ToJson(new PCHPGeneralCallbackResult { errMsg = "Failed to send message" })); + onComplete?.Invoke(JsonMapper.ToJson(new PCHPGeneralCallbackResult { errMsg = "Failed to send message" })); + return null; } + + return requestId; } /// - /// 发送异步消息到宿主 + /// 显示消息提示框 + /// + public void ShowToast(PCHPShowToastOption option, Action success = null, Action fail = null, Action complete = null) + { + CallWXAPI("showToast", option, + res => success?.Invoke(JsonMapper.ToObject(res)), + res => fail?.Invoke(JsonMapper.ToObject(res)), + res => complete?.Invoke(JsonMapper.ToObject(res)) + ); + } + + /// + /// 隐藏消息提示框 + /// + public void HideToast(Action success = null, Action fail = null, Action complete = null) + { + CallWXAPI("hideToast", null, + res => success?.Invoke(JsonMapper.ToObject(res)), + res => fail?.Invoke(JsonMapper.ToObject(res)), + res => complete?.Invoke(JsonMapper.ToObject(res)) + ); + } + + /// + /// 显示模态对话框 + /// + public void ShowModal(PCHPShowModalOption option, Action success = null, Action fail = null, Action complete = null) + { + CallWXAPI("showModal", option, + res => success?.Invoke(JsonMapper.ToObject(res)), + res => fail?.Invoke(JsonMapper.ToObject(res)), + res => complete?.Invoke(JsonMapper.ToObject(res)) + ); + } + + /// + /// 显示 loading 提示框 + /// + public void ShowLoading(string title, bool mask = false, Action success = null, Action fail = null, Action complete = null) + { + CallWXAPI("showLoading", new { title, mask }, + res => success?.Invoke(JsonMapper.ToObject(res)), + res => fail?.Invoke(JsonMapper.ToObject(res)), + res => complete?.Invoke(JsonMapper.ToObject(res)) + ); + } + + /// + /// 隐藏 loading 提示框 + /// + public void HideLoading(Action success = null, Action fail = null, Action complete = null) + { + CallWXAPI("hideLoading", null, + res => success?.Invoke(JsonMapper.ToObject(res)), + res => fail?.Invoke(JsonMapper.ToObject(res)), + res => complete?.Invoke(JsonMapper.ToObject(res)) + ); + } + + #endregion + + #region Public Methods - Event Listeners + + /// + /// 注册事件监听器 + /// + /// 事件名称,如 "onShow", "onHide" + /// 回调函数 + public void RegisterEventListener(string eventName, Action callback) + { + if (!_eventListeners.ContainsKey(eventName)) + { + _eventListeners[eventName] = new List>(); + + // 发送事件注册消息到基础库 + var request = new PCHPRequestMessage + { + type = "event_register", + requestId = GenerateRequestId(), + api = eventName, + data = "{}", + timestamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() + }; + SendMessageInternal(JsonMapper.ToJson(request)); + } + + _eventListeners[eventName].Add(callback); + Debug.Log($"[WXPCHPInitScript] 注册事件监听: {eventName}"); + } + + /// + /// 移除事件监听器 + /// + /// 事件名称 + /// 要移除的回调函数,为null则移除所有 + public void UnregisterEventListener(string eventName, Action callback = null) + { + if (!_eventListeners.ContainsKey(eventName)) + { + return; + } + + if (callback == null) + { + _eventListeners.Remove(eventName); + } + else + { + _eventListeners[eventName].Remove(callback); + if (_eventListeners[eventName].Count == 0) + { + _eventListeners.Remove(eventName); + } + } + + // 如果没有监听器了,通知基础库取消注册 + if (!_eventListeners.ContainsKey(eventName)) + { + var request = new PCHPRequestMessage + { + type = "event_unregister", + requestId = GenerateRequestId(), + api = eventName, + data = "{}", + timestamp = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() + }; + SendMessageInternal(JsonMapper.ToJson(request)); + } + + Debug.Log($"[WXPCHPInitScript] 移除事件监听: {eventName}"); + } + + #endregion + + #region Public Methods - Raw Message + + /// + /// 发送原始消息字符串 + /// + /// 消息内容 + /// 是否发送成功 + public bool SendRawMessage(string message) + { + return SendMessageInternal(message); + } + + /// + /// 发送原始消息字节数组 /// /// 消息数据 /// 是否发送成功 @@ -313,6 +627,75 @@ namespace WeChatWASM #region Private Methods + /// + /// 生成唯一请求ID + /// + private string GenerateRequestId() + { + return $"pchp_{++_requestIdCounter}_{DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()}"; + } + + /// + /// 内部发送消息方法 + /// + private bool SendMessageInternal(string message) + { + if (!IsInitialized || !IsConnected) + { + Debug.LogWarning("[WXPCHPInitScript] SDK未初始化或未连接"); + return false; + } + + try + { + byte[] data = System.Text.Encoding.UTF8.GetBytes(message); + return SendMessage(data); + } + catch (Exception e) + { + Debug.LogError($"[WXPCHPInitScript] 发送消息异常: {e.Message}"); + return false; + } + } + + /// + /// 显示信息弹窗(仅 Windows) + /// + private void ShowInfo(string message) + { + Debug.Log($"[WXPCHPInitScript] {message}"); +#if UNITY_STANDALONE_WIN + try + { + // MB_OK | MB_ICONINFORMATION = 0x40 + MessageBox(IntPtr.Zero, message, "WXPCHPInitScript Info", 0x40); + } + catch (System.Exception e) + { + Debug.LogWarning($"[WXPCHPInitScript] MessageBox 调用失败: {e.Message}"); + } +#endif + } + + /// + /// 显示错误弹窗(仅 Windows) + /// + private void ShowError(string message) + { + Debug.LogError($"[WXPCHPInitScript] {message}"); +#if UNITY_STANDALONE_WIN + try + { + // MB_OK | MB_ICONERROR = 0x10 + MessageBox(IntPtr.Zero, message, "WXPCHPInitScript Error", 0x10); + } + catch (System.Exception e) + { + Debug.LogWarning($"[WXPCHPInitScript] MessageBox 调用失败: {e.Message}"); + } +#endif + } + /// /// 清理SDK资源 /// @@ -325,6 +708,10 @@ namespace WeChatWASM try { + // 清理待处理回调 + _pendingCallbacks.Clear(); + _eventListeners.Clear(); + Cleanup(); Debug.Log("[WXPCHPInitScript] SDK清理完成"); } @@ -340,7 +727,79 @@ namespace WeChatWASM } /// - /// 异步消息处理回调 + /// 在主线程中处理消息队列 + /// + private void ProcessMessageQueue() + { + while (_messageQueue.TryDequeue(out var response)) + { + try + { + ProcessResponse(response); + } + catch (Exception e) + { + Debug.LogError($"[WXPCHPInitScript] 处理响应消息异常: {e.Message}"); + } + } + } + + /// + /// 处理响应消息 + /// + private void ProcessResponse(PCHPResponseMessage response) + { + if (response.type == "response") + { + // 处理API回调 + if (_pendingCallbacks.TryGetValue(response.requestId, out var callbackInfo)) + { + Debug.Log($"[WXPCHPInitScript] 收到API响应: {callbackInfo.ApiName}, callbackType: {response.callbackType}"); + + switch (response.callbackType) + { + case "success": + callbackInfo.OnSuccess?.Invoke(response.data ?? "{}"); + break; + case "fail": + callbackInfo.OnFail?.Invoke(response.data ?? $"{{\"errMsg\":\"{response.errMsg}\"}}"); + break; + case "complete": + callbackInfo.OnComplete?.Invoke(response.data ?? "{}"); + // complete 后移除回调 + _pendingCallbacks.Remove(response.requestId); + break; + } + } + else + { + Debug.LogWarning($"[WXPCHPInitScript] 未找到对应的回调: requestId={response.requestId}"); + } + } + else if (response.type == "event") + { + // 处理事件通知 + string eventName = response.api; + if (_eventListeners.TryGetValue(eventName, out var listeners)) + { + Debug.Log($"[WXPCHPInitScript] 收到事件: {eventName}"); + foreach (var listener in listeners.ToArray()) + { + try + { + listener?.Invoke(response.data ?? "{}"); + } + catch (Exception e) + { + Debug.LogError($"[WXPCHPInitScript] 事件回调异常: {eventName}, {e.Message}"); + } + } + } + } + } + + /// + /// 异步消息处理回调(从DLL回调,可能在非主线程) /// [AOT.MonoPInvokeCallback(typeof(AsyncMsgHandlerDelegate))] private static void HandleAsyncMessage(IntPtr data, int len) @@ -355,15 +814,29 @@ namespace WeChatWASM byte[] buffer = new byte[len]; Marshal.Copy(data, buffer, 0, len); - // 在主线程中触发事件 if (instance != null) { - // 直接调用,如果需要线程安全可以使用Unity的主线程调度 + // 触发原始消息事件 instance.OnMessageReceived?.Invoke(buffer); - // 打印收到的消息(用于调试) + // 解析消息 string message = System.Text.Encoding.UTF8.GetString(buffer); - Debug.Log($"[WXPCHPInitScript] 收到消息: {message}"); + Debug.Log($"[WXPCHPInitScript] 收到原始消息: {message}"); + + try + { + // 尝试解析为响应消息 + var response = JsonMapper.ToObject(message); + if (response != null && !string.IsNullOrEmpty(response.type)) + { + // 加入消息队列,在主线程中处理 + instance._messageQueue.Enqueue(response); + } + } + catch (Exception parseEx) + { + Debug.LogWarning($"[WXPCHPInitScript] 消息解析失败,可能是非标准格式: {parseEx.Message}"); + } } } catch (Exception e) @@ -374,4 +847,113 @@ namespace WeChatWASM #endregion } + + /// + /// PC高性能小游戏管理器 + /// 提供类似 wx.getPCHighPerformanceManager() 的接口 + /// + public class WXPCHighPerformanceManager + { + private static WXPCHighPerformanceManager _instance; + private WXPCHPInitScript _initScript; + + /// + /// 获取 PC 高性能管理器实例 + /// + public static WXPCHighPerformanceManager GetInstance() + { + if (_instance == null) + { + _instance = new WXPCHighPerformanceManager(); + } + return _instance; + } + + private WXPCHighPerformanceManager() + { + _initScript = WXPCHPInitScript.Instance; + } + + /// + /// 是否支持PC高性能模式 + /// + public bool IsSupported => _initScript != null && _initScript.IsInitialized && _initScript.IsConnected; + + /// + /// 调用微信API + /// + public string CallWXAPI(string apiName, object data, Action onSuccess = null, Action onFail = null, Action onComplete = null) + { + if (_initScript == null) + { + Debug.LogError("[WXPCHighPerformanceManager] InitScript 未初始化"); + return null; + } + return _initScript.CallWXAPI(apiName, data, onSuccess, onFail, onComplete); + } + + /// + /// 显示 Toast + /// + public void ShowToast(PCHPShowToastOption option, Action success = null, Action fail = null, Action complete = null) + { + _initScript?.ShowToast(option, success, fail, complete); + } + + /// + /// 隐藏 Toast + /// + public void HideToast(Action success = null, Action fail = null, Action complete = null) + { + _initScript?.HideToast(success, fail, complete); + } + + /// + /// 显示模态对话框 + /// + public void ShowModal(PCHPShowModalOption option, Action success = null, Action fail = null, Action complete = null) + { + _initScript?.ShowModal(option, success, fail, complete); + } + + /// + /// 显示 Loading + /// + public void ShowLoading(string title, bool mask = false, Action success = null, Action fail = null, Action complete = null) + { + _initScript?.ShowLoading(title, mask, success, fail, complete); + } + + /// + /// 隐藏 Loading + /// + public void HideLoading(Action success = null, Action fail = null, Action complete = null) + { + _initScript?.HideLoading(success, fail, complete); + } + + /// + /// 注册事件监听 + /// + public void On(string eventName, Action callback) + { + _initScript?.RegisterEventListener(eventName, callback); + } + + /// + /// 移除事件监听 + /// + public void Off(string eventName, Action callback = null) + { + _initScript?.UnregisterEventListener(eventName, callback); + } + + /// + /// 发送原始消息 + /// + public bool SendRawMessage(string message) + { + return _initScript?.SendRawMessage(message) ?? false; + } + } } diff --git a/Runtime/WXPCHPInitScript.cs.meta b/Runtime/WXPCHPInitScript.cs.meta index e66f55a8c..54959e04f 100644 --- a/Runtime/WXPCHPInitScript.cs.meta +++ b/Runtime/WXPCHPInitScript.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b17e781b27068bc4c4c35e83a27d5752 +guid: 65b48177033749bf973a8af5bfb6b257 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/check-version.js.meta b/Runtime/playable-default/check-version.js.meta index fed6e390f..7f4efbd4a 100644 --- a/Runtime/playable-default/check-version.js.meta +++ b/Runtime/playable-default/check-version.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 98999f6ea00bfb3b84bf9c2835a6eef2 + guid: 843fbfe6b1059f2e27b97fd3cd84068a DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/data-package.meta b/Runtime/playable-default/data-package.meta index d31631c03..15c7ad49b 100644 --- a/Runtime/playable-default/data-package.meta +++ b/Runtime/playable-default/data-package.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 5fe8e4698db6787ef27f06eeda650147 +guid: 3a331d20de788eec8dabbf9791362c59 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/data-package/game.js.meta b/Runtime/playable-default/data-package/game.js.meta index 37e3f6ff6..29db18135 100644 --- a/Runtime/playable-default/data-package/game.js.meta +++ b/Runtime/playable-default/data-package/game.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: b323d5a6d73630f4b4ecda839651033d + guid: bfde866bbf107ed06f04e258e84c744d DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/events.js.meta b/Runtime/playable-default/events.js.meta index 514cfdb57..fd22d2a91 100644 --- a/Runtime/playable-default/events.js.meta +++ b/Runtime/playable-default/events.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1d5b6db6afe4b8afb6245b6f23739d2f + guid: 347869c3146de4a6ecf43dd0804345db DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/game.js.meta b/Runtime/playable-default/game.js.meta index d4106dac6..7b41c1753 100644 --- a/Runtime/playable-default/game.js.meta +++ b/Runtime/playable-default/game.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: df45bfeff203d16da5c5f1e8452090f6 + guid: 7da3cbf992c22b77755aaf23da134e12 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/game.json.meta b/Runtime/playable-default/game.json.meta index dc310fb7e..b63819bd8 100644 --- a/Runtime/playable-default/game.json.meta +++ b/Runtime/playable-default/game.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1ce7441f792f130992db545a10e2c3d5 + guid: 5885d27249d33dbb02bdc51835accbd3 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/playable-fix.js.meta b/Runtime/playable-default/playable-fix.js.meta index 5c4de9fcf..090555968 100644 --- a/Runtime/playable-default/playable-fix.js.meta +++ b/Runtime/playable-default/playable-fix.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 78da3c9c505427840dd81abe46c7069e + guid: 450e3be1a2c1bb87f7ccdf4154150a4b DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/plugin-config.js.meta b/Runtime/playable-default/plugin-config.js.meta index 6c2d7c760..2c5e350b5 100644 --- a/Runtime/playable-default/plugin-config.js.meta +++ b/Runtime/playable-default/plugin-config.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2e91a6a5b83bcca43ad4b4033696e0c2 + guid: 4397f20bee3078845e45a7db660f53eb DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/plugins.meta b/Runtime/playable-default/plugins.meta index 8c90751b4..848b14bdc 100644 --- a/Runtime/playable-default/plugins.meta +++ b/Runtime/playable-default/plugins.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 464a894d6d01c7c459f527a804724d78 +guid: 0b7c80b1c05de84242be07cddaed8422 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/plugins/check-update.js.meta b/Runtime/playable-default/plugins/check-update.js.meta index 4893ae647..746ed1c0e 100644 --- a/Runtime/playable-default/plugins/check-update.js.meta +++ b/Runtime/playable-default/plugins/check-update.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 0cc332e3839b1b2167b33323709aa48c + guid: 2f40b9548f493d836771a5775541e1a3 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/plugins/screen-adapter.js.meta b/Runtime/playable-default/plugins/screen-adapter.js.meta index 96109c34e..b766942e9 100644 --- a/Runtime/playable-default/plugins/screen-adapter.js.meta +++ b/Runtime/playable-default/plugins/screen-adapter.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 638dc490461c5dca0fce313ac3f4e09a + guid: 490b863bed2b95d5cdc2896e18199bec DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/project.config.json.meta b/Runtime/playable-default/project.config.json.meta index bdad7cb77..6dc0bae32 100644 --- a/Runtime/playable-default/project.config.json.meta +++ b/Runtime/playable-default/project.config.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 8725ad7c5b52afb7d06666216749ec81 + guid: e7332ebf5091adef1944cf47ce73746e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/texture-config.js.meta b/Runtime/playable-default/texture-config.js.meta index a1c0fdd66..cac939b39 100644 --- a/Runtime/playable-default/texture-config.js.meta +++ b/Runtime/playable-default/texture-config.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 78bec9c75ab7394f412793b8710c08f2 + guid: 2ddc85469844d290e788ef9b09431462 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-namespace.js.meta b/Runtime/playable-default/unity-namespace.js.meta index 2eb5655ae..fdbe15986 100644 --- a/Runtime/playable-default/unity-namespace.js.meta +++ b/Runtime/playable-default/unity-namespace.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1b5064b4615296f4a4ab734ef9c07e40 + guid: 79ff0274b9caac0a97550672a72de7bf DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-playable-plugin.meta b/Runtime/playable-default/unity-playable-plugin.meta index 16285ba51..8cc902bc7 100644 --- a/Runtime/playable-default/unity-playable-plugin.meta +++ b/Runtime/playable-default/unity-playable-plugin.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 94194295cae6ce6b0015d68033dcf677 +guid: ed4858d477136fd2b5709d0ebde8485e folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/unity-playable-plugin/index.js.meta b/Runtime/playable-default/unity-playable-plugin/index.js.meta index 42e4834e7..4e3afd874 100644 --- a/Runtime/playable-default/unity-playable-plugin/index.js.meta +++ b/Runtime/playable-default/unity-playable-plugin/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 06d1b4b5b92d23a7994106d0f3da5508 + guid: 7488f39b62a2a03ba777eff5073af2d1 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk.meta b/Runtime/playable-default/unity-sdk.meta index 2324e5e56..439784d34 100644 --- a/Runtime/playable-default/unity-sdk.meta +++ b/Runtime/playable-default/unity-sdk.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 63e7cd23cb3265f5d6551f9f183f8302 +guid: e19847ba2eef99fed68a5146bca054b7 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/unity-sdk/audio.meta b/Runtime/playable-default/unity-sdk/audio.meta index 916959578..befa5c325 100644 --- a/Runtime/playable-default/unity-sdk/audio.meta +++ b/Runtime/playable-default/unity-sdk/audio.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 0cebc9a8b40658b0078d04a51d100c18 +guid: b1f63dbdfc20b1ab98d05683ac1a1219 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/unity-sdk/audio/common.js.meta b/Runtime/playable-default/unity-sdk/audio/common.js.meta index b28049731..51dcc03ab 100644 --- a/Runtime/playable-default/unity-sdk/audio/common.js.meta +++ b/Runtime/playable-default/unity-sdk/audio/common.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 5672270ee592fd4379329c89b0d91b9b + guid: f6185728b6b82009b9ff0f01da6a6315 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/audio/const.js.meta b/Runtime/playable-default/unity-sdk/audio/const.js.meta index 7890ff4f1..47dc3c424 100644 --- a/Runtime/playable-default/unity-sdk/audio/const.js.meta +++ b/Runtime/playable-default/unity-sdk/audio/const.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 9ebbbb540f6c2470cb8b01ebe540a377 + guid: c32fea8033f212320254facc65a5e2e2 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/audio/index.js.meta b/Runtime/playable-default/unity-sdk/audio/index.js.meta index ac44c2d2b..99badf14a 100644 --- a/Runtime/playable-default/unity-sdk/audio/index.js.meta +++ b/Runtime/playable-default/unity-sdk/audio/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 73be2fffc3b35894a241641e57bc878c + guid: a3800933f83c029883820dbeed8f7558 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/audio/inner-audio.js.meta b/Runtime/playable-default/unity-sdk/audio/inner-audio.js.meta index 854863dc2..4789d8e5b 100644 --- a/Runtime/playable-default/unity-sdk/audio/inner-audio.js.meta +++ b/Runtime/playable-default/unity-sdk/audio/inner-audio.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: b3b91618191090763bea9efe8040bc77 + guid: 4eafb26d811d8119fd2e9f88bc3ad87e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/audio/store.js.meta b/Runtime/playable-default/unity-sdk/audio/store.js.meta index f6071f56a..bf90cc6e0 100644 --- a/Runtime/playable-default/unity-sdk/audio/store.js.meta +++ b/Runtime/playable-default/unity-sdk/audio/store.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 45ce489fa2bb6fae3bc6ad07a364369a + guid: 320a50d4772628dbaabd7bebf53f5f0a DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/audio/unity-audio.js.meta b/Runtime/playable-default/unity-sdk/audio/unity-audio.js.meta index 678176f14..c5146bf7f 100644 --- a/Runtime/playable-default/unity-sdk/audio/unity-audio.js.meta +++ b/Runtime/playable-default/unity-sdk/audio/unity-audio.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2f7bd879fa9d6be62fc72b4c07584004 + guid: a3ea47f0b40fad0208b11434d38a367a DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/audio/utils.js.meta b/Runtime/playable-default/unity-sdk/audio/utils.js.meta index 4e14145b8..58fea3848 100644 --- a/Runtime/playable-default/unity-sdk/audio/utils.js.meta +++ b/Runtime/playable-default/unity-sdk/audio/utils.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 6a4a6e7860a190511c9fa32b7e18699b + guid: f54839918a2ab6fd043b8fecf2cf1b17 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/canvas-context.js.meta b/Runtime/playable-default/unity-sdk/canvas-context.js.meta index 03decd18f..dfebeb71d 100644 --- a/Runtime/playable-default/unity-sdk/canvas-context.js.meta +++ b/Runtime/playable-default/unity-sdk/canvas-context.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 8e0fb83cb1d90213a0bb107535d21e1b + guid: 607c7b96d82e1cb35c36b0bd8c0c0ae8 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/canvas.js.meta b/Runtime/playable-default/unity-sdk/canvas.js.meta index 8e78a102d..c4997a685 100644 --- a/Runtime/playable-default/unity-sdk/canvas.js.meta +++ b/Runtime/playable-default/unity-sdk/canvas.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: cb0a08a572c8505b12f947e1038ba40d + guid: cec0be8faa7b2a2cb102f8baf478a30d DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/conf.js.meta b/Runtime/playable-default/unity-sdk/conf.js.meta index e7ca4c3e1..7e76e9724 100644 --- a/Runtime/playable-default/unity-sdk/conf.js.meta +++ b/Runtime/playable-default/unity-sdk/conf.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: ae3dda314c57b099950394cd6befc454 + guid: 62340a355d78d94b4d9d2763c9b6120c DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/file-info.js.meta b/Runtime/playable-default/unity-sdk/file-info.js.meta index 26da66b48..7b191e608 100644 --- a/Runtime/playable-default/unity-sdk/file-info.js.meta +++ b/Runtime/playable-default/unity-sdk/file-info.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2f1f6ee4f38d4deaf57bcd15bd4986c8 + guid: 349cc2da08ffa71a4c5efb57d7c71cd5 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/fix.js.meta b/Runtime/playable-default/unity-sdk/fix.js.meta index e9d03d95e..d17be6a61 100644 --- a/Runtime/playable-default/unity-sdk/fix.js.meta +++ b/Runtime/playable-default/unity-sdk/fix.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 7219be5bb7495030d1beaec210f6758d + guid: a9f3af7171e7e12802fe9897882f993f DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/fs.js.meta b/Runtime/playable-default/unity-sdk/fs.js.meta index d949ae3ba..d777c1501 100644 --- a/Runtime/playable-default/unity-sdk/fs.js.meta +++ b/Runtime/playable-default/unity-sdk/fs.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: a0b6b64730459c67e5aea448be816122 + guid: 516b1231faabbc608a1ea2e0abb162ed DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/index.js.meta b/Runtime/playable-default/unity-sdk/index.js.meta index a31aea9fd..4882c5dcc 100644 --- a/Runtime/playable-default/unity-sdk/index.js.meta +++ b/Runtime/playable-default/unity-sdk/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2977e3d9c2726bdcff3a8002e03cce3b + guid: bdc9f53aba5520ee4e81476ff79f68da DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/logger.js.meta b/Runtime/playable-default/unity-sdk/logger.js.meta index 607279ca2..d8d14b565 100644 --- a/Runtime/playable-default/unity-sdk/logger.js.meta +++ b/Runtime/playable-default/unity-sdk/logger.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c539cdc1283255b80e4b83afce67978c + guid: d89549a38f5278f76daa90136ef9d1e7 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/mobileKeyboard.meta b/Runtime/playable-default/unity-sdk/mobileKeyboard.meta index 921e523cf..d32c51b5f 100644 --- a/Runtime/playable-default/unity-sdk/mobileKeyboard.meta +++ b/Runtime/playable-default/unity-sdk/mobileKeyboard.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 185d3db97711a9f76c19bad6c379b125 +guid: 01df3344842d117544dc9f89495815e2 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/unity-sdk/mobileKeyboard/index.js.meta b/Runtime/playable-default/unity-sdk/mobileKeyboard/index.js.meta index b795566bf..3fd76dc65 100644 --- a/Runtime/playable-default/unity-sdk/mobileKeyboard/index.js.meta +++ b/Runtime/playable-default/unity-sdk/mobileKeyboard/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 937b3406a62f7b46ec77d1c5e01e11d7 + guid: 887066bddb6191c4ac470be64bb06788 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/module-helper.js.meta b/Runtime/playable-default/unity-sdk/module-helper.js.meta index 91e0efd99..c614058a8 100644 --- a/Runtime/playable-default/unity-sdk/module-helper.js.meta +++ b/Runtime/playable-default/unity-sdk/module-helper.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 6c6177df2dbcbec824067b91d6154593 + guid: 0ad8f981d4af2e77d743ba1a40f650b4 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/recorder.js.meta b/Runtime/playable-default/unity-sdk/recorder.js.meta index d7b93c826..e4d789778 100644 --- a/Runtime/playable-default/unity-sdk/recorder.js.meta +++ b/Runtime/playable-default/unity-sdk/recorder.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 56d9988f9babae10f26197828c42a63a + guid: 04edb092809059594ba37d3528ad09a9 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/resType.js b/Runtime/playable-default/unity-sdk/resType.js index a4a98d884..52ec7f576 100644 --- a/Runtime/playable-default/unity-sdk/resType.js +++ b/Runtime/playable-default/unity-sdk/resType.js @@ -33,6 +33,7 @@ export const ResType = { phoneCalendarAuthorized: 'string', }, AppBaseInfo: { + PCKernelVersion: 'string', SDKVersion: 'string', enableDebug: 'bool', fontSizeScaleFactor: 'number', @@ -61,6 +62,10 @@ export const ResType = { platform: 'string', system: 'string', }, + DirectAdStatusInfo: { + isInDirectGameAd: 'bool', + isInMask: 'bool', + }, EnterOptionsGame: { apiCategory: 'string', query: 'object', @@ -79,12 +84,16 @@ export const ResType = { feedId: 'string', }, LaunchOptionsGame: { + hostExtraData: 'HostExtraData', query: 'object', referrerInfo: 'EnterOptionsGameReferrerInfo', scene: 'number', chatType: 'number', shareTicket: 'string', }, + HostExtraData: { + host_scene: 'string', + }, ClientRect: { bottom: 'number', height: 'number', @@ -94,13 +103,50 @@ export const ResType = { width: 'number', }, OfficialComponentsInfo: { + challengeRewardsComponentInfo: 'ChallengeRewardsComponentInfo', notificationComponentInfo: 'OfficialComponentInfo', + rewardsComponentInfo: 'RewardsComponentInfo', + }, + ChallengeRewardsComponentInfo: { + name: 'string', + receiveDetail: 'ChallengeReceiveDetail', + }, + ChallengeReceiveDetail: { + awardResult: 'number', + receivedRareReward: 'bool', + userSourceList: 'UserSource[]', + }, + UserSource: { + sourceType: 'number', + source: 'SourceInfo', + sourceNum: 'number', + }, + SourceInfo: { + propList: 'PropInfo[]', + type: 'number', + sourceName: 'string', + }, + PropInfo: { + propName: 'string', + propNum: 'number', }, OfficialComponentInfo: { boundingClientRect: 'ClientRect', isVisible: 'bool', name: 'string', }, + RewardsComponentInfo: { + canReceiveFriendGiftCount: 'number', + canReceiveGiftCount: 'number', + name: 'string', + receiveDetail: 'ReceiveDetail', + }, + ReceiveDetail: { + desc: 'string', + icon: 'string', + name: 'string', + type: 'string', + }, GetStorageInfoSyncOption: { currentSize: 'number', keys: 'string[]', @@ -284,6 +330,18 @@ export const ResType = { added: 'bool', errMsg: 'string', }, + CheckIsSupportMidasPaymentFailCallbackErr: { + errMsg: 'string', + }, + CheckIsSupportMidasPaymentSuccessCallbackResult: { + data: 'CheckIsSupportMidasPaymentSuccessCallbackDataResult', + errMsg: 'string', + }, + CheckIsSupportMidasPaymentSuccessCallbackDataResult: { + allow_pay: 'bool', + err_code: 'number', + err_msg: 'string', + }, ChooseImageSuccessCallbackResult: { tempFilePaths: 'string[]', tempFiles: 'ImageFile[]', @@ -531,7 +589,7 @@ export const ResType = { status: 'number', errMsg: 'string', }, - GetChatToolInfoSuccessCallbackResult: { + RequestMidasFriendPaymentSuccessCallbackResult: { cloudID: 'string', encryptedData: 'string', errMsg: 'string', @@ -575,9 +633,14 @@ export const ResType = { errMsg: 'string', }, GetGameExptInfoSuccessCallbackResult: { - list: 'object', + list: 'GameExptInfo[]', errMsg: 'string', }, + GameExptInfo: { + expt_id: 'number', + param_name: 'string', + param_value: 'string', + }, GetGroupEnterInfoError: { errMsg: 'string', errCode: 'number', @@ -611,6 +674,16 @@ export const ResType = { localip: 'string', netmask: 'string', }, + GetLocationSuccessCallbackResult: { + accuracy: 'number', + altitude: 'number', + horizontalAccuracy: 'number', + latitude: 'number', + longitude: 'number', + speed: 'number', + verticalAccuracy: 'number', + errMsg: 'string', + }, GetNetworkTypeSuccessCallbackResult: { hasSystemProxy: 'bool', networkType: 'string', @@ -764,6 +837,7 @@ export const ResType = { }, OnCopyUrlListenerResult: { query: 'string', + title: 'string', }, OnDeviceMotionChangeListenerResult: { alpha: 'number', @@ -773,6 +847,11 @@ export const ResType = { OnDeviceOrientationChangeListenerResult: { value: 'string', }, + OnDirectAdStatusChangeListenerResult: { + isEndByAbnormal: 'bool', + isInDirectGameAd: 'bool', + isInMask: 'bool', + }, ListenerError: { message: 'string', }, @@ -927,6 +1006,14 @@ export const ResType = { eventType: 'number', branchDim: 'string', }, + FacialRecognitionError: { + errMsg: 'string', + errCode: 'number', + }, + RequestFacialVerifyError: { + errMsg: 'string', + errCode: 'number', + }, MidasFriendPaymentError: { errMsg: 'string', errCode: 'number', @@ -961,7 +1048,7 @@ export const ResType = { errMsg: 'string', }, RequestSubscribeMessageSuccessCallbackResult: { - anyKeyWord: 'string', + anyKeyWord: 'object', errMsg: 'string', }, RequestSubscribeSystemMessageSuccessCallbackResult: { diff --git a/Runtime/playable-default/unity-sdk/resType.js.meta b/Runtime/playable-default/unity-sdk/resType.js.meta index 9fc17aebb..15a5dc592 100644 --- a/Runtime/playable-default/unity-sdk/resType.js.meta +++ b/Runtime/playable-default/unity-sdk/resType.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 29bb396fede385355f8cc12d4208b2c8 + guid: 6f6259f33f1b541c85b7d7946f51394b DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/resTypeOther.js.meta b/Runtime/playable-default/unity-sdk/resTypeOther.js.meta index b6f8ea8c1..143aeefff 100644 --- a/Runtime/playable-default/unity-sdk/resTypeOther.js.meta +++ b/Runtime/playable-default/unity-sdk/resTypeOther.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 364efc7b0c004ed1a73c653dc90d6102 + guid: c2387ee856f9dd44cb5f6e0a36df4a2e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/response.js.meta b/Runtime/playable-default/unity-sdk/response.js.meta index 31801a2dd..b29e71c02 100644 --- a/Runtime/playable-default/unity-sdk/response.js.meta +++ b/Runtime/playable-default/unity-sdk/response.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 9defc76ebce86c764b49b61c08daa4d5 + guid: a8a298572b2b5b89e51cf5b405126697 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/sdk.js.meta b/Runtime/playable-default/unity-sdk/sdk.js.meta index 84c3928b1..c5874189f 100644 --- a/Runtime/playable-default/unity-sdk/sdk.js.meta +++ b/Runtime/playable-default/unity-sdk/sdk.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: e695a0b96c72685c921b30273ffafb44 + guid: 5f4279e78ef543922006aabd67ccf8cc DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/special-callbacks.js.meta b/Runtime/playable-default/unity-sdk/special-callbacks.js.meta index 324b024f6..30b738638 100644 --- a/Runtime/playable-default/unity-sdk/special-callbacks.js.meta +++ b/Runtime/playable-default/unity-sdk/special-callbacks.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1a49c91d62d4afe06ebacae406ba4589 + guid: 546f5a51f5e6dda4e1b35d6ce7fabb88 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/texture.js.meta b/Runtime/playable-default/unity-sdk/texture.js.meta index 60cb6bd56..894157e3d 100644 --- a/Runtime/playable-default/unity-sdk/texture.js.meta +++ b/Runtime/playable-default/unity-sdk/texture.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c13d3f68318fa2422d11bd0fdcb98f7b + guid: caa427d56f8ca697d1d20cfc0b51103f DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/touch.meta b/Runtime/playable-default/unity-sdk/touch.meta index 467a3c999..e643d94fd 100644 --- a/Runtime/playable-default/unity-sdk/touch.meta +++ b/Runtime/playable-default/unity-sdk/touch.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: e2804651416f856c1c736d0aee469272 +guid: 144dec272c960881492cb5df90c9e166 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/unity-sdk/touch/index.js.meta b/Runtime/playable-default/unity-sdk/touch/index.js.meta index d8c0b1f5b..8a09d1a0e 100644 --- a/Runtime/playable-default/unity-sdk/touch/index.js.meta +++ b/Runtime/playable-default/unity-sdk/touch/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2f33c2f07d49e6d746360eed7ddb8584 + guid: b7e9e51efa212fa77db59f80e60d1a1b DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/util.js.meta b/Runtime/playable-default/unity-sdk/util.js.meta index 288b503aa..e1673c00c 100644 --- a/Runtime/playable-default/unity-sdk/util.js.meta +++ b/Runtime/playable-default/unity-sdk/util.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 70b56bc209bb306d0a0e40c7ab3189ec + guid: 46eadddce09ad54d2091cffdf4dad10a DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/utils.js.meta b/Runtime/playable-default/unity-sdk/utils.js.meta index 35ae949dd..3cfb3c958 100644 --- a/Runtime/playable-default/unity-sdk/utils.js.meta +++ b/Runtime/playable-default/unity-sdk/utils.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: bfb25047b539317dbe9e69a5ac129033 + guid: cc6370f1ed29a348e1cba44ece5e51d2 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/video.js.meta b/Runtime/playable-default/unity-sdk/video.js.meta index b986e798b..28d67f133 100644 --- a/Runtime/playable-default/unity-sdk/video.js.meta +++ b/Runtime/playable-default/unity-sdk/video.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: a99e9d9410edf4aeb82e0600ebb5febd + guid: f52cb03fdde5111d9762604c2ca4d923 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/unity-sdk/video.meta b/Runtime/playable-default/unity-sdk/video.meta index cfca0d502..c5fb36afc 100644 --- a/Runtime/playable-default/unity-sdk/video.meta +++ b/Runtime/playable-default/unity-sdk/video.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: a2fabb3becfd53671192a74b65ca3ceb +guid: baeba0b9c6b8caec08cd7c3164ef640d folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/unity-sdk/video/index.js.meta b/Runtime/playable-default/unity-sdk/video/index.js.meta index 967743de5..94644570a 100644 --- a/Runtime/playable-default/unity-sdk/video/index.js.meta +++ b/Runtime/playable-default/unity-sdk/video/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 3e2cc28a570e41c87aa57b8a9ba7537a + guid: 2bd5ad553815ba0d3637aebb7c6be1a0 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/wasmcode.meta b/Runtime/playable-default/wasmcode.meta index b8321da41..9a6197c16 100644 --- a/Runtime/playable-default/wasmcode.meta +++ b/Runtime/playable-default/wasmcode.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: da46eea5b3cffd47f66b3f8bfcb25481 +guid: 0d040182742c87af858c3859104a82d8 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/playable-default/wasmcode/game.js.meta b/Runtime/playable-default/wasmcode/game.js.meta index d9e651248..cecf9b60a 100644 --- a/Runtime/playable-default/wasmcode/game.js.meta +++ b/Runtime/playable-default/wasmcode/game.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 451ed408191ecd3d62cca654e769e333 + guid: 1496bd4d947f22b61098eef85a748ef6 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/playable-default/weapp-adapter.js.meta b/Runtime/playable-default/weapp-adapter.js.meta index 1e220b64b..d4c9afcd2 100644 --- a/Runtime/playable-default/weapp-adapter.js.meta +++ b/Runtime/playable-default/weapp-adapter.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: b38e0edd1915379960425931dfcba439 + guid: 50500121fb9eb14f5f9cc32c7c0d00da DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/check-version.js.meta b/Runtime/wechat-default/check-version.js.meta index 89090a250..3ea8b3001 100644 --- a/Runtime/wechat-default/check-version.js.meta +++ b/Runtime/wechat-default/check-version.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 5793663b55b21fc1253bffce24460e0f + guid: aa39589460c02bc26f5fed5a74e3c81e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/data-package.meta b/Runtime/wechat-default/data-package.meta index dcaf4ce55..f7da8f115 100644 --- a/Runtime/wechat-default/data-package.meta +++ b/Runtime/wechat-default/data-package.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 4b987bd2a2d9dd1e989dd304f1e93817 +guid: ce2f7bac749efebdaa7a7e771c61fa47 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/data-package/game.js.meta b/Runtime/wechat-default/data-package/game.js.meta index 03c1ab7f1..b6d3c8933 100644 --- a/Runtime/wechat-default/data-package/game.js.meta +++ b/Runtime/wechat-default/data-package/game.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 9686645b3ba4c7544f887d13c7c3f4c7 + guid: 2d7379a8307370c1167067746380ec07 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/events.js.meta b/Runtime/wechat-default/events.js.meta index b07933738..c20361445 100644 --- a/Runtime/wechat-default/events.js.meta +++ b/Runtime/wechat-default/events.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 304ffa1f24948f7b60120d0fc2a412f3 + guid: 242b35c86b70af4261b049a078733e8e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/game.js.meta b/Runtime/wechat-default/game.js.meta index 7c56cb1a8..000b4f09f 100644 --- a/Runtime/wechat-default/game.js.meta +++ b/Runtime/wechat-default/game.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: fc26402daa11fb5a72967c40754f9856 + guid: 870ae9e8c565d9c6e06ec9dcfd380513 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/game.json.meta b/Runtime/wechat-default/game.json.meta index 01bffa0d8..f4a041bb2 100644 --- a/Runtime/wechat-default/game.json.meta +++ b/Runtime/wechat-default/game.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: ad3b93ce4bb288d29bb726ad199f7365 + guid: deffaef26bea65f2ac3fc02c1597a57c DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/images.meta b/Runtime/wechat-default/images.meta index ddad4d070..02dc0dee1 100644 --- a/Runtime/wechat-default/images.meta +++ b/Runtime/wechat-default/images.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 552d22574939bf4fd398392626f601c0 +guid: a968fe5a9e0142eaa5eda3c190ac9606 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/images/background.jpg.meta b/Runtime/wechat-default/images/background.jpg.meta index 9aa56a741..f5ba52480 100644 --- a/Runtime/wechat-default/images/background.jpg.meta +++ b/Runtime/wechat-default/images/background.jpg.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 294b49f731df8f648e7fd7220ef39ba2 + guid: 4d1ced21bcaa2b67894f4b59cf4415d8 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/images/unity_logo.png.meta b/Runtime/wechat-default/images/unity_logo.png.meta index a8aea372f..0f861c344 100644 --- a/Runtime/wechat-default/images/unity_logo.png.meta +++ b/Runtime/wechat-default/images/unity_logo.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: dc31f1907a6e0f7096d8be1e2e862df3 + guid: 56715fae853f18984b628a43b9019d9c DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data.meta b/Runtime/wechat-default/open-data.meta index d24c9f6aa..d3ac5c96d 100644 --- a/Runtime/wechat-default/open-data.meta +++ b/Runtime/wechat-default/open-data.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 3297c469eb1a3f35e8bc0ab17d1f0f43 +guid: af24ca132eb5afee4be544200581c4b2 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/open-data/data.meta b/Runtime/wechat-default/open-data/data.meta index c616d44f7..7b4090787 100644 --- a/Runtime/wechat-default/open-data/data.meta +++ b/Runtime/wechat-default/open-data/data.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 22cdd3133b5282c082ddfbe9cc897e3f +guid: 13800b8477fa33a8a4212dd1db46775a folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/open-data/data/index.js.meta b/Runtime/wechat-default/open-data/data/index.js.meta index 275364810..c7c92e38c 100644 --- a/Runtime/wechat-default/open-data/data/index.js.meta +++ b/Runtime/wechat-default/open-data/data/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: bb06dcb377cb00c217c382e7e3e66b4e + guid: 38772387b1d73a5d4651a224d131ea93 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/data/utils.js.meta b/Runtime/wechat-default/open-data/data/utils.js.meta index 846104ac9..45edfe878 100644 --- a/Runtime/wechat-default/open-data/data/utils.js.meta +++ b/Runtime/wechat-default/open-data/data/utils.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: b73baa6e751b06320bc3609b46d8fbd7 + guid: d20901b8d0ccc850d56aab6eaebe6a9a DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/index.js.meta b/Runtime/wechat-default/open-data/index.js.meta index 501a44989..446848c4a 100644 --- a/Runtime/wechat-default/open-data/index.js.meta +++ b/Runtime/wechat-default/open-data/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: edf4fceecc870c5fe08dccaeb2ac993c + guid: cf26d78f3dfbf702767b11bf0dcf7503 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/loading.js.meta b/Runtime/wechat-default/open-data/loading.js.meta index 2841a949c..8b1ceabbc 100644 --- a/Runtime/wechat-default/open-data/loading.js.meta +++ b/Runtime/wechat-default/open-data/loading.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: a0061df1f485e5d9d4cd6849350dcdb1 + guid: 452a9cf9f66ca776ecc0f268a7af400d DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render.meta b/Runtime/wechat-default/open-data/render.meta index 11992a635..321c95ec9 100644 --- a/Runtime/wechat-default/open-data/render.meta +++ b/Runtime/wechat-default/open-data/render.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: a3d93fda6e19dfe28779cdc9542a88ce +guid: 4157471149be05f0a56fa7a181aa7d1c folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/open-data/render/image.meta b/Runtime/wechat-default/open-data/render/image.meta index 0ddd8ecb7..8fd95aa82 100644 --- a/Runtime/wechat-default/open-data/render/image.meta +++ b/Runtime/wechat-default/open-data/render/image.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 376549e321315e792215a612bbc11a55 +guid: 2d6b2f41ea75464e0b70cb3df7d84d67 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/open-data/render/image/avatar.png.meta b/Runtime/wechat-default/open-data/render/image/avatar.png.meta index 8fd6e58e9..8eb15f963 100644 --- a/Runtime/wechat-default/open-data/render/image/avatar.png.meta +++ b/Runtime/wechat-default/open-data/render/image/avatar.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 6b9b9c9f7008142b707dff36eeb68311 + guid: 2753eae06b4aa37cd239621f8ad8d6bf DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/button1.png.meta b/Runtime/wechat-default/open-data/render/image/button1.png.meta index 577daa2b1..5190b54c0 100644 --- a/Runtime/wechat-default/open-data/render/image/button1.png.meta +++ b/Runtime/wechat-default/open-data/render/image/button1.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 3727278716375425bae0db7520daade7 + guid: e8bfedcaf4ab55348b02c6ee4e89ec27 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/button2.png.meta b/Runtime/wechat-default/open-data/render/image/button2.png.meta index c0c91a8bd..6dd7e3377 100644 --- a/Runtime/wechat-default/open-data/render/image/button2.png.meta +++ b/Runtime/wechat-default/open-data/render/image/button2.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1739c23400a3c9ed930a5e1069b1a649 + guid: 28e12f4e8fd7197c0dcaca6e4051284f DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/button3.png.meta b/Runtime/wechat-default/open-data/render/image/button3.png.meta index e8be3a0ee..585301de8 100644 --- a/Runtime/wechat-default/open-data/render/image/button3.png.meta +++ b/Runtime/wechat-default/open-data/render/image/button3.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 0e1393dc7733ca29dfce9ded830f51e9 + guid: 26aa0cb6dca86d6e0c39a9e731b0dd27 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/loading.png.meta b/Runtime/wechat-default/open-data/render/image/loading.png.meta index b29260141..9596e694a 100644 --- a/Runtime/wechat-default/open-data/render/image/loading.png.meta +++ b/Runtime/wechat-default/open-data/render/image/loading.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: fbdf71162ab204bde41ef5bb3d00b77c + guid: 7b3c55acfaac76a70b8bc1a03f81534a DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/nameBg.png.meta b/Runtime/wechat-default/open-data/render/image/nameBg.png.meta index f5b7cf359..feceff47b 100644 --- a/Runtime/wechat-default/open-data/render/image/nameBg.png.meta +++ b/Runtime/wechat-default/open-data/render/image/nameBg.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: e13200ba313b38170e4207e75489fd45 + guid: 1a765490025b84c7241a49d1e08db3dd DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/rankAvatar.png.meta b/Runtime/wechat-default/open-data/render/image/rankAvatar.png.meta index e729b5307..cd4914e05 100644 --- a/Runtime/wechat-default/open-data/render/image/rankAvatar.png.meta +++ b/Runtime/wechat-default/open-data/render/image/rankAvatar.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c20507b80106ea6b7dea1b433e4be27e + guid: 3c0fbb6d55cafe1982529f6d6ea1dfe3 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/rankBg.png.meta b/Runtime/wechat-default/open-data/render/image/rankBg.png.meta index 1051b9c7d..184994e07 100644 --- a/Runtime/wechat-default/open-data/render/image/rankBg.png.meta +++ b/Runtime/wechat-default/open-data/render/image/rankBg.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 22ad9b9e8b130d120d32936dc40335da + guid: a416a3c529be0907d8117c7d81bc5aac DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/shareBg.png.meta b/Runtime/wechat-default/open-data/render/image/shareBg.png.meta index bd0093096..7385effb8 100644 --- a/Runtime/wechat-default/open-data/render/image/shareBg.png.meta +++ b/Runtime/wechat-default/open-data/render/image/shareBg.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: bc6f293824f8b83a7d925b99ce3c9353 + guid: f12003fb3737cf71b23706bc36abe9b2 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/image/shareBg2.png.meta b/Runtime/wechat-default/open-data/render/image/shareBg2.png.meta index 63d287dab..1d2554d4d 100644 --- a/Runtime/wechat-default/open-data/render/image/shareBg2.png.meta +++ b/Runtime/wechat-default/open-data/render/image/shareBg2.png.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 530c5d25863952ef0d3b34d7cfd3b796 + guid: dc3029741f61e70f091884cf806ddbaf DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/styles.meta b/Runtime/wechat-default/open-data/render/styles.meta index e134f81e8..5b1e8356f 100644 --- a/Runtime/wechat-default/open-data/render/styles.meta +++ b/Runtime/wechat-default/open-data/render/styles.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 7c6af8b2dcd9deb809264511fc92c039 +guid: 8d24601c44b5aee758da8f37b99b5f31 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/open-data/render/styles/friendRank.js.meta b/Runtime/wechat-default/open-data/render/styles/friendRank.js.meta index 81db720e8..c5dea7d3d 100644 --- a/Runtime/wechat-default/open-data/render/styles/friendRank.js.meta +++ b/Runtime/wechat-default/open-data/render/styles/friendRank.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: a07536c7f94ff8711a68886144fcc267 + guid: f67d6d7202f161222c795d97f1976dc0 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/styles/tips.js.meta b/Runtime/wechat-default/open-data/render/styles/tips.js.meta index 5d0ae3dc9..d71541583 100644 --- a/Runtime/wechat-default/open-data/render/styles/tips.js.meta +++ b/Runtime/wechat-default/open-data/render/styles/tips.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: ad110d1e53a7ae9601b99b3f1816c919 + guid: 730b660aa172d30e8148ad021d29eeb6 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/tpls.meta b/Runtime/wechat-default/open-data/render/tpls.meta index dad92cc4c..838395226 100644 --- a/Runtime/wechat-default/open-data/render/tpls.meta +++ b/Runtime/wechat-default/open-data/render/tpls.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 603d9c6d43b4d432ed03eb9e4c55f1e3 +guid: 9ebc27b536f5812bc9ce1f38fe8b09e0 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/open-data/render/tpls/friendRank.js.meta b/Runtime/wechat-default/open-data/render/tpls/friendRank.js.meta index 602f3ffc2..8478fe8b9 100644 --- a/Runtime/wechat-default/open-data/render/tpls/friendRank.js.meta +++ b/Runtime/wechat-default/open-data/render/tpls/friendRank.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 7d360a8f14db3ca623927883687d7786 + guid: 9ca4321d96f6c459982accf56a495a2f DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/open-data/render/tpls/tips.js.meta b/Runtime/wechat-default/open-data/render/tpls/tips.js.meta index cd4eb57ca..651a38cbc 100644 --- a/Runtime/wechat-default/open-data/render/tpls/tips.js.meta +++ b/Runtime/wechat-default/open-data/render/tpls/tips.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 5c8ec45b8d0d1317ed964a88c9f14310 + guid: fd5369a909a1b0f29319836624b8e433 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/plugin-config.js.meta b/Runtime/wechat-default/plugin-config.js.meta index 5aee2786a..f5ec89c9e 100644 --- a/Runtime/wechat-default/plugin-config.js.meta +++ b/Runtime/wechat-default/plugin-config.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c596badd0949ab47832b9639643402ca + guid: a60db0b49d8b8fff981515be8b094c5e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/plugins.meta b/Runtime/wechat-default/plugins.meta index ca6b790ea..8a34e7179 100644 --- a/Runtime/wechat-default/plugins.meta +++ b/Runtime/wechat-default/plugins.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b30b27f134a2c3e3dd41e0a4e396577f +guid: e6ebd5e81f684ffb8f6c398b9e57ed04 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/plugins/check-update.js.meta b/Runtime/wechat-default/plugins/check-update.js.meta index e67a80db4..04a3627fd 100644 --- a/Runtime/wechat-default/plugins/check-update.js.meta +++ b/Runtime/wechat-default/plugins/check-update.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c58cab518b54fe118f6bf807f904c9c0 + guid: 0dbf44c72509888f0e587c1fdecc9f36 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/plugins/screen-adapter.js.meta b/Runtime/wechat-default/plugins/screen-adapter.js.meta index 432f94ef9..31f56324f 100644 --- a/Runtime/wechat-default/plugins/screen-adapter.js.meta +++ b/Runtime/wechat-default/plugins/screen-adapter.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 6075a0debe60af6abf53998c14ab7180 + guid: 29b54b1d6d7be256a132fa8720175489 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/project.config.json.meta b/Runtime/wechat-default/project.config.json.meta index f02f6b719..78038476d 100644 --- a/Runtime/wechat-default/project.config.json.meta +++ b/Runtime/wechat-default/project.config.json.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 441d95d30ebc3d3baf19afe7622b64a3 + guid: a3106bab33e5f33a0586fb43530db398 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/texture-config.js.meta b/Runtime/wechat-default/texture-config.js.meta index 3118ad883..e3f4c943d 100644 --- a/Runtime/wechat-default/texture-config.js.meta +++ b/Runtime/wechat-default/texture-config.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 4a02ce238033a71d21e1a9707d8470f7 + guid: b389cd09325b0a191a9fad9707051778 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-namespace.js.meta b/Runtime/wechat-default/unity-namespace.js.meta index fb68823db..8a5e4ecf1 100644 --- a/Runtime/wechat-default/unity-namespace.js.meta +++ b/Runtime/wechat-default/unity-namespace.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: f314a6ddc06da44eeec9ad79925395bb + guid: 1e5f700f4aa42620b47f41a92110e240 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk.meta b/Runtime/wechat-default/unity-sdk.meta index 02d72f698..42ce93f7b 100644 --- a/Runtime/wechat-default/unity-sdk.meta +++ b/Runtime/wechat-default/unity-sdk.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 159b6d598a5adcbaac76cbffaf69fc78 +guid: ccaf42654187617ecfc07e150670ac49 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/TCPSocket.meta b/Runtime/wechat-default/unity-sdk/TCPSocket.meta index 39aaddd3a..9826431eb 100644 --- a/Runtime/wechat-default/unity-sdk/TCPSocket.meta +++ b/Runtime/wechat-default/unity-sdk/TCPSocket.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: e75b4b43878232ee15c48c9508d51c94 +guid: f8e965e128f8d2af0387d476989d3eef folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/TCPSocket/index.js.meta b/Runtime/wechat-default/unity-sdk/TCPSocket/index.js.meta index d6bc4868c..855e9136d 100644 --- a/Runtime/wechat-default/unity-sdk/TCPSocket/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/TCPSocket/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1faf4258aff6df8fa3b2b677b491a969 + guid: 29fba96bfbbddf7aa173d4f52288e11e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/UDPSocket.meta b/Runtime/wechat-default/unity-sdk/UDPSocket.meta index e704d4499..0024a2d82 100644 --- a/Runtime/wechat-default/unity-sdk/UDPSocket.meta +++ b/Runtime/wechat-default/unity-sdk/UDPSocket.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 38ee4b450e966074b37a75243843eaa2 +guid: 8fcb25cfa6001dad4ad0a584c10271ed folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/UDPSocket/index.js.meta b/Runtime/wechat-default/unity-sdk/UDPSocket/index.js.meta index 600200118..2682940b3 100644 --- a/Runtime/wechat-default/unity-sdk/UDPSocket/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/UDPSocket/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 019b3326f4b99b8d8c65aebbae71f260 + guid: efe3d18689323803f7d0e76ef1df2897 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/ad.js.meta b/Runtime/wechat-default/unity-sdk/ad.js.meta index 3b797daf7..7765a33bf 100644 --- a/Runtime/wechat-default/unity-sdk/ad.js.meta +++ b/Runtime/wechat-default/unity-sdk/ad.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c7b2f182db7158a3f15cf817b3f24526 + guid: ca4de10eb451f5d14f56055df8db8e5c DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/audio.meta b/Runtime/wechat-default/unity-sdk/audio.meta index 15fbe37a1..0bd30166c 100644 --- a/Runtime/wechat-default/unity-sdk/audio.meta +++ b/Runtime/wechat-default/unity-sdk/audio.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: aeafb8de3f8e9e1a0f74fb6644a54006 +guid: a6d5ba4a44cd180a991f3e938ceab8a7 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/audio/common.js.meta b/Runtime/wechat-default/unity-sdk/audio/common.js.meta index 4f6133c34..26b2da70e 100644 --- a/Runtime/wechat-default/unity-sdk/audio/common.js.meta +++ b/Runtime/wechat-default/unity-sdk/audio/common.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: ba189763daeb569a71442ad4bb27656f + guid: 55d0ef7e45af9843ad3ed52111809c3d DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/audio/const.js.meta b/Runtime/wechat-default/unity-sdk/audio/const.js.meta index e5d0e3c50..93e3a51da 100644 --- a/Runtime/wechat-default/unity-sdk/audio/const.js.meta +++ b/Runtime/wechat-default/unity-sdk/audio/const.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c1700306d25d45fcab7d1aab2c2a3c49 + guid: e83ea335f8ffa752b95cb5e3fe1b50bb DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/audio/index.js.meta b/Runtime/wechat-default/unity-sdk/audio/index.js.meta index cc164b5cc..66f7c832f 100644 --- a/Runtime/wechat-default/unity-sdk/audio/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/audio/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2ff40d28a8bf02227c8631174d6179ce + guid: 37f81dcad81d3524f8ac40b50f8b4fd2 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/audio/inner-audio.js.meta b/Runtime/wechat-default/unity-sdk/audio/inner-audio.js.meta index 515dab5df..51423bf01 100644 --- a/Runtime/wechat-default/unity-sdk/audio/inner-audio.js.meta +++ b/Runtime/wechat-default/unity-sdk/audio/inner-audio.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 17208d86c7f946502de9de1213bdeb85 + guid: 2af26864454ed50fdb7677e08a98bfce DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/audio/store.js.meta b/Runtime/wechat-default/unity-sdk/audio/store.js.meta index 827e5e383..46d2afff2 100644 --- a/Runtime/wechat-default/unity-sdk/audio/store.js.meta +++ b/Runtime/wechat-default/unity-sdk/audio/store.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1595fb8dcda9f7536638fb0806872113 + guid: b65b473f4e577d32fe41b3a24ae7e1a6 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/audio/unity-audio.js.meta b/Runtime/wechat-default/unity-sdk/audio/unity-audio.js.meta index 35d9381b5..a8dc14edf 100644 --- a/Runtime/wechat-default/unity-sdk/audio/unity-audio.js.meta +++ b/Runtime/wechat-default/unity-sdk/audio/unity-audio.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 470814dd18dce14f28610592600bfb31 + guid: 599bca51eeba104cba60f8b95d08d952 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/audio/utils.js.meta b/Runtime/wechat-default/unity-sdk/audio/utils.js.meta index 9eb3785f5..6ea8e5636 100644 --- a/Runtime/wechat-default/unity-sdk/audio/utils.js.meta +++ b/Runtime/wechat-default/unity-sdk/audio/utils.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 8309b566513cbd7d6b1b6dd499ea07cb + guid: 3d6c88814446593fe36dd7d497e475f9 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/authorize.js.meta b/Runtime/wechat-default/unity-sdk/authorize.js.meta index 6c3a2bbaa..943b0859b 100644 --- a/Runtime/wechat-default/unity-sdk/authorize.js.meta +++ b/Runtime/wechat-default/unity-sdk/authorize.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 36fe85929765f744a15095360ec87866 + guid: 822b5cb7399ff4bf5e0c6fd5190a671b DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/bluetooth.meta b/Runtime/wechat-default/unity-sdk/bluetooth.meta index 8fc777e3a..0c386f1bb 100644 --- a/Runtime/wechat-default/unity-sdk/bluetooth.meta +++ b/Runtime/wechat-default/unity-sdk/bluetooth.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 2f6f71be6a739809ac58a56952d9bf32 +guid: 3530e4f7d72814b420dbaad2d4188026 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/bluetooth/index.js.meta b/Runtime/wechat-default/unity-sdk/bluetooth/index.js.meta index d14ec4cd9..654ccbd85 100644 --- a/Runtime/wechat-default/unity-sdk/bluetooth/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/bluetooth/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 554251dcfb01671209f4ed54ad5f1333 + guid: 12f8f1dd2bad5e346f4dcaadaa4351d5 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/camera.js.meta b/Runtime/wechat-default/unity-sdk/camera.js.meta index 78dfed5d9..8ec826e38 100644 --- a/Runtime/wechat-default/unity-sdk/camera.js.meta +++ b/Runtime/wechat-default/unity-sdk/camera.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2754fabf11b2189c5bfce48b97306308 + guid: e339d20a3d75b187b1be0e84cd955b87 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/canvas-context.js.meta b/Runtime/wechat-default/unity-sdk/canvas-context.js.meta index 7f64fa134..38753eb12 100644 --- a/Runtime/wechat-default/unity-sdk/canvas-context.js.meta +++ b/Runtime/wechat-default/unity-sdk/canvas-context.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 41351b66827fee9e17d0a7ff460182ef + guid: b5602202184037ff69c3d7836eb73fc5 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/canvas.js.meta b/Runtime/wechat-default/unity-sdk/canvas.js.meta index 9504bea61..6f76c2c4a 100644 --- a/Runtime/wechat-default/unity-sdk/canvas.js.meta +++ b/Runtime/wechat-default/unity-sdk/canvas.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: fc54e4429dbd8b645698570947875d16 + guid: 01d6b644960fdbc401646a92ef1587bb DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/chat.js.meta b/Runtime/wechat-default/unity-sdk/chat.js.meta index 164a7b839..b9e221594 100644 --- a/Runtime/wechat-default/unity-sdk/chat.js.meta +++ b/Runtime/wechat-default/unity-sdk/chat.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: e0f8ad2e9dc3a1b99f9d18ae50aaa5db + guid: 4070c34fcff8bf7fa46f7829297ae0ef DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/cloud.js.meta b/Runtime/wechat-default/unity-sdk/cloud.js.meta index c28f662d7..63bb9fdce 100644 --- a/Runtime/wechat-default/unity-sdk/cloud.js.meta +++ b/Runtime/wechat-default/unity-sdk/cloud.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 7d654b759098d811060af6cc4dadac67 + guid: acf26666608c0c5090e5103224354c02 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/conf.js.meta b/Runtime/wechat-default/unity-sdk/conf.js.meta index 1f1ea263c..14dcf471d 100644 --- a/Runtime/wechat-default/unity-sdk/conf.js.meta +++ b/Runtime/wechat-default/unity-sdk/conf.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 3f857c3ca2ad8e419ac68f1197fc1956 + guid: 523ee7e101f9061760f83e2c58fbe6aa DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/file-info.js.meta b/Runtime/wechat-default/unity-sdk/file-info.js.meta index cea70d48a..b9fa85966 100644 --- a/Runtime/wechat-default/unity-sdk/file-info.js.meta +++ b/Runtime/wechat-default/unity-sdk/file-info.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 752f5b285d0531dd46000abd4b8f6df5 + guid: 6d179b1818b3d40c8762ee8c90873fa3 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/fix.js.meta b/Runtime/wechat-default/unity-sdk/fix.js.meta index 13eac17c5..f9b5abf8a 100644 --- a/Runtime/wechat-default/unity-sdk/fix.js.meta +++ b/Runtime/wechat-default/unity-sdk/fix.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 1e2aeda36b6251564fbb7e2893504503 + guid: 5e82c6df49f60402166500ac816d9917 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/font.meta b/Runtime/wechat-default/unity-sdk/font.meta index 11c0561a7..b9a12d450 100644 --- a/Runtime/wechat-default/unity-sdk/font.meta +++ b/Runtime/wechat-default/unity-sdk/font.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 67be857cea2ab1bae048fa2fa29e147b +guid: 137bcbe4c1823fc6d85962030060de35 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/font/fix-cmap.js.meta b/Runtime/wechat-default/unity-sdk/font/fix-cmap.js.meta index fdc9292d1..693e8b46e 100644 --- a/Runtime/wechat-default/unity-sdk/font/fix-cmap.js.meta +++ b/Runtime/wechat-default/unity-sdk/font/fix-cmap.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: fab8bbbca920e00aec373dd279fa5c4d + guid: b749c9824c4e7eb43f6d78114799e4e5 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/font/index.js.meta b/Runtime/wechat-default/unity-sdk/font/index.js.meta index c174f1242..d51945b9f 100644 --- a/Runtime/wechat-default/unity-sdk/font/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/font/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 116482f60b2522d7e4b665ad5d613543 + guid: 73a923f651b7d429344739f247e58508 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/font/read-metrics.js.meta b/Runtime/wechat-default/unity-sdk/font/read-metrics.js.meta index f65d3f235..d39669db9 100644 --- a/Runtime/wechat-default/unity-sdk/font/read-metrics.js.meta +++ b/Runtime/wechat-default/unity-sdk/font/read-metrics.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 59d718d45eb76842c23585dd1afc7c73 + guid: 5656c61c274f481be6c03e5ad32512c8 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/font/split-sc.js.meta b/Runtime/wechat-default/unity-sdk/font/split-sc.js.meta index e7201ffac..10bc7069d 100644 --- a/Runtime/wechat-default/unity-sdk/font/split-sc.js.meta +++ b/Runtime/wechat-default/unity-sdk/font/split-sc.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 7ddcf930d0133a18b090e1ae5b01b285 + guid: 9cd5a8bba51cff6c19142b0828b5f1a9 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/font/util.js.meta b/Runtime/wechat-default/unity-sdk/font/util.js.meta index 5ffd0b8e2..820bb39a7 100644 --- a/Runtime/wechat-default/unity-sdk/font/util.js.meta +++ b/Runtime/wechat-default/unity-sdk/font/util.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 45253639def7aebb215cf87cc98e7cc0 + guid: 3216efe3404208afdd26a0af26e82528 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/fs.js.meta b/Runtime/wechat-default/unity-sdk/fs.js.meta index 8bf112420..9f6484662 100644 --- a/Runtime/wechat-default/unity-sdk/fs.js.meta +++ b/Runtime/wechat-default/unity-sdk/fs.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: e8572ce138d2cd34ad4836cda09f1a47 + guid: 57e158c744c9319dc8e5e654cae984cb DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/game-club.js.meta b/Runtime/wechat-default/unity-sdk/game-club.js.meta index 7ac191660..29ce66df4 100644 --- a/Runtime/wechat-default/unity-sdk/game-club.js.meta +++ b/Runtime/wechat-default/unity-sdk/game-club.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 708ced4566d89207c58cebca8b524929 + guid: 2b69a3558ca8acae70a16bc9f2bc327e DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/game-recorder.js.meta b/Runtime/wechat-default/unity-sdk/game-recorder.js.meta index 0e5d4671c..f5e4912bd 100644 --- a/Runtime/wechat-default/unity-sdk/game-recorder.js.meta +++ b/Runtime/wechat-default/unity-sdk/game-recorder.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 6d2347c463a266656f3d61eafaceccf0 + guid: c50cafd0c8807d2fefa9d2b0a6085761 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/gyroscope.meta b/Runtime/wechat-default/unity-sdk/gyroscope.meta index 9be63d7cc..74760e603 100644 --- a/Runtime/wechat-default/unity-sdk/gyroscope.meta +++ b/Runtime/wechat-default/unity-sdk/gyroscope.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 858cf5429753b74695c45e5f881669ff +guid: 86299f213b960fa40658a85a5ab86c8c folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/gyroscope/index.js.meta b/Runtime/wechat-default/unity-sdk/gyroscope/index.js.meta index 2dc1d0e54..166867f20 100644 --- a/Runtime/wechat-default/unity-sdk/gyroscope/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/gyroscope/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 0596eba9c95e722e9a2082e2bfc6348e + guid: 245409e8c03cadc5b5b9acec7547dbff DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/index.js.meta b/Runtime/wechat-default/unity-sdk/index.js.meta index 6f22e7467..46534ed75 100644 --- a/Runtime/wechat-default/unity-sdk/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: bef66512585d68c9cdca98fa6a74361f + guid: 62e61f2087b49b88418be55cb891e7da DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/logger.js.meta b/Runtime/wechat-default/unity-sdk/logger.js.meta index 8c6a2be18..af0f75598 100644 --- a/Runtime/wechat-default/unity-sdk/logger.js.meta +++ b/Runtime/wechat-default/unity-sdk/logger.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 3c9338b95e6b8c800eb3f1676d39b04f + guid: e39afa99403ec0e5c2a06d42238e1763 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/mobileKeyboard.meta b/Runtime/wechat-default/unity-sdk/mobileKeyboard.meta index e66ae89a5..44f673503 100644 --- a/Runtime/wechat-default/unity-sdk/mobileKeyboard.meta +++ b/Runtime/wechat-default/unity-sdk/mobileKeyboard.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 15d5c30575820f3533a8580aa5ed051f +guid: 9a5d19401ff40f7627c4e4eeaa3b25b6 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/mobileKeyboard/index.js.meta b/Runtime/wechat-default/unity-sdk/mobileKeyboard/index.js.meta index 1f7883fb2..b3ad4357f 100644 --- a/Runtime/wechat-default/unity-sdk/mobileKeyboard/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/mobileKeyboard/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 625b7718a9255442f2e9f7089cbb8b86 + guid: 876c4a55ca9b1553e42101980b4d8d6f DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/module-helper.js.meta b/Runtime/wechat-default/unity-sdk/module-helper.js.meta index 5d94e636f..56b651e26 100644 --- a/Runtime/wechat-default/unity-sdk/module-helper.js.meta +++ b/Runtime/wechat-default/unity-sdk/module-helper.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 3b51ea9bc128149d7e053351c6b0e179 + guid: 6f04f11cdfc82fc4a79a732632ae2878 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/open-data.js.meta b/Runtime/wechat-default/unity-sdk/open-data.js.meta index 72b9f5d87..1baaa674b 100644 --- a/Runtime/wechat-default/unity-sdk/open-data.js.meta +++ b/Runtime/wechat-default/unity-sdk/open-data.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: a1db536c9e315c5c479d4e0ae5e08cb3 + guid: f49e765385cee03687fed2fb69e01570 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/recorder.js.meta b/Runtime/wechat-default/unity-sdk/recorder.js.meta index 587f18dbc..b67c78dbb 100644 --- a/Runtime/wechat-default/unity-sdk/recorder.js.meta +++ b/Runtime/wechat-default/unity-sdk/recorder.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 87ced1889046a36399b5322f7e8a8811 + guid: 3dfb08d366d584022111780356fd1893 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/resType.js b/Runtime/wechat-default/unity-sdk/resType.js index a4a98d884..52ec7f576 100644 --- a/Runtime/wechat-default/unity-sdk/resType.js +++ b/Runtime/wechat-default/unity-sdk/resType.js @@ -33,6 +33,7 @@ export const ResType = { phoneCalendarAuthorized: 'string', }, AppBaseInfo: { + PCKernelVersion: 'string', SDKVersion: 'string', enableDebug: 'bool', fontSizeScaleFactor: 'number', @@ -61,6 +62,10 @@ export const ResType = { platform: 'string', system: 'string', }, + DirectAdStatusInfo: { + isInDirectGameAd: 'bool', + isInMask: 'bool', + }, EnterOptionsGame: { apiCategory: 'string', query: 'object', @@ -79,12 +84,16 @@ export const ResType = { feedId: 'string', }, LaunchOptionsGame: { + hostExtraData: 'HostExtraData', query: 'object', referrerInfo: 'EnterOptionsGameReferrerInfo', scene: 'number', chatType: 'number', shareTicket: 'string', }, + HostExtraData: { + host_scene: 'string', + }, ClientRect: { bottom: 'number', height: 'number', @@ -94,13 +103,50 @@ export const ResType = { width: 'number', }, OfficialComponentsInfo: { + challengeRewardsComponentInfo: 'ChallengeRewardsComponentInfo', notificationComponentInfo: 'OfficialComponentInfo', + rewardsComponentInfo: 'RewardsComponentInfo', + }, + ChallengeRewardsComponentInfo: { + name: 'string', + receiveDetail: 'ChallengeReceiveDetail', + }, + ChallengeReceiveDetail: { + awardResult: 'number', + receivedRareReward: 'bool', + userSourceList: 'UserSource[]', + }, + UserSource: { + sourceType: 'number', + source: 'SourceInfo', + sourceNum: 'number', + }, + SourceInfo: { + propList: 'PropInfo[]', + type: 'number', + sourceName: 'string', + }, + PropInfo: { + propName: 'string', + propNum: 'number', }, OfficialComponentInfo: { boundingClientRect: 'ClientRect', isVisible: 'bool', name: 'string', }, + RewardsComponentInfo: { + canReceiveFriendGiftCount: 'number', + canReceiveGiftCount: 'number', + name: 'string', + receiveDetail: 'ReceiveDetail', + }, + ReceiveDetail: { + desc: 'string', + icon: 'string', + name: 'string', + type: 'string', + }, GetStorageInfoSyncOption: { currentSize: 'number', keys: 'string[]', @@ -284,6 +330,18 @@ export const ResType = { added: 'bool', errMsg: 'string', }, + CheckIsSupportMidasPaymentFailCallbackErr: { + errMsg: 'string', + }, + CheckIsSupportMidasPaymentSuccessCallbackResult: { + data: 'CheckIsSupportMidasPaymentSuccessCallbackDataResult', + errMsg: 'string', + }, + CheckIsSupportMidasPaymentSuccessCallbackDataResult: { + allow_pay: 'bool', + err_code: 'number', + err_msg: 'string', + }, ChooseImageSuccessCallbackResult: { tempFilePaths: 'string[]', tempFiles: 'ImageFile[]', @@ -531,7 +589,7 @@ export const ResType = { status: 'number', errMsg: 'string', }, - GetChatToolInfoSuccessCallbackResult: { + RequestMidasFriendPaymentSuccessCallbackResult: { cloudID: 'string', encryptedData: 'string', errMsg: 'string', @@ -575,9 +633,14 @@ export const ResType = { errMsg: 'string', }, GetGameExptInfoSuccessCallbackResult: { - list: 'object', + list: 'GameExptInfo[]', errMsg: 'string', }, + GameExptInfo: { + expt_id: 'number', + param_name: 'string', + param_value: 'string', + }, GetGroupEnterInfoError: { errMsg: 'string', errCode: 'number', @@ -611,6 +674,16 @@ export const ResType = { localip: 'string', netmask: 'string', }, + GetLocationSuccessCallbackResult: { + accuracy: 'number', + altitude: 'number', + horizontalAccuracy: 'number', + latitude: 'number', + longitude: 'number', + speed: 'number', + verticalAccuracy: 'number', + errMsg: 'string', + }, GetNetworkTypeSuccessCallbackResult: { hasSystemProxy: 'bool', networkType: 'string', @@ -764,6 +837,7 @@ export const ResType = { }, OnCopyUrlListenerResult: { query: 'string', + title: 'string', }, OnDeviceMotionChangeListenerResult: { alpha: 'number', @@ -773,6 +847,11 @@ export const ResType = { OnDeviceOrientationChangeListenerResult: { value: 'string', }, + OnDirectAdStatusChangeListenerResult: { + isEndByAbnormal: 'bool', + isInDirectGameAd: 'bool', + isInMask: 'bool', + }, ListenerError: { message: 'string', }, @@ -927,6 +1006,14 @@ export const ResType = { eventType: 'number', branchDim: 'string', }, + FacialRecognitionError: { + errMsg: 'string', + errCode: 'number', + }, + RequestFacialVerifyError: { + errMsg: 'string', + errCode: 'number', + }, MidasFriendPaymentError: { errMsg: 'string', errCode: 'number', @@ -961,7 +1048,7 @@ export const ResType = { errMsg: 'string', }, RequestSubscribeMessageSuccessCallbackResult: { - anyKeyWord: 'string', + anyKeyWord: 'object', errMsg: 'string', }, RequestSubscribeSystemMessageSuccessCallbackResult: { diff --git a/Runtime/wechat-default/unity-sdk/resType.js.meta b/Runtime/wechat-default/unity-sdk/resType.js.meta index c755514b2..5ccfc114d 100644 --- a/Runtime/wechat-default/unity-sdk/resType.js.meta +++ b/Runtime/wechat-default/unity-sdk/resType.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 3ee735023b727f9252bd35efd53ef459 + guid: 9fa464fe1a22d27a5a415696ebda2385 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/resTypeOther.js.meta b/Runtime/wechat-default/unity-sdk/resTypeOther.js.meta index 268a59c8a..e072d5110 100644 --- a/Runtime/wechat-default/unity-sdk/resTypeOther.js.meta +++ b/Runtime/wechat-default/unity-sdk/resTypeOther.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: af4def1ad4dbe9a92174a78f591e463b + guid: b87f8e1571ff8a604de431a605d9f2d4 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/response.js.meta b/Runtime/wechat-default/unity-sdk/response.js.meta index c14ff913e..6bb5810ad 100644 --- a/Runtime/wechat-default/unity-sdk/response.js.meta +++ b/Runtime/wechat-default/unity-sdk/response.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: d09dcf69b6a8b11c018c38ff9cdc9102 + guid: 01656105f1dd71a9dba51aabd48d5b70 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/sdk.js.meta b/Runtime/wechat-default/unity-sdk/sdk.js.meta index a82d18382..79265a901 100644 --- a/Runtime/wechat-default/unity-sdk/sdk.js.meta +++ b/Runtime/wechat-default/unity-sdk/sdk.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 2c85ce74b9e8ff9f1b8d08955833037b + guid: 596b4a7e0ffc7ed5fbd5590cca458aa1 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/share.js.meta b/Runtime/wechat-default/unity-sdk/share.js.meta index 449acef2c..86b2d8ede 100644 --- a/Runtime/wechat-default/unity-sdk/share.js.meta +++ b/Runtime/wechat-default/unity-sdk/share.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: e31d77d6ab4e1ae4277259e5597bdf8a + guid: 8a5e9bb94c1c738eb414e2288d0dce4c DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/storage.js.meta b/Runtime/wechat-default/unity-sdk/storage.js.meta index 0aec3c0b2..6328d0da0 100644 --- a/Runtime/wechat-default/unity-sdk/storage.js.meta +++ b/Runtime/wechat-default/unity-sdk/storage.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 915f84e0673add78f69572e3c97975ce + guid: 5fbb0a74bc0e4b9c083903ee2d4d33df DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/texture.js.meta b/Runtime/wechat-default/unity-sdk/texture.js.meta index 6ad9b6213..f66b627ff 100644 --- a/Runtime/wechat-default/unity-sdk/texture.js.meta +++ b/Runtime/wechat-default/unity-sdk/texture.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: a05f8e80c3b5242574ef09998b1fcd8a + guid: 96ce3464ef5338c408306c2c1a15024a DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/touch.meta b/Runtime/wechat-default/unity-sdk/touch.meta index 8d739f390..c1d26edd5 100644 --- a/Runtime/wechat-default/unity-sdk/touch.meta +++ b/Runtime/wechat-default/unity-sdk/touch.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 9710f92b6987e95e8bb3ad1be4ed8117 +guid: 91cdfb254dd80fe835890f334f3c6466 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/touch/index.js.meta b/Runtime/wechat-default/unity-sdk/touch/index.js.meta index ac75c1ac2..0a1032673 100644 --- a/Runtime/wechat-default/unity-sdk/touch/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/touch/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 05e9fe08b8de846d5770004787b5efec + guid: 1f7e6b5bed7a5fcab340522581a33032 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/upload-file.js.meta b/Runtime/wechat-default/unity-sdk/upload-file.js.meta index 7bb770914..b0da76e81 100644 --- a/Runtime/wechat-default/unity-sdk/upload-file.js.meta +++ b/Runtime/wechat-default/unity-sdk/upload-file.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: b312d0a0733159da3d17bf564cd10bdf + guid: 4048624ff5047fb4860fb0ce816e2d37 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/userinfo.js.meta b/Runtime/wechat-default/unity-sdk/userinfo.js.meta index 01313cb1c..578194d65 100644 --- a/Runtime/wechat-default/unity-sdk/userinfo.js.meta +++ b/Runtime/wechat-default/unity-sdk/userinfo.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: f36f35c383544fe16aa0403cfb44e3b7 + guid: eac2cc0d34ea620b57e1dbff53cdc559 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/util.js.meta b/Runtime/wechat-default/unity-sdk/util.js.meta index f8c8a8924..9b6a650d9 100644 --- a/Runtime/wechat-default/unity-sdk/util.js.meta +++ b/Runtime/wechat-default/unity-sdk/util.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 53200480fad19a7b6e38d93ec72e135b + guid: de189585a0c59c8e952f8edc856f42b4 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/utils.js.meta b/Runtime/wechat-default/unity-sdk/utils.js.meta index 78187050d..4bbf01a1d 100644 --- a/Runtime/wechat-default/unity-sdk/utils.js.meta +++ b/Runtime/wechat-default/unity-sdk/utils.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: c51389ba48c08f68e498998b70dd86f8 + guid: 060bc76d83ced0b35ca58950a88f663f DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/video.js.meta b/Runtime/wechat-default/unity-sdk/video.js.meta index ae052c658..e9e08f7c0 100644 --- a/Runtime/wechat-default/unity-sdk/video.js.meta +++ b/Runtime/wechat-default/unity-sdk/video.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: bca87687988024e83d7182b26066d66f + guid: 8e429f069e0fcf52d303aeb5ce8c16a6 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/unity-sdk/video.meta b/Runtime/wechat-default/unity-sdk/video.meta index e580c4c8a..3974740f4 100644 --- a/Runtime/wechat-default/unity-sdk/video.meta +++ b/Runtime/wechat-default/unity-sdk/video.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 6a768f56c1271520e9131fbd7d6af29c +guid: 216cf3f124b1cceb43b84e320381881f folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/unity-sdk/video/index.js.meta b/Runtime/wechat-default/unity-sdk/video/index.js.meta index 76db133be..3f1386447 100644 --- a/Runtime/wechat-default/unity-sdk/video/index.js.meta +++ b/Runtime/wechat-default/unity-sdk/video/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: a076316488d151ba9227cfb0176fefb3 + guid: 5077cbaa166731f5b8f561d28aa48c9c DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/wasmcode.meta b/Runtime/wechat-default/wasmcode.meta index 2c4b64c3e..8356cd6a8 100644 --- a/Runtime/wechat-default/wasmcode.meta +++ b/Runtime/wechat-default/wasmcode.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: f8af186bd9531f0144d204c8972cc6b5 +guid: 21d9d066efe8b2c07562705919bb8178 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/wasmcode/game.js.meta b/Runtime/wechat-default/wasmcode/game.js.meta index b0a67cfcb..9befc9842 100644 --- a/Runtime/wechat-default/wasmcode/game.js.meta +++ b/Runtime/wechat-default/wasmcode/game.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 7b13f7860f1e7dfc6e200f4c1c00c282 + guid: 415e47b7f8827ed8fc955f14ba73a4c9 DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/weapp-adapter.js.meta b/Runtime/wechat-default/weapp-adapter.js.meta index d855b80ec..7b3d7de3d 100644 --- a/Runtime/wechat-default/weapp-adapter.js.meta +++ b/Runtime/wechat-default/weapp-adapter.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: eaf8aa245a935481097759f7af154774 + guid: 843eb9170086ce5ac8fb26948089e70d DefaultImporter: externalObjects: {} userData: diff --git a/Runtime/wechat-default/workers.meta b/Runtime/wechat-default/workers.meta index ad4893e04..9029f9aa8 100644 --- a/Runtime/wechat-default/workers.meta +++ b/Runtime/wechat-default/workers.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: f79a6e0bb1c1e017beac5969c9832345 +guid: 73c9e80ceda71fbcd558bec9f01bc9e2 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/workers/response.meta b/Runtime/wechat-default/workers/response.meta index e86f54776..21fec5c9a 100644 --- a/Runtime/wechat-default/workers/response.meta +++ b/Runtime/wechat-default/workers/response.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 730bcd16d19d8943e59d6c631f6c9f56 +guid: d2bb8f451bb2fb5c63b0741678d28650 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Runtime/wechat-default/workers/response/index.js.meta b/Runtime/wechat-default/workers/response/index.js.meta index aea5b48f2..248d6d25c 100644 --- a/Runtime/wechat-default/workers/response/index.js.meta +++ b/Runtime/wechat-default/workers/response/index.js.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 - guid: 4a538eeffeac2d97c1da9dc34d05aa0f + guid: 0fa882d034c098a2bc1b65e82c10718c DefaultImporter: externalObjects: {} userData: