mirror of
https://github.com/wechat-miniprogram/minigame-tuanjie-transform-sdk.git
synced 2026-04-22 01:35:56 +08:00
Auto-publish.
This commit is contained in:
parent
764289f9c7
commit
9ceefe8ef1
36
CHANGELOG.md
36
CHANGELOG.md
@ -6,7 +6,41 @@ Removed - 删除功能/接口
|
|||||||
Fixed - 修复问题
|
Fixed - 修复问题
|
||||||
Others - 其他
|
Others - 其他
|
||||||
-->
|
-->
|
||||||
## v0.1.26 【预发布】
|
## 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)以加快读取速度
|
||||||
|
* 重要:Emscriptenglx相关能力支持,兼容unity2021/2022/tuanjie
|
||||||
|
* 重要:新版本的Wasm分包能力支持:大幅度优化了iOS平台高性能(+)模式的分包性能表现,大幅度减少了开发者预处理操作耗时,优化了分包操作耗时
|
||||||
|
* 普通:适配插件版本升至1.2.80
|
||||||
|
|
||||||
|
## 2025-8-12 v0.1.28 【重要更新】
|
||||||
|
### Feature
|
||||||
|
* 普通:PageManager.Show支持Promise
|
||||||
|
* 普通:性能工具实时数据流支持
|
||||||
|
* 普通:适配插件版本升至1.2.79
|
||||||
|
### Fixed
|
||||||
|
* 重要:修复Touch时进行IOS音频resume造成的卡顿问题
|
||||||
|
* 重要:UnityWebRequest、AssetBundle、Addressables等加载已缓存资源时,读文件报错导致游戏异常
|
||||||
|
|
||||||
|
## 2025-7-10 v0.1.27 【普通更新】
|
||||||
|
### Feature
|
||||||
|
* 普通:新增 JS_Sound_GetPosition 方法用于获取音频播放位置
|
||||||
|
* 普通:WebGL2变更为正式特性
|
||||||
|
* 普通:支持小游戏试玩导出
|
||||||
|
|
||||||
|
## 2025-5-8 v0.1.26 【普通更新】
|
||||||
### Feature
|
### Feature
|
||||||
* 普通:增加禁止多点触控的配置
|
* 普通:增加禁止多点触控的配置
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: DytLvSj8UC9CKob0XUy9Y3usKDmX8US1YgxYmBxa1iAZ/I8JbM5wZwE=
|
guid: 4ada38394365d4d28a5ce4c336723cce
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
136
Editor/BuildProfile/WeixinMiniGameSettings.cs
Normal file
136
Editor/BuildProfile/WeixinMiniGameSettings.cs
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
#if TUANJIE_1_4_OR_NEWER
|
||||||
|
using System;
|
||||||
|
using System.IO;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Reflection;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEditor.Build.Profile;
|
||||||
|
|
||||||
|
namespace WeChatWASM
|
||||||
|
{
|
||||||
|
public class WeixinMiniGameSettings : MiniGameSettings
|
||||||
|
{
|
||||||
|
public WXProjectConf ProjectConf;
|
||||||
|
public SDKOptions SDKOptions;
|
||||||
|
public CompileOptions CompileOptions;
|
||||||
|
public CompressTexture CompressTexture;
|
||||||
|
public List<string> PlayerPrefsKeys = new List<string>();
|
||||||
|
public FontOptions FontOptions;
|
||||||
|
|
||||||
|
[SerializeField] public bool m_AutomaticFillInstantGame = true;
|
||||||
|
|
||||||
|
public WeixinMiniGameSettings(MiniGameSettingsEditor editor) : base(editor)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool PreprocessBuild(BuildProfile buildProfile, BuildOptions options)
|
||||||
|
{
|
||||||
|
bool result = true;
|
||||||
|
if (!string.IsNullOrEmpty(buildProfile.buildPath))
|
||||||
|
{
|
||||||
|
this.ProjectConf.DST = buildProfile.buildPath;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Debug.LogError("Build Path is empty!");
|
||||||
|
result = false;
|
||||||
|
}
|
||||||
|
this.CompileOptions.DevelopBuild = buildProfile.platformSettings.development;
|
||||||
|
this.CompileOptions.AutoProfile = buildProfile.platformSettings.connectProfiler;
|
||||||
|
|
||||||
|
this.CompileOptions.CleanBuild = ((int)options & (int)BuildOptions.CleanBuildCache) != 0;
|
||||||
|
this.CompileOptions.ScriptOnly = ((int)options & (int)BuildOptions.BuildScriptsOnly) != 0;
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal void FillAutoStreamingAutomatically()
|
||||||
|
{
|
||||||
|
// Instant Game
|
||||||
|
if (WXConvertCore.IsInstantGameAutoStreaming())
|
||||||
|
{
|
||||||
|
if (m_AutomaticFillInstantGame)
|
||||||
|
{
|
||||||
|
ProjectConf.CDN = WXConvertCore.GetInstantGameAutoStreamingCDN();
|
||||||
|
if (!ProjectConf.bundlePathIdentifier.Contains("CUS/CustomAB;"))
|
||||||
|
{
|
||||||
|
ProjectConf.bundlePathIdentifier = "CUS/CustomAB;" + ProjectConf.bundlePathIdentifier;
|
||||||
|
}
|
||||||
|
if (!ProjectConf.bundlePathIdentifier.Contains("AS;"))
|
||||||
|
{
|
||||||
|
ProjectConf.bundlePathIdentifier = "AS;" + ProjectConf.bundlePathIdentifier;
|
||||||
|
}
|
||||||
|
ProjectConf.dataFileSubPrefix = "CUS";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void AutoStreamingLoad()
|
||||||
|
{
|
||||||
|
if (!WXConvertCore.IsInstantGameAutoStreaming())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Generate
|
||||||
|
Type asTextureUIType = Type.GetType("Unity.AutoStreaming.ASTextureUI,Unity.InstantGame.Editor");
|
||||||
|
if (asTextureUIType == null)
|
||||||
|
{
|
||||||
|
Debug.LogError("Type 'Unity.AutoStreaming.ASTextureUI' not found. ");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
MethodInfo generateTextureAssetBundlesMethod = asTextureUIType.GetMethod("GenerateTextureAssetBundles", BindingFlags.NonPublic | BindingFlags.Static);
|
||||||
|
generateTextureAssetBundlesMethod?.Invoke(null, new object[] { false });
|
||||||
|
|
||||||
|
// reflection to get WXConvertCore.FirstBundlePath
|
||||||
|
String FirstBundlePath = "";
|
||||||
|
var type = Type.GetType("WeChatWASM.WXConvertCore,WxEditor");
|
||||||
|
if (type == null)
|
||||||
|
{
|
||||||
|
Debug.LogError("Type 'WeChatWASM.WXConvertCore,WxEditor' not found. ");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
FieldInfo fieldInfo = type.GetField("FirstBundlePath", BindingFlags.Public | BindingFlags.Static);
|
||||||
|
if (fieldInfo != null)
|
||||||
|
{
|
||||||
|
FirstBundlePath = fieldInfo.GetValue(null) as String;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!string.IsNullOrEmpty(FirstBundlePath) && File.Exists(FirstBundlePath))
|
||||||
|
{
|
||||||
|
Type igBuildPipelineType = Type.GetType("Unity.InstantGame.IGBuildPipeline,Unity.InstantGame.Editor");
|
||||||
|
if (igBuildPipelineType == null)
|
||||||
|
{
|
||||||
|
Debug.LogError("Type 'Unity.InstantGame.IGBuildPipeline' not found. ");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
MethodInfo uploadMethod = igBuildPipelineType.GetMethod("UploadWeChatDataFile", BindingFlags.Public | BindingFlags.Static);
|
||||||
|
|
||||||
|
bool returnValue = false;
|
||||||
|
if (uploadMethod != null)
|
||||||
|
{
|
||||||
|
object[] parameters = new object[] { FirstBundlePath };
|
||||||
|
object result = uploadMethod.Invoke(null, parameters);
|
||||||
|
returnValue = Convert.ToBoolean(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (returnValue)
|
||||||
|
{
|
||||||
|
Debug.Log("转换完成并成功上传首包资源");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Debug.LogError("首包资源上传失败,请检查网络以及Auto Streaming配置是否正确。");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Debug.LogError("转换失败");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
7
Editor/BuildProfile/WeixinMiniGameSettings.cs.meta
Normal file
7
Editor/BuildProfile/WeixinMiniGameSettings.cs.meta
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 35f480205054085db3ceb2be04b7e97a
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
586
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs
Normal file
586
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs
Normal file
@ -0,0 +1,586 @@
|
|||||||
|
#if TUANJIE_1_4_OR_NEWER
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Reflection;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEditor.Build.Profile;
|
||||||
|
using UnityEngine;
|
||||||
|
using static WeChatWASM.WXConvertCore;
|
||||||
|
|
||||||
|
namespace WeChatWASM
|
||||||
|
{
|
||||||
|
public class WeixinMiniGameSettingsEditor : MiniGameSettingsEditor
|
||||||
|
{
|
||||||
|
private Vector2 scrollRoot;
|
||||||
|
private bool foldBaseInfo = true;
|
||||||
|
private bool foldLoadingConfig = true;
|
||||||
|
private bool foldSDKOptions = true;
|
||||||
|
private bool foldDebugOptions = true;
|
||||||
|
|
||||||
|
private bool foldInstantGame = false;
|
||||||
|
|
||||||
|
private bool foldFontOptions = false;
|
||||||
|
private Dictionary<string, string> formInputData = new Dictionary<string, string>();
|
||||||
|
private Dictionary<string, int> formIntPopupData = new Dictionary<string, int>();
|
||||||
|
private Dictionary<string, bool> formCheckboxData = new Dictionary<string, bool>();
|
||||||
|
public Texture tex;
|
||||||
|
|
||||||
|
public override void OnMiniGameSettingsIMGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty)
|
||||||
|
{
|
||||||
|
OnSettingsGUI(serializedObject, miniGameProperty);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnSettingsGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty)
|
||||||
|
{
|
||||||
|
loadData(serializedObject, miniGameProperty);
|
||||||
|
|
||||||
|
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;
|
||||||
|
|
||||||
|
foldBaseInfo = EditorGUILayout.Foldout(foldBaseInfo, "基本信息");
|
||||||
|
if (foldBaseInfo)
|
||||||
|
{
|
||||||
|
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||||
|
|
||||||
|
formInput("appid", "游戏AppID");
|
||||||
|
formInput("cdn", "游戏资源CDN");
|
||||||
|
formInput("projectName", "小游戏项目名");
|
||||||
|
formIntPopup("orientation", "游戏方向", new[] { "Portrait", "Landscape", "LandscapeLeft", "LandscapeRight" }, new[] { 0, 1, 2, 3 });
|
||||||
|
formInput("memorySize", "UnityHeap预留内存(?)", "单位MB,预分配内存值,超休闲游戏256/中轻度496/重度游戏768,需预估游戏最大UnityHeap值以防止内存自动扩容带来的峰值尖刺。预估方法请查看GIT文档《优化Unity WebGL的内存》");
|
||||||
|
|
||||||
|
EditorGUILayout.EndVertical();
|
||||||
|
}
|
||||||
|
|
||||||
|
foldLoadingConfig = EditorGUILayout.Foldout(foldLoadingConfig, "启动Loading配置");
|
||||||
|
if (foldLoadingConfig)
|
||||||
|
{
|
||||||
|
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||||
|
|
||||||
|
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();
|
||||||
|
|
||||||
|
formInput("videoUrl", "加载阶段视频URL");
|
||||||
|
formIntPopup("assetLoadType", "首包资源加载方式", new[] { "CDN", "小游戏包内" }, new[] { 0, 1 });
|
||||||
|
formCheckbox("compressDataPackage", "压缩首包资源(?)", "将首包资源Brotli压缩, 降低资源大小. 注意: 首次启动耗时可能会增加200ms, 仅推荐使用小游戏分包加载时节省包体大小使用");
|
||||||
|
formInput("bundleExcludeExtensions", "不自动缓存文件类型(?)", "(使用;分割)当请求url包含资源'cdn+StreamingAssets'时会自动缓存,但StreamingAssets目录下不是所有文件都需缓存,此选项配置不需要自动缓存的文件拓展名。默认值json");
|
||||||
|
formInput("bundleHashLength", "Bundle名称Hash长度(?)", "自定义Bundle文件名中hash部分长度,默认值32,用于缓存控制。");
|
||||||
|
formInput("preloadFiles", "预下载文件列表(?)", "使用;间隔,支持模糊匹配");
|
||||||
|
|
||||||
|
EditorGUILayout.EndVertical();
|
||||||
|
}
|
||||||
|
|
||||||
|
foldSDKOptions = EditorGUILayout.Foldout(foldSDKOptions, "SDK功能选项");
|
||||||
|
if (foldSDKOptions)
|
||||||
|
{
|
||||||
|
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||||
|
|
||||||
|
formCheckbox("useFriendRelation", "使用好友关系链");
|
||||||
|
formCheckbox("useMiniGameChat", "使用社交组件");
|
||||||
|
formCheckbox("preloadWXFont", "预加载微信字体(?)", "在game.js执行开始时预载微信系统字体,运行期间可使用WX.GetWXFont获取微信字体");
|
||||||
|
formCheckbox("disableMultiTouch", "禁止多点触控");
|
||||||
|
|
||||||
|
EditorGUILayout.EndVertical();
|
||||||
|
}
|
||||||
|
|
||||||
|
foldDebugOptions = EditorGUILayout.Foldout(foldDebugOptions, "调试编译选项");
|
||||||
|
if (foldDebugOptions)
|
||||||
|
{
|
||||||
|
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||||
|
// formCheckbox("developBuild", "Development Build");
|
||||||
|
formCheckbox("autoProfile", "Auto connect Profiler");
|
||||||
|
formCheckbox("scriptOnly", "Scripts Only Build");
|
||||||
|
#if TUANJIE_2022_3_OR_NEWER
|
||||||
|
// TODO: if overwrite by OverwritePlayerSettings
|
||||||
|
bool UseIL2CPP = PlayerSettings.GetScriptingBackend(BuildTargetGroup.WeixinMiniGame) == ScriptingImplementation.IL2CPP;
|
||||||
|
#else
|
||||||
|
bool UseIL2CPP = true;
|
||||||
|
#endif
|
||||||
|
formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP);
|
||||||
|
formCheckbox("profilingFuncs", "Profiling Funcs");
|
||||||
|
formCheckbox("profilingMemory", "Profiling Memory");
|
||||||
|
|
||||||
|
formCheckbox("webgl2", "WebGL2.0(beta)");
|
||||||
|
formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存");
|
||||||
|
formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案");
|
||||||
|
formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗");
|
||||||
|
formCheckbox("deleteStreamingAssets", "Clear Streaming Assets");
|
||||||
|
formCheckbox("cleanBuild", "Clean WebGL Build");
|
||||||
|
// formCheckbox("cleanCloudDev", "Clean Cloud Dev");
|
||||||
|
formCheckbox("fbslim", "首包资源优化(?)", "导出时自动清理UnityEditor默认打包但游戏项目从未使用的资源,瘦身首包资源体积。(团结引擎已无需开启该能力)", UnityUtil.GetEngineVersion() > 0, (res) =>
|
||||||
|
{
|
||||||
|
var fbWin = EditorWindow.GetWindow(typeof(WXFbSettingWindow), false, "首包资源优化配置面板", true);
|
||||||
|
fbWin.minSize = new Vector2(680, 350);
|
||||||
|
fbWin.Show();
|
||||||
|
});
|
||||||
|
formCheckbox("autoAdaptScreen", "自适应屏幕尺寸(?)", "移动端旋转屏幕和PC端拉伸窗口时,自动调整画布尺寸");
|
||||||
|
formCheckbox("showMonitorSuggestModal", "显示优化建议弹窗");
|
||||||
|
formCheckbox("enableProfileStats", "显示性能面板");
|
||||||
|
formCheckbox("enableRenderAnalysis", "显示渲染日志(dev only)");
|
||||||
|
|
||||||
|
{
|
||||||
|
formCheckbox("brotliMT", "brotli多线程压缩(?)", "开启多线程压缩可以提高出包速度,但会降低压缩率。如若不使用wasm代码分包请勿用多线程出包上线");
|
||||||
|
}
|
||||||
|
EditorGUILayout.EndVertical();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (WXConvertCore.IsInstantGameAutoStreaming())
|
||||||
|
{
|
||||||
|
foldInstantGame = EditorGUILayout.Foldout(foldInstantGame, "Instant Game - AutoStreaming");
|
||||||
|
if (foldInstantGame)
|
||||||
|
{
|
||||||
|
var automaticfillinstantgame = miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame");
|
||||||
|
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||||
|
GUILayout.BeginHorizontal();
|
||||||
|
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||||
|
formCheckbox("m_AutomaticFillInstantGame", "自动填写AutoStreaming", "仅在开启AutoStreaming生效");
|
||||||
|
GUILayout.EndHorizontal();
|
||||||
|
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());
|
||||||
|
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));
|
||||||
|
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(?)", "将填入的所有字符强制加入字体预加载列表");
|
||||||
|
EditorGUILayout.EndVertical();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
EditorGUILayout.EndScrollView();
|
||||||
|
saveData(serializedObject, miniGameProperty);
|
||||||
|
}
|
||||||
|
|
||||||
|
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";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
setData("projectName", ProjectConf.FindPropertyRelative("projectName").stringValue);
|
||||||
|
setData("appid", ProjectConf.FindPropertyRelative("Appid").stringValue);
|
||||||
|
setData("cdn", ProjectConf.FindPropertyRelative("CDN").stringValue);
|
||||||
|
setData("assetLoadType", ProjectConf.FindPropertyRelative("assetLoadType").intValue);
|
||||||
|
setData("compressDataPackage", ProjectConf.FindPropertyRelative("compressDataPackage").boolValue);
|
||||||
|
setData("videoUrl", ProjectConf.FindPropertyRelative("VideoUrl").stringValue);
|
||||||
|
setData("orientation", (int)ProjectConf.FindPropertyRelative("Orientation").enumValueIndex);
|
||||||
|
//setData("dst", ProjectConf.FindPropertyRelative("relativeDST").stringValue);
|
||||||
|
setData("bundleHashLength", ProjectConf.FindPropertyRelative("bundleHashLength").intValue.ToString());
|
||||||
|
setData("bundlePathIdentifier", ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue);
|
||||||
|
setData("bundleExcludeExtensions", ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue);
|
||||||
|
setData("preloadFiles", ProjectConf.FindPropertyRelative("preloadFiles").stringValue);
|
||||||
|
|
||||||
|
var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions");
|
||||||
|
// setData("developBuild", CompileOptions.FindPropertyRelative("DevelopBuild").boolValue);
|
||||||
|
setData("autoProfile", CompileOptions.FindPropertyRelative("AutoProfile").boolValue);
|
||||||
|
setData("scriptOnly", CompileOptions.FindPropertyRelative("ScriptOnly").boolValue);
|
||||||
|
setData("il2CppOptimizeSize", CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue);
|
||||||
|
setData("profilingFuncs", CompileOptions.FindPropertyRelative("profilingFuncs").boolValue);
|
||||||
|
setData("profilingMemory", CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue);
|
||||||
|
setData("deleteStreamingAssets", CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue);
|
||||||
|
setData("cleanBuild", CompileOptions.FindPropertyRelative("CleanBuild").boolValue);
|
||||||
|
setData("customNodePath", CompileOptions.FindPropertyRelative("CustomNodePath").stringValue);
|
||||||
|
setData("webgl2", CompileOptions.FindPropertyRelative("Webgl2").boolValue);
|
||||||
|
setData("iOSPerformancePlus", CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue);
|
||||||
|
setData("iOSMetal", CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue);
|
||||||
|
setData("EmscriptenGLX", CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue);
|
||||||
|
setData("fbslim", CompileOptions.FindPropertyRelative("fbslim").boolValue);
|
||||||
|
|
||||||
|
var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions");
|
||||||
|
setData("useFriendRelation", SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue);
|
||||||
|
setData("useMiniGameChat", SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue);
|
||||||
|
setData("preloadWXFont", SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue);
|
||||||
|
setData("disableMultiTouch", SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue);
|
||||||
|
setData("bgImageSrc", ProjectConf.FindPropertyRelative("bgImageSrc").stringValue);
|
||||||
|
tex = AssetDatabase.LoadAssetAtPath<Texture>(ProjectConf.FindPropertyRelative("bgImageSrc").stringValue);
|
||||||
|
setData("memorySize", ProjectConf.FindPropertyRelative("MemorySize").intValue.ToString());
|
||||||
|
setData("hideAfterCallMain", ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue);
|
||||||
|
|
||||||
|
setData("dataFileSubPrefix", ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue);
|
||||||
|
setData("maxStorage", ProjectConf.FindPropertyRelative("maxStorage").intValue.ToString());
|
||||||
|
setData("defaultReleaseSize", ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue.ToString());
|
||||||
|
setData("texturesHashLength", ProjectConf.FindPropertyRelative("texturesHashLength").intValue.ToString());
|
||||||
|
setData("texturesPath", ProjectConf.FindPropertyRelative("texturesPath").stringValue);
|
||||||
|
setData("needCacheTextures", ProjectConf.FindPropertyRelative("needCacheTextures").boolValue);
|
||||||
|
setData("loadingBarWidth", ProjectConf.FindPropertyRelative("loadingBarWidth").intValue.ToString());
|
||||||
|
setData("needCheckUpdate", ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue);
|
||||||
|
setData("disableHighPerformanceFallback", ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue);
|
||||||
|
setData("autoAdaptScreen", CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue);
|
||||||
|
setData("showMonitorSuggestModal", CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue);
|
||||||
|
setData("enableProfileStats", CompileOptions.FindPropertyRelative("enableProfileStats").boolValue);
|
||||||
|
setData("enableRenderAnalysis", CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue);
|
||||||
|
setData("brotliMT", CompileOptions.FindPropertyRelative("brotliMT").boolValue);
|
||||||
|
setData("autoUploadFirstBundle", true);
|
||||||
|
setData("m_AutomaticFillInstantGame", miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue);
|
||||||
|
|
||||||
|
// font options
|
||||||
|
var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions");
|
||||||
|
setData("CJK_Unified_Ideographs", FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue);
|
||||||
|
setData("C0_Controls_and_Basic_Latin", FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue);
|
||||||
|
setData("CJK_Symbols_and_Punctuation", FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue);
|
||||||
|
setData("General_Punctuation", FontOptions.FindPropertyRelative("General_Punctuation").boolValue);
|
||||||
|
setData("Enclosed_CJK_Letters_and_Months", FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue);
|
||||||
|
setData("Vertical_Forms", FontOptions.FindPropertyRelative("Vertical_Forms").boolValue);
|
||||||
|
setData("CJK_Compatibility_Forms", FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue);
|
||||||
|
setData("Miscellaneous_Symbols", FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue);
|
||||||
|
setData("CJK_Compatibility", FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue);
|
||||||
|
setData("Halfwidth_and_Fullwidth_Forms", FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue);
|
||||||
|
setData("Dingbats", FontOptions.FindPropertyRelative("Dingbats").boolValue);
|
||||||
|
setData("Letterlike_Symbols", FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue);
|
||||||
|
setData("Enclosed_Alphanumerics", FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue);
|
||||||
|
setData("Number_Forms", FontOptions.FindPropertyRelative("Number_Forms").boolValue);
|
||||||
|
setData("Currency_Symbols", FontOptions.FindPropertyRelative("Currency_Symbols").boolValue);
|
||||||
|
setData("Arrows", FontOptions.FindPropertyRelative("Arrows").boolValue);
|
||||||
|
setData("Geometric_Shapes", FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue);
|
||||||
|
setData("Mathematical_Operators", FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue);
|
||||||
|
setData("CustomUnicode", FontOptions.FindPropertyRelative("CustomUnicode").stringValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void saveData(SerializedObject serializedObject, SerializedProperty miniGameProperty)
|
||||||
|
{
|
||||||
|
serializedObject.UpdateIfRequiredOrScript();
|
||||||
|
|
||||||
|
var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf");
|
||||||
|
ProjectConf.FindPropertyRelative("projectName").stringValue = getDataInput("projectName");
|
||||||
|
ProjectConf.FindPropertyRelative("Appid").stringValue = getDataInput("appid");
|
||||||
|
ProjectConf.FindPropertyRelative("CDN").stringValue = getDataInput("cdn");
|
||||||
|
ProjectConf.FindPropertyRelative("assetLoadType").intValue = getDataPop("assetLoadType");
|
||||||
|
ProjectConf.FindPropertyRelative("compressDataPackage").boolValue = getDataCheckbox("compressDataPackage");
|
||||||
|
ProjectConf.FindPropertyRelative("VideoUrl").stringValue = getDataInput("videoUrl");
|
||||||
|
ProjectConf.FindPropertyRelative("Orientation").enumValueIndex = getDataPop("orientation");
|
||||||
|
ProjectConf.FindPropertyRelative("relativeDST").stringValue = serializedObject.FindProperty("m_BuildPath").stringValue;
|
||||||
|
ProjectConf.FindPropertyRelative("DST").stringValue = GetAbsolutePath(config.ProjectConf.relativeDST);
|
||||||
|
|
||||||
|
ProjectConf.FindPropertyRelative("bundleHashLength").intValue = int.Parse(getDataInput("bundleHashLength"));
|
||||||
|
ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = getDataInput("bundlePathIdentifier");
|
||||||
|
ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue = getDataInput("bundleExcludeExtensions");
|
||||||
|
ProjectConf.FindPropertyRelative("preloadFiles").stringValue = getDataInput("preloadFiles");
|
||||||
|
|
||||||
|
var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions");
|
||||||
|
|
||||||
|
CompileOptions.FindPropertyRelative("DevelopBuild").boolValue = serializedObject.FindProperty("m_PlatformSettings").FindPropertyRelative("m_Development").boolValue;
|
||||||
|
CompileOptions.FindPropertyRelative("AutoProfile").boolValue = getDataCheckbox("autoProfile");
|
||||||
|
CompileOptions.FindPropertyRelative("ScriptOnly").boolValue = getDataCheckbox("scriptOnly");
|
||||||
|
CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue = getDataCheckbox("il2CppOptimizeSize");
|
||||||
|
CompileOptions.FindPropertyRelative("profilingFuncs").boolValue = getDataCheckbox("profilingFuncs");
|
||||||
|
CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue = getDataCheckbox("profilingMemory");
|
||||||
|
CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue = getDataCheckbox("deleteStreamingAssets");
|
||||||
|
CompileOptions.FindPropertyRelative("CleanBuild").boolValue = getDataCheckbox("cleanBuild");
|
||||||
|
CompileOptions.FindPropertyRelative("CustomNodePath").stringValue = getDataInput("customNodePath");
|
||||||
|
CompileOptions.FindPropertyRelative("Webgl2").boolValue = getDataCheckbox("webgl2");
|
||||||
|
CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue = getDataCheckbox("iOSPerformancePlus");
|
||||||
|
CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue = getDataCheckbox("iOSMetal");
|
||||||
|
CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue = getDataCheckbox("EmscriptenGLX");
|
||||||
|
CompileOptions.FindPropertyRelative("fbslim").boolValue = getDataCheckbox("fbslim");
|
||||||
|
|
||||||
|
var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions");
|
||||||
|
SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue = getDataCheckbox("useFriendRelation");
|
||||||
|
SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue = getDataCheckbox("useMiniGameChat");
|
||||||
|
SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue = getDataCheckbox("preloadWXFont");
|
||||||
|
SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue = getDataCheckbox("disableMultiTouch");
|
||||||
|
ProjectConf.FindPropertyRelative("bgImageSrc").stringValue = getDataInput("bgImageSrc");
|
||||||
|
ProjectConf.FindPropertyRelative("MemorySize").intValue = int.Parse(getDataInput("memorySize"));
|
||||||
|
ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue = getDataCheckbox("hideAfterCallMain");
|
||||||
|
ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = getDataInput("dataFileSubPrefix");
|
||||||
|
ProjectConf.FindPropertyRelative("maxStorage").intValue = int.Parse(getDataInput("maxStorage"));
|
||||||
|
ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue = int.Parse(getDataInput("defaultReleaseSize"));
|
||||||
|
ProjectConf.FindPropertyRelative("texturesHashLength").intValue = int.Parse(getDataInput("texturesHashLength"));
|
||||||
|
ProjectConf.FindPropertyRelative("texturesPath").stringValue = getDataInput("texturesPath");
|
||||||
|
ProjectConf.FindPropertyRelative("needCacheTextures").boolValue = getDataCheckbox("needCacheTextures");
|
||||||
|
ProjectConf.FindPropertyRelative("loadingBarWidth").intValue = int.Parse(getDataInput("loadingBarWidth"));
|
||||||
|
ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue = getDataCheckbox("needCheckUpdate");
|
||||||
|
ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue = getDataCheckbox("disableHighPerformanceFallback");
|
||||||
|
CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue = getDataCheckbox("autoAdaptScreen");
|
||||||
|
CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue = getDataCheckbox("showMonitorSuggestModal");
|
||||||
|
CompileOptions.FindPropertyRelative("enableProfileStats").boolValue = getDataCheckbox("enableProfileStats");
|
||||||
|
CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue = getDataCheckbox("enableRenderAnalysis");
|
||||||
|
CompileOptions.FindPropertyRelative("brotliMT").boolValue = getDataCheckbox("brotliMT");
|
||||||
|
|
||||||
|
// font options
|
||||||
|
var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions");
|
||||||
|
FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue = getDataCheckbox("CJK_Unified_Ideographs");
|
||||||
|
FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue = getDataCheckbox("C0_Controls_and_Basic_Latin");
|
||||||
|
FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue = getDataCheckbox("CJK_Symbols_and_Punctuation");
|
||||||
|
FontOptions.FindPropertyRelative("General_Punctuation").boolValue = getDataCheckbox("General_Punctuation");
|
||||||
|
FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue = getDataCheckbox("Enclosed_CJK_Letters_and_Months");
|
||||||
|
FontOptions.FindPropertyRelative("Vertical_Forms").boolValue = getDataCheckbox("Vertical_Forms");
|
||||||
|
FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue = getDataCheckbox("CJK_Compatibility_Forms");
|
||||||
|
FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue = getDataCheckbox("Miscellaneous_Symbols");
|
||||||
|
FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue = getDataCheckbox("CJK_Compatibility");
|
||||||
|
FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue = getDataCheckbox("Halfwidth_and_Fullwidth_Forms");
|
||||||
|
FontOptions.FindPropertyRelative("Dingbats").boolValue = getDataCheckbox("Dingbats");
|
||||||
|
FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue = getDataCheckbox("Letterlike_Symbols");
|
||||||
|
FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue = getDataCheckbox("Enclosed_Alphanumerics");
|
||||||
|
FontOptions.FindPropertyRelative("Number_Forms").boolValue = getDataCheckbox("Number_Forms");
|
||||||
|
FontOptions.FindPropertyRelative("Currency_Symbols").boolValue = getDataCheckbox("Currency_Symbols");
|
||||||
|
FontOptions.FindPropertyRelative("Arrows").boolValue = getDataCheckbox("Arrows");
|
||||||
|
FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = getDataCheckbox("Geometric_Shapes");
|
||||||
|
FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = getDataCheckbox("Mathematical_Operators");
|
||||||
|
FontOptions.FindPropertyRelative("CustomUnicode").stringValue = getDataInput("CustomUnicode");
|
||||||
|
FontOptions.FindPropertyRelative("Arrows").boolValue = getDataCheckbox("Arrows");
|
||||||
|
FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = getDataCheckbox("Geometric_Shapes");
|
||||||
|
FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = getDataCheckbox("Mathematical_Operators");
|
||||||
|
FontOptions.FindPropertyRelative("CustomUnicode").stringValue = getDataInput("CustomUnicode");
|
||||||
|
|
||||||
|
miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue = getDataCheckbox("m_AutomaticFillInstantGame");
|
||||||
|
|
||||||
|
serializedObject.ApplyModifiedProperties();
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool getDataCheckbox(string target)
|
||||||
|
{
|
||||||
|
if (formCheckboxData.ContainsKey(target))
|
||||||
|
return formCheckboxData[target];
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private string getDataInput(string target)
|
||||||
|
{
|
||||||
|
if (formInputData.ContainsKey(target))
|
||||||
|
return formInputData[target];
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
private int getDataPop(string target)
|
||||||
|
{
|
||||||
|
if (formIntPopupData.ContainsKey(target))
|
||||||
|
return formIntPopupData[target];
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setData(string target, string value)
|
||||||
|
{
|
||||||
|
if (formInputData.ContainsKey(target))
|
||||||
|
{
|
||||||
|
formInputData[target] = value;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
formInputData.Add(target, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setData(string target, bool value)
|
||||||
|
{
|
||||||
|
if (formCheckboxData.ContainsKey(target))
|
||||||
|
{
|
||||||
|
formCheckboxData[target] = value;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
formCheckboxData.Add(target, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setData(string target, int value)
|
||||||
|
{
|
||||||
|
if (formIntPopupData.ContainsKey(target))
|
||||||
|
{
|
||||||
|
formIntPopupData[target] = value;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
formIntPopupData.Add(target, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void formInput(string target, string label, string help = null)
|
||||||
|
{
|
||||||
|
if (!formInputData.ContainsKey(target))
|
||||||
|
{
|
||||||
|
formInputData[target] = "";
|
||||||
|
}
|
||||||
|
GUILayout.BeginHorizontal();
|
||||||
|
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||||
|
if (help == null)
|
||||||
|
{
|
||||||
|
GUILayout.Label(label, GUILayout.Width(140));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GUILayout.Label(new GUIContent(label, help), GUILayout.Width(140));
|
||||||
|
}
|
||||||
|
formInputData[target] = GUILayout.TextField(formInputData[target], GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 195));
|
||||||
|
GUILayout.EndHorizontal();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void formCheckbox(string target, string label, string help = null, bool disable = false, Action<bool> setting = null)
|
||||||
|
{
|
||||||
|
if (!formCheckboxData.ContainsKey(target))
|
||||||
|
{
|
||||||
|
formCheckboxData[target] = false;
|
||||||
|
}
|
||||||
|
GUILayout.BeginHorizontal();
|
||||||
|
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||||
|
if (help == null)
|
||||||
|
{
|
||||||
|
GUILayout.Label(label, GUILayout.Width(140));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GUILayout.Label(new GUIContent(label, help), GUILayout.Width(140));
|
||||||
|
}
|
||||||
|
EditorGUI.BeginDisabledGroup(disable);
|
||||||
|
formCheckboxData[target] = EditorGUILayout.Toggle(disable ? false : formCheckboxData[target]);
|
||||||
|
|
||||||
|
if (setting != null)
|
||||||
|
{
|
||||||
|
EditorGUILayout.LabelField("", GUILayout.Width(10));
|
||||||
|
// <20><><EFBFBD>ð<EFBFBD>ť
|
||||||
|
if (GUILayout.Button(new GUIContent("<22><><EFBFBD><EFBFBD>"), GUILayout.Width(40), GUILayout.Height(18)))
|
||||||
|
{
|
||||||
|
setting?.Invoke(true);
|
||||||
|
}
|
||||||
|
EditorGUILayout.LabelField("", GUILayout.MinWidth(10));
|
||||||
|
}
|
||||||
|
|
||||||
|
EditorGUI.EndDisabledGroup();
|
||||||
|
|
||||||
|
if (setting == null)
|
||||||
|
EditorGUILayout.LabelField(string.Empty);
|
||||||
|
GUILayout.EndHorizontal();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void formIntPopup(string target, string label, string[] options, int[] values)
|
||||||
|
{
|
||||||
|
if (!formIntPopupData.ContainsKey(target))
|
||||||
|
{
|
||||||
|
formIntPopupData[target] = 0;
|
||||||
|
}
|
||||||
|
GUILayout.BeginHorizontal();
|
||||||
|
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||||
|
GUILayout.Label(label, GUILayout.Width(140));
|
||||||
|
formIntPopupData[target] = EditorGUILayout.IntPopup(formIntPopupData[target], options, values, GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 195));
|
||||||
|
GUILayout.EndHorizontal();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool IsAbsolutePath(string path)
|
||||||
|
{
|
||||||
|
// 检查是否为空或空白
|
||||||
|
if (string.IsNullOrWhiteSpace(path))
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 在 Windows 上,检查驱动器字母或网络路径
|
||||||
|
if (Application.platform == RuntimePlatform.WindowsEditor && Path.IsPathRooted(path))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 在 Unix/Linux 和 macOS 上,检查是否以 '/' 开头
|
||||||
|
if (Application.platform == RuntimePlatform.OSXEditor && path.StartsWith("/"))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false; // 否则为相对路径
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string GetAbsolutePath(string path)
|
||||||
|
{
|
||||||
|
if (IsAbsolutePath(path))
|
||||||
|
{
|
||||||
|
return path;
|
||||||
|
}
|
||||||
|
string projectRootPath = System.IO.Path.GetFullPath(Application.dataPath + "/../");
|
||||||
|
return Path.Combine(projectRootPath, path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
7
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs.meta
Normal file
7
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs.meta
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: df4d545d2ba5ed176543212d06fd4afd
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
177
Editor/BuildProfile/WeixinSubplatformInterface.cs
Normal file
177
Editor/BuildProfile/WeixinSubplatformInterface.cs
Normal file
@ -0,0 +1,177 @@
|
|||||||
|
#if TUANJIE_1_4_OR_NEWER
|
||||||
|
using System;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEditor.Build.Profile;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.Rendering;
|
||||||
|
|
||||||
|
|
||||||
|
namespace WeChatWASM
|
||||||
|
{
|
||||||
|
[InitializeOnLoad]
|
||||||
|
public static class WeixinSubTargetManager
|
||||||
|
{
|
||||||
|
static WeixinSubTargetManager()
|
||||||
|
{
|
||||||
|
MiniGameSubplatformManager.RegisterSubplatform(new WeixinSubplatformInterface());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class WeixinSubplatformInterface : MiniGameSubplatformInterface
|
||||||
|
{
|
||||||
|
class CacheConfig
|
||||||
|
{
|
||||||
|
public WXProjectConf ProjectConf;
|
||||||
|
public SDKOptions SDKOptions;
|
||||||
|
public CompileOptions CompileOptions;
|
||||||
|
public CompressTexture CompressTexture;
|
||||||
|
public List<string> PlayerPrefsKeys = new List<string>();
|
||||||
|
public FontOptions FontOptions;
|
||||||
|
}
|
||||||
|
|
||||||
|
private CacheConfig cacheConfig = new CacheConfig();
|
||||||
|
|
||||||
|
public override string GetSubplatformName()
|
||||||
|
{
|
||||||
|
return "WeChat:微信小游戏";
|
||||||
|
}
|
||||||
|
|
||||||
|
public override MiniGameSettings GetSubplatformSettings()
|
||||||
|
{
|
||||||
|
return new WeixinMiniGameSettings(new WeixinMiniGameSettingsEditor());
|
||||||
|
}
|
||||||
|
|
||||||
|
public override BuildMiniGameError Build(BuildProfile buildProfile)
|
||||||
|
{
|
||||||
|
// Useless
|
||||||
|
return BuildMiniGameError.InvalidInput;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override BuildMiniGameError Build(BuildProfile buildProfile, BuildOptions options)
|
||||||
|
{
|
||||||
|
WeixinMiniGameSettings settings = buildProfile.miniGameSettings as WeixinMiniGameSettings;
|
||||||
|
|
||||||
|
BuildMiniGameError buildMiniGameError = BuildMiniGameError.Unknown;
|
||||||
|
bool preprocessSuccess = WechatBuildPreprocess(buildProfile);
|
||||||
|
if (!preprocessSuccess)
|
||||||
|
{
|
||||||
|
return BuildMiniGameError.InvalidInput;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (settings is not null)
|
||||||
|
{
|
||||||
|
settings.FillAutoStreamingAutomatically();
|
||||||
|
if (settings.PreprocessBuild(buildProfile, options))
|
||||||
|
{
|
||||||
|
|
||||||
|
var error = CallDoExport(buildProfile);
|
||||||
|
int enumIntValue = Convert.ToInt32(error);
|
||||||
|
switch (enumIntValue)
|
||||||
|
{
|
||||||
|
case 0: // SUCCEED
|
||||||
|
{
|
||||||
|
WeixinMiniGameSettings.AutoStreamingLoad();
|
||||||
|
buildMiniGameError = BuildMiniGameError.Succeeded;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 2: // BUILD_WEBGL_FAILED
|
||||||
|
{
|
||||||
|
buildMiniGameError = BuildMiniGameError.PlayerBuildFailed;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 1: // NODE_NOT_FOUND
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
buildMiniGameError = BuildMiniGameError.Unknown;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
BuildPostProcess(buildProfile);
|
||||||
|
return buildMiniGameError;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool WechatBuildPreprocess(BuildProfile buildProfile)
|
||||||
|
{
|
||||||
|
// Check GFX API and Color Space
|
||||||
|
if (buildProfile != null)
|
||||||
|
{
|
||||||
|
PlayerSettings playerSettings = buildProfile.playerSettings;
|
||||||
|
// Global PlayerSettings
|
||||||
|
ColorSpace colorSpace = PlayerSettings.colorSpace;
|
||||||
|
GraphicsDeviceType[] apis = PlayerSettings.GetGraphicsAPIs(buildProfile.buildTarget);
|
||||||
|
bool isAutomatic = PlayerSettings.GetUseDefaultGraphicsAPIs(buildProfile.buildTarget);
|
||||||
|
|
||||||
|
if (playerSettings != null)
|
||||||
|
{
|
||||||
|
// BuildProfile PlayerSettings Override
|
||||||
|
colorSpace = PlayerSettings.GetColorSpace_Internal(playerSettings);
|
||||||
|
apis = PlayerSettings.GetGraphicsAPIs_Internal(playerSettings, buildProfile.buildTarget);
|
||||||
|
isAutomatic = PlayerSettings.GetUseDefaultGraphicsAPIs_Internal(playerSettings, buildProfile.buildTarget);
|
||||||
|
|
||||||
|
// set override templatePath
|
||||||
|
var absolutePath = Path.GetFullPath(Path.Combine("Packages", "com.qq.weixin.minigame", "WebGLTemplates/WXTemplate2022TJ"));
|
||||||
|
if (!Directory.Exists(absolutePath))
|
||||||
|
absolutePath = Path.GetFullPath(Path.Combine(Application.dataPath, "WebGLTemplates/WXTemplate2022TJ"));
|
||||||
|
|
||||||
|
if (Directory.Exists(absolutePath))
|
||||||
|
PlayerSettings.MiniGame.SetTemplatePath_Internal(playerSettings, $"PATH:{absolutePath}");
|
||||||
|
|
||||||
|
PlayerSettings.MiniGame.SetThreadsSupport_Internal(playerSettings, false);
|
||||||
|
PlayerSettings.MiniGame.SetCompressionFormat_Internal(playerSettings, MiniGameCompressionFormat.Disabled);
|
||||||
|
PlayerSettings.MiniGame.SetLinkerTarget_Internal(playerSettings, MiniGameLinkerTarget.Wasm);
|
||||||
|
PlayerSettings.MiniGame.SetDataCaching_Internal(playerSettings, false);
|
||||||
|
PlayerSettings.MiniGame.SetDebugSymbolMode_Internal(playerSettings, MiniGameDebugSymbolMode.External);
|
||||||
|
PlayerSettings.SetRunInBackground_Internal(playerSettings, false);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
throw new InvalidOperationException("Build profile has not been initialized.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private WXConvertCore.WXExportError CallDoExport(BuildProfile buildProfile)
|
||||||
|
{
|
||||||
|
WXEditorScriptObject config = UnityUtil.GetEditorConf();
|
||||||
|
cacheConfig.ProjectConf = config.ProjectConf;
|
||||||
|
cacheConfig.SDKOptions = config.SDKOptions;
|
||||||
|
cacheConfig.CompileOptions = config.CompileOptions;
|
||||||
|
cacheConfig.CompressTexture = config.CompressTexture;
|
||||||
|
cacheConfig.PlayerPrefsKeys = config.PlayerPrefsKeys;
|
||||||
|
cacheConfig.FontOptions = config.FontOptions;
|
||||||
|
|
||||||
|
WeixinMiniGameSettings weixinSettings = buildProfile.miniGameSettings as WeixinMiniGameSettings;
|
||||||
|
config.ProjectConf = weixinSettings.ProjectConf;
|
||||||
|
config.SDKOptions = weixinSettings.SDKOptions;
|
||||||
|
config.CompileOptions = weixinSettings.CompileOptions;
|
||||||
|
config.CompressTexture = weixinSettings.CompressTexture;
|
||||||
|
config.PlayerPrefsKeys = weixinSettings.PlayerPrefsKeys;
|
||||||
|
config.FontOptions = weixinSettings.FontOptions;
|
||||||
|
EditorUtility.SetDirty(config);
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
return WXConvertCore.DoExport();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BuildPostProcess(BuildProfile buildProfile)
|
||||||
|
{
|
||||||
|
// Restore the original settings
|
||||||
|
WXEditorScriptObject config = UnityUtil.GetEditorConf();
|
||||||
|
config.ProjectConf = cacheConfig.ProjectConf;
|
||||||
|
config.SDKOptions = cacheConfig.SDKOptions;
|
||||||
|
config.CompileOptions = cacheConfig.CompileOptions;
|
||||||
|
config.CompressTexture = cacheConfig.CompressTexture;
|
||||||
|
config.PlayerPrefsKeys = cacheConfig.PlayerPrefsKeys;
|
||||||
|
config.FontOptions = cacheConfig.FontOptions;
|
||||||
|
EditorUtility.SetDirty(config);
|
||||||
|
AssetDatabase.SaveAssets();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
7
Editor/BuildProfile/WeixinSubplatformInterface.cs.meta
Normal file
7
Editor/BuildProfile/WeixinSubplatformInterface.cs.meta
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0b4df61ea34a9bc4c89a8e8b93455bd6
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: XSwesi78AS28ymfR2HEhHpEBAC2DHupI1hIKP7HApjHRaZgGw+DTwWI=
|
guid: a100628dafec44bf49842a207d510696
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
Binary file not shown.
@ -1,7 +1,93 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: c113acfee35db6b5c61fd4a76596cfd3
|
guid: c113acfee35db6b5c61fd4a76596cfd3
|
||||||
DefaultImporter:
|
PluginImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
defineConstraints: []
|
||||||
|
isPreloaded: 0
|
||||||
|
isOverridable: 1
|
||||||
|
isExplicitlyReferenced: 0
|
||||||
|
validateReferences: 1
|
||||||
|
platformData:
|
||||||
|
- first:
|
||||||
|
: Any
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
Exclude Android: 1
|
||||||
|
Exclude Editor: 1
|
||||||
|
Exclude Linux64: 1
|
||||||
|
Exclude OSXUniversal: 1
|
||||||
|
Exclude WebGL: 1
|
||||||
|
Exclude Win: 1
|
||||||
|
Exclude Win64: 1
|
||||||
|
Exclude WindowsStoreApps: 1
|
||||||
|
- first:
|
||||||
|
Android: Android
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
AndroidSharedLibraryType: Executable
|
||||||
|
CPU: ARMv7
|
||||||
|
- first:
|
||||||
|
Any:
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
OS: AnyOS
|
||||||
|
- first:
|
||||||
|
Standalone: Linux64
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: OSXUniversal
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win64
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
WebGL: WebGL
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
WeixinMiniGame: WeixinMiniGame
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Windows Store Apps: WindowsStoreApps
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DontProcess: false
|
||||||
|
PlaceholderPath:
|
||||||
|
SDK: AnySDK
|
||||||
|
ScriptingBackend: AnyScriptingBackend
|
||||||
userData:
|
userData:
|
||||||
assetBundleName:
|
assetBundleName:
|
||||||
assetBundleVariant:
|
assetBundleVariant:
|
||||||
@ -2,26 +2,21 @@ mergeInto(LibraryManager.library, {
|
|||||||
// 定义供 C/C++ 调用的 JS 函数
|
// 定义供 C/C++ 调用的 JS 函数
|
||||||
js_batchRender_malloc: function(data, size, isSync) {
|
js_batchRender_malloc: function(data, size, isSync) {
|
||||||
// 直接从 WASM 内存创建视图(零拷贝)
|
// 直接从 WASM 内存创建视图(零拷贝)
|
||||||
const binaryData = new Uint8Array(Module.HEAPU8.buffer, data, size);
|
const targetBuffer = new Uint8Array(Module.HEAPU8.buffer, data, size);
|
||||||
// 转换为标准 ArrayBuffer(如果需要复制)
|
|
||||||
const targetBuffer =
|
|
||||||
binaryData.buffer.slice(binaryData.byteOffset, binaryData.byteOffset + binaryData.byteLength);
|
|
||||||
//console.log("processBinaryData invoke");
|
//console.log("processBinaryData invoke");
|
||||||
const extBuffer = new ArrayBuffer(1);
|
const extBuffer = new ArrayBuffer(1);
|
||||||
const headerBuffer = new ArrayBuffer(8);
|
|
||||||
const headerBufferView = new DataView(headerBuffer);
|
|
||||||
headerBufferView.setUint32(0, 0xDEC0DE, true);
|
|
||||||
headerBufferView.setUint32(4, mtl.ctx.__uid(), true);
|
|
||||||
const merged = new Uint8Array(headerBuffer.byteLength + targetBuffer.byteLength);
|
|
||||||
merged.set(new Uint8Array(headerBuffer), 0);
|
|
||||||
merged.set(new Uint8Array(targetBuffer), headerBuffer.byteLength);
|
|
||||||
if(!isSync){
|
if(!isSync){
|
||||||
mtl.batchRenderAsync(merged.buffer, extBuffer);
|
mtl.batchRenderAsync(targetBuffer, extBuffer);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
const result = mtl.batchRender(merged.buffer, extBuffer).buffer;
|
const response = mtl.batchRender(targetBuffer, extBuffer);
|
||||||
if(result.byteLength == 0){
|
if (!response) {
|
||||||
return null;;
|
return null;
|
||||||
|
}
|
||||||
|
const result = response.buffer;
|
||||||
|
if(!result || result.byteLength == 0){
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
// 申请内存空间,后续在cpp wasm部分使用,记得释放
|
// 申请内存空间,后续在cpp wasm部分使用,记得释放
|
||||||
const ptr = Module._malloc(result.byteLength);
|
const ptr = Module._malloc(result.byteLength);
|
||||||
|
|||||||
@ -1,7 +1,93 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: dda1926f3454e003333e8085a4f2c0fd
|
guid: dda1926f3454e003333e8085a4f2c0fd
|
||||||
DefaultImporter:
|
PluginImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
defineConstraints: []
|
||||||
|
isPreloaded: 0
|
||||||
|
isOverridable: 1
|
||||||
|
isExplicitlyReferenced: 0
|
||||||
|
validateReferences: 1
|
||||||
|
platformData:
|
||||||
|
- first:
|
||||||
|
: Any
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
Exclude Android: 1
|
||||||
|
Exclude Editor: 1
|
||||||
|
Exclude Linux64: 1
|
||||||
|
Exclude OSXUniversal: 1
|
||||||
|
Exclude WebGL: 1
|
||||||
|
Exclude Win: 1
|
||||||
|
Exclude Win64: 1
|
||||||
|
Exclude WindowsStoreApps: 1
|
||||||
|
- first:
|
||||||
|
Android: Android
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
AndroidSharedLibraryType: Executable
|
||||||
|
CPU: ARMv7
|
||||||
|
- first:
|
||||||
|
Any:
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
OS: AnyOS
|
||||||
|
- first:
|
||||||
|
Standalone: Linux64
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: OSXUniversal
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win64
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
WebGL: WebGL
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
WeixinMiniGame: WeixinMiniGame
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Windows Store Apps: WindowsStoreApps
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DontProcess: false
|
||||||
|
PlaceholderPath:
|
||||||
|
SDK: AnySDK
|
||||||
|
ScriptingBackend: AnyScriptingBackend
|
||||||
userData:
|
userData:
|
||||||
assetBundleName:
|
assetBundleName:
|
||||||
assetBundleVariant:
|
assetBundleVariant:
|
||||||
@ -111,7 +111,7 @@ namespace WeChatWASM
|
|||||||
this.formCheckbox("developBuild", "Development Build", "", false, null, OnDevelopmentBuildToggleChanged);
|
this.formCheckbox("developBuild", "Development Build", "", false, null, OnDevelopmentBuildToggleChanged);
|
||||||
this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP);
|
this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP);
|
||||||
this.formCheckbox("profilingFuncs", "Profiling Funcs");
|
this.formCheckbox("profilingFuncs", "Profiling Funcs");
|
||||||
this.formCheckbox("webgl2", "WebGL2.0(beta)");
|
this.formCheckbox("webgl2", "WebGL2.0");
|
||||||
EditorGUILayout.EndVertical();
|
EditorGUILayout.EndVertical();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -107,6 +107,14 @@ namespace WeChatWASM
|
|||||||
return config.CompileOptions.enableiOSMetal;
|
return config.CompileOptions.enableiOSMetal;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 用于replaceRules判断是否需要注入相关的修改
|
||||||
|
public static bool UseEmscriptenGLX
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return config.CompileOptions.enableEmscriptenGLX;
|
||||||
|
}
|
||||||
|
}
|
||||||
// public static void SetPlayableEnabled(bool enabled)
|
// public static void SetPlayableEnabled(bool enabled)
|
||||||
// {
|
// {
|
||||||
// isPlayableBuild = enabled;
|
// isPlayableBuild = enabled;
|
||||||
@ -126,6 +134,8 @@ namespace WeChatWASM
|
|||||||
}
|
}
|
||||||
// iOS metal 的相关特性
|
// iOS metal 的相关特性
|
||||||
ProcessWxiOSMetalBinaries();
|
ProcessWxiOSMetalBinaries();
|
||||||
|
// emscriptenglx的相关特性
|
||||||
|
ProcessWxEmscriptenGLXBinaries();
|
||||||
MakeEnvForLuaAdaptor();
|
MakeEnvForLuaAdaptor();
|
||||||
// JSLib
|
// JSLib
|
||||||
SettingWXTextureMinJSLib();
|
SettingWXTextureMinJSLib();
|
||||||
@ -211,6 +221,9 @@ namespace WeChatWASM
|
|||||||
{
|
{
|
||||||
var rootPath = Directory.GetParent(Application.dataPath).FullName;
|
var rootPath = Directory.GetParent(Application.dataPath).FullName;
|
||||||
string webglDir = WXExtEnvDef.GETDEF("WEIXINMINIGAME") ? "WeixinMiniGame" : "WebGL";
|
string webglDir = WXExtEnvDef.GETDEF("WEIXINMINIGAME") ? "WeixinMiniGame" : "WebGL";
|
||||||
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
webglDir = "PlayableAds";
|
||||||
|
#endif
|
||||||
symFile1 = Path.Combine(rootPath, "Library", "Bee", "artifacts", webglDir, "build", "debug_WebGL_wasm", "build.js.symbols");
|
symFile1 = Path.Combine(rootPath, "Library", "Bee", "artifacts", webglDir, "build", "debug_WebGL_wasm", "build.js.symbols");
|
||||||
}
|
}
|
||||||
WeChatWASM.UnityUtil.preprocessSymbols(symFile1, GetWebGLSymbolPath());
|
WeChatWASM.UnityUtil.preprocessSymbols(symFile1, GetWebGLSymbolPath());
|
||||||
@ -272,8 +285,8 @@ namespace WeChatWASM
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
UnityEngine.Debug.LogError($"Failed to get enabled flag string index: {ex.Message}");
|
UnityEngine.Debug.LogWarning($"Failed to get enabled flag string index: {ex.Message}");
|
||||||
throw;
|
return -1; // -1 means failed
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -302,7 +315,8 @@ namespace WeChatWASM
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
UnityEngine.Debug.LogError($"Failed to enable plugin asset: {ex.Message}");
|
// 避免 Error 日志阻塞打包流程
|
||||||
|
UnityEngine.Debug.LogWarning($"Failed to enable plugin asset: {ex.Message}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -335,7 +349,9 @@ namespace WeChatWASM
|
|||||||
{
|
{
|
||||||
// WxPerfJsBridge.jslib
|
// WxPerfJsBridge.jslib
|
||||||
var wxPerfJSBridgeImporter = AssetImporter.GetAtPath(wxPerfPlugins[0]) as PluginImporter;
|
var wxPerfJSBridgeImporter = AssetImporter.GetAtPath(wxPerfPlugins[0]) as PluginImporter;
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.PlayableAds, config.CompileOptions.enablePerfAnalysis);
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, config.CompileOptions.enablePerfAnalysis);
|
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, config.CompileOptions.enablePerfAnalysis);
|
||||||
#else
|
#else
|
||||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WebGL, config.CompileOptions.enablePerfAnalysis);
|
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WebGL, config.CompileOptions.enablePerfAnalysis);
|
||||||
@ -348,7 +364,10 @@ namespace WeChatWASM
|
|||||||
bool bShouldEnablePerf2022Plugin = config.CompileOptions.enablePerfAnalysis && IsCompatibleWithUnity202203OrNewer();
|
bool bShouldEnablePerf2022Plugin = config.CompileOptions.enablePerfAnalysis && IsCompatibleWithUnity202203OrNewer();
|
||||||
|
|
||||||
var wxPerf2022Importer = AssetImporter.GetAtPath(wxPerfPlugins[1]) as PluginImporter;
|
var wxPerf2022Importer = AssetImporter.GetAtPath(wxPerfPlugins[1]) as PluginImporter;
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
|
||||||
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.PlayableAds, bShouldEnablePerf2022Plugin);
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, bShouldEnablePerf2022Plugin);
|
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, bShouldEnablePerf2022Plugin);
|
||||||
#else
|
#else
|
||||||
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, bShouldEnablePerf2022Plugin);
|
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, bShouldEnablePerf2022Plugin);
|
||||||
@ -361,7 +380,9 @@ namespace WeChatWASM
|
|||||||
bool bShouldEnablePerf2021Plugin = config.CompileOptions.enablePerfAnalysis && IsCompatibleWithUnity202102To202203();
|
bool bShouldEnablePerf2021Plugin = config.CompileOptions.enablePerfAnalysis && IsCompatibleWithUnity202102To202203();
|
||||||
|
|
||||||
var wxPerf2021Importer = AssetImporter.GetAtPath(wxPerfPlugins[2]) as PluginImporter;
|
var wxPerf2021Importer = AssetImporter.GetAtPath(wxPerfPlugins[2]) as PluginImporter;
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.PlayableAds, bShouldEnablePerf2021Plugin);
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, bShouldEnablePerf2021Plugin);
|
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, bShouldEnablePerf2021Plugin);
|
||||||
#else
|
#else
|
||||||
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, bShouldEnablePerf2021Plugin);
|
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, bShouldEnablePerf2021Plugin);
|
||||||
@ -371,6 +392,59 @@ namespace WeChatWASM
|
|||||||
AssetDatabase.Refresh();
|
AssetDatabase.Refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static void ProcessWxEmscriptenGLXBinaries()
|
||||||
|
{
|
||||||
|
string[] glLibs;
|
||||||
|
string DS = WXAssetsTextTools.DS;
|
||||||
|
if (UnityUtil.GetSDKMode() == UnityUtil.SDKMode.Package)
|
||||||
|
{
|
||||||
|
glLibs = new string[]
|
||||||
|
{
|
||||||
|
$"Packages{DS}com.qq.weixin.minigame{DS}Runtime{DS}Plugins{DS}libemscriptenglx.a",
|
||||||
|
$"Packages{DS}com.qq.weixin.minigame{DS}Runtime{DS}Plugins{DS}libemscriptenglx_2021.a",
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
string glLibRootDir = $"Assets{DS}WX-WASM-SDK-V2{DS}Runtime{DS}Plugins{DS}";
|
||||||
|
|
||||||
|
// 下方顺序不要变动
|
||||||
|
glLibs = new string[]
|
||||||
|
{
|
||||||
|
$"{glLibRootDir}libemscriptenglx.a",
|
||||||
|
$"{glLibRootDir}libemscriptenglx_2021.a",
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
// unity2022, tuanjie lib引入
|
||||||
|
bool showEnableGLX2022Plugin = config.CompileOptions.enableEmscriptenGLX && IsCompatibleWithUnity202203OrNewer();
|
||||||
|
|
||||||
|
var glx2022Importer = AssetImporter.GetAtPath(glLibs[0]) as PluginImporter;
|
||||||
|
#if PLATFORM_WEIXINMINIGAME
|
||||||
|
glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2022Plugin);
|
||||||
|
#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
|
||||||
|
glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2021Plugin);
|
||||||
|
#else
|
||||||
|
glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2021Plugin);
|
||||||
|
#endif
|
||||||
|
SetPluginCompatibilityByModifyingMetadataFile(glLibs[1], showEnableGLX2021Plugin);
|
||||||
|
}
|
||||||
|
|
||||||
|
AssetDatabase.Refresh();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Lua Adaptor Settings.
|
* Lua Adaptor Settings.
|
||||||
*/
|
*/
|
||||||
@ -508,7 +582,9 @@ namespace WeChatWASM
|
|||||||
Debug.LogError("Lua Adaptor Importer Not Found: " + maybeBuildFile);
|
Debug.LogError("Lua Adaptor Importer Not Found: " + maybeBuildFile);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.PlayableAds, shouldBuild);
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, shouldBuild);
|
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, shouldBuild);
|
||||||
#else
|
#else
|
||||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WebGL, shouldBuild);
|
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WebGL, shouldBuild);
|
||||||
@ -558,6 +634,11 @@ namespace WeChatWASM
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
#if TUANJIE_2022_3_OR_NEWER
|
#if TUANJIE_2022_3_OR_NEWER
|
||||||
|
if(EditorUserBuildSettings.activeBuildTarget != BuildTarget.WeixinMiniGame
|
||||||
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
&& EditorUserBuildSettings.activeBuildTarget != BuildTarget.PlayableAds
|
||||||
|
#endif
|
||||||
|
)
|
||||||
EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WeixinMiniGame, BuildTarget.WeixinMiniGame);
|
EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WeixinMiniGame, BuildTarget.WeixinMiniGame);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -880,6 +961,22 @@ namespace WeChatWASM
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
Rule[] rules =
|
||||||
|
{
|
||||||
|
new Rule()
|
||||||
|
{
|
||||||
|
old = "if (GameGlobal.unityNamespace.enableProfileStats)",
|
||||||
|
newStr = "if (GameGlobal.unityNamespace.enableProfileStats || (typeof GameGlobal.manager.getWXAppCheatMonitor === 'function' && GameGlobal.manager.getWXAppCheatMonitor().shouldForceShowPerfMonitor()))"
|
||||||
|
}
|
||||||
|
};
|
||||||
|
foreach (var rule in rules)
|
||||||
|
{
|
||||||
|
text = text.Replace(rule.old, rule.newStr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
File.WriteAllText(targetPath, text, new UTF8Encoding(false));
|
File.WriteAllText(targetPath, text, new UTF8Encoding(false));
|
||||||
|
|
||||||
UnityEngine.Debug.LogFormat("[Converter] adapt framework done! ");
|
UnityEngine.Debug.LogFormat("[Converter] adapt framework done! ");
|
||||||
@ -1015,7 +1112,11 @@ namespace WeChatWASM
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
#if TUANJIE_2022_3_OR_NEWER
|
#if TUANJIE_2022_3_OR_NEWER
|
||||||
if (EditorUserBuildSettings.activeBuildTarget != BuildTarget.WeixinMiniGame)
|
if (EditorUserBuildSettings.activeBuildTarget != BuildTarget.WeixinMiniGame
|
||||||
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
&& EditorUserBuildSettings.activeBuildTarget != BuildTarget.PlayableAds
|
||||||
|
#endif
|
||||||
|
)
|
||||||
{
|
{
|
||||||
UnityEngine.Debug.LogFormat("[Builder] Current target is: {0}, switching to: {1}", EditorUserBuildSettings.activeBuildTarget, BuildTarget.WeixinMiniGame);
|
UnityEngine.Debug.LogFormat("[Builder] Current target is: {0}, switching to: {1}", EditorUserBuildSettings.activeBuildTarget, BuildTarget.WeixinMiniGame);
|
||||||
if (!EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WeixinMiniGame, BuildTarget.WeixinMiniGame))
|
if (!EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WeixinMiniGame, BuildTarget.WeixinMiniGame))
|
||||||
@ -1026,8 +1127,11 @@ namespace WeChatWASM
|
|||||||
}
|
}
|
||||||
|
|
||||||
var projDir = Path.Combine(config.ProjectConf.DST, webglDir);
|
var projDir = Path.Combine(config.ProjectConf.DST, webglDir);
|
||||||
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
var result = BuildPipeline.BuildPlayer(GetScenePaths(), projDir, BuildTarget.PlayableAds, option);
|
||||||
|
#else
|
||||||
var result = BuildPipeline.BuildPlayer(GetScenePaths(), projDir, BuildTarget.WeixinMiniGame, option);
|
var result = BuildPipeline.BuildPlayer(GetScenePaths(), projDir, BuildTarget.WeixinMiniGame, option);
|
||||||
|
#endif
|
||||||
if (result.summary.result != UnityEditor.Build.Reporting.BuildResult.Succeeded)
|
if (result.summary.result != UnityEditor.Build.Reporting.BuildResult.Succeeded)
|
||||||
{
|
{
|
||||||
UnityEngine.Debug.LogFormat("[Builder] BuildPlayer failed. emscriptenArgs:{0}", PlayerSettings.WeixinMiniGame.emscriptenArgs);
|
UnityEngine.Debug.LogFormat("[Builder] BuildPlayer failed. emscriptenArgs:{0}", PlayerSettings.WeixinMiniGame.emscriptenArgs);
|
||||||
@ -1966,7 +2070,7 @@ namespace WeChatWASM
|
|||||||
config.ProjectConf.bundleHashLength.ToString(),
|
config.ProjectConf.bundleHashLength.ToString(),
|
||||||
bundlePathIdentifierStr,
|
bundlePathIdentifierStr,
|
||||||
excludeFileExtensionsStr,
|
excludeFileExtensionsStr,
|
||||||
config.CompileOptions.enableiOSMetal ? "5" : (config.CompileOptions.Webgl2 ? "2" : "1"),
|
config.CompileOptions.Webgl2 ? "2" : "1",
|
||||||
Application.unityVersion,
|
Application.unityVersion,
|
||||||
WXExtEnvDef.pluginVersion,
|
WXExtEnvDef.pluginVersion,
|
||||||
config.ProjectConf.dataFileSubPrefix,
|
config.ProjectConf.dataFileSubPrefix,
|
||||||
@ -2015,7 +2119,9 @@ namespace WeChatWASM
|
|||||||
config.ProjectConf.MemorySize.ToString(),
|
config.ProjectConf.MemorySize.ToString(),
|
||||||
config.SDKOptions.disableMultiTouch ? "true" : "false",
|
config.SDKOptions.disableMultiTouch ? "true" : "false",
|
||||||
// Perfstream,暂时设为false
|
// Perfstream,暂时设为false
|
||||||
"false"
|
"false",
|
||||||
|
config.CompileOptions.enableEmscriptenGLX ? "true" : "false",
|
||||||
|
config.CompileOptions.enableiOSMetal ? "true" : "false"
|
||||||
});
|
});
|
||||||
|
|
||||||
List<Rule> replaceList = new List<Rule>(replaceArrayList);
|
List<Rule> replaceList = new List<Rule>(replaceArrayList);
|
||||||
@ -2164,7 +2270,9 @@ namespace WeChatWASM
|
|||||||
{
|
{
|
||||||
var importer = AssetImporter.GetAtPath(jsLibs[i]) as PluginImporter;
|
var importer = AssetImporter.GetAtPath(jsLibs[i]) as PluginImporter;
|
||||||
bool value = i == index;
|
bool value = i == index;
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
importer.SetCompatibleWithPlatform(BuildTarget.PlayableAds, value);
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, value);
|
importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, value);
|
||||||
#else
|
#else
|
||||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, value);
|
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, value);
|
||||||
|
|||||||
@ -183,9 +183,10 @@ namespace WeChatWASM
|
|||||||
this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP);
|
this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP);
|
||||||
this.formCheckbox("profilingFuncs", "Profiling Funcs");
|
this.formCheckbox("profilingFuncs", "Profiling Funcs");
|
||||||
this.formCheckbox("profilingMemory", "Profiling Memory");
|
this.formCheckbox("profilingMemory", "Profiling Memory");
|
||||||
this.formCheckbox("webgl2", "WebGL2.0(beta)");
|
this.formCheckbox("webgl2", "WebGL2.0");
|
||||||
this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存");
|
this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存");
|
||||||
// this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗");
|
this.formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案");
|
||||||
|
this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗");
|
||||||
this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets");
|
this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets");
|
||||||
this.formCheckbox("cleanBuild", "Clean WebGL Build");
|
this.formCheckbox("cleanBuild", "Clean WebGL Build");
|
||||||
// this.formCheckbox("cleanCloudDev", "Clean Cloud Dev");
|
// this.formCheckbox("cleanCloudDev", "Clean Cloud Dev");
|
||||||
@ -449,6 +450,7 @@ namespace WeChatWASM
|
|||||||
this.setData("webgl2", config.CompileOptions.Webgl2);
|
this.setData("webgl2", config.CompileOptions.Webgl2);
|
||||||
this.setData("iOSPerformancePlus", config.CompileOptions.enableIOSPerformancePlus);
|
this.setData("iOSPerformancePlus", config.CompileOptions.enableIOSPerformancePlus);
|
||||||
this.setData("iOSMetal", config.CompileOptions.enableiOSMetal);
|
this.setData("iOSMetal", config.CompileOptions.enableiOSMetal);
|
||||||
|
this.setData("EmscriptenGLX", config.CompileOptions.enableEmscriptenGLX);
|
||||||
this.setData("fbslim", config.CompileOptions.fbslim);
|
this.setData("fbslim", config.CompileOptions.fbslim);
|
||||||
this.setData("useFriendRelation", config.SDKOptions.UseFriendRelation);
|
this.setData("useFriendRelation", config.SDKOptions.UseFriendRelation);
|
||||||
this.setData("useMiniGameChat", config.SDKOptions.UseMiniGameChat);
|
this.setData("useMiniGameChat", config.SDKOptions.UseMiniGameChat);
|
||||||
@ -528,6 +530,7 @@ namespace WeChatWASM
|
|||||||
config.CompileOptions.Webgl2 = this.getDataCheckbox("webgl2");
|
config.CompileOptions.Webgl2 = this.getDataCheckbox("webgl2");
|
||||||
config.CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus");
|
config.CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus");
|
||||||
config.CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal");
|
config.CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal");
|
||||||
|
config.CompileOptions.enableEmscriptenGLX = this.getDataCheckbox("EmscriptenGLX");
|
||||||
config.CompileOptions.fbslim = this.getDataCheckbox("fbslim");
|
config.CompileOptions.fbslim = this.getDataCheckbox("fbslim");
|
||||||
config.SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation");
|
config.SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation");
|
||||||
config.SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat");
|
config.SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat");
|
||||||
|
|||||||
@ -129,6 +129,10 @@ namespace WeChatWASM
|
|||||||
{
|
{
|
||||||
return WXConvertCore.UseiOSMetal;
|
return WXConvertCore.UseiOSMetal;
|
||||||
});
|
});
|
||||||
|
WXExtEnvDef.RegisterAction("WXConvertCore.UseEmscriptenGLX", (args) =>
|
||||||
|
{
|
||||||
|
return WXConvertCore.UseEmscriptenGLX;
|
||||||
|
});
|
||||||
WXExtEnvDef.RegisterAction("UnityUtil.GetWxSDKRootPath", (args) =>
|
WXExtEnvDef.RegisterAction("UnityUtil.GetWxSDKRootPath", (args) =>
|
||||||
{
|
{
|
||||||
#if UNITY_2018
|
#if UNITY_2018
|
||||||
|
|||||||
@ -2,7 +2,7 @@ namespace WeChatWASM
|
|||||||
{
|
{
|
||||||
public class WXPluginVersion
|
public class WXPluginVersion
|
||||||
{
|
{
|
||||||
public static string pluginVersion = "202507300820"; // 这一行不要改他,导出的时候会自动替换
|
public static string pluginVersion = "202512040623"; // 这一行不要改他,导出的时候会自动替换
|
||||||
}
|
}
|
||||||
|
|
||||||
public class WXPluginConf
|
public class WXPluginConf
|
||||||
|
|||||||
Binary file not shown.
@ -653,6 +653,7 @@
|
|||||||
是否使用iOS metal指令流
|
是否使用iOS metal指令流
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.CompileOptions.enableEmscriptenGLX" -->
|
||||||
<member name="F:WeChatWASM.CompileOptions.brotliMT">
|
<member name="F:WeChatWASM.CompileOptions.brotliMT">
|
||||||
<summary>
|
<summary>
|
||||||
是否使用brotli多线程压缩
|
是否使用brotli多线程压缩
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1b94c242fc37a08a874cb51e273085a1
|
guid: 0f8b919a5dd00386ffcd28a86c68eeb7
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -10,7 +10,9 @@ internal class DisableKeyboardInput : MonoBehaviour
|
|||||||
private static void OnGameLaunch()
|
private static void OnGameLaunch()
|
||||||
{
|
{
|
||||||
#if !UNITY_EDITOR
|
#if !UNITY_EDITOR
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
PlayableAdsInput.mobileKeyboardSupport = false;
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
WeixinMiniGameInput.mobileKeyboardSupport = false;
|
WeixinMiniGameInput.mobileKeyboardSupport = false;
|
||||||
#elif PLATFORM_WEBGL
|
#elif PLATFORM_WEBGL
|
||||||
#if UNITY_2022_1_OR_NEWER
|
#if UNITY_2022_1_OR_NEWER
|
||||||
|
|||||||
@ -627,6 +627,9 @@ mergeInto(LibraryManager.library, {
|
|||||||
stringToUTF8(returnStr, buffer, bufferSize);
|
stringToUTF8(returnStr, buffer, bufferSize);
|
||||||
return buffer;
|
return buffer;
|
||||||
},
|
},
|
||||||
|
WXSetSyncReadCacheEnabled: function(enabled) {
|
||||||
|
window.WXWASMSDK.WXSetSyncReadCacheEnabled(enabled);
|
||||||
|
},
|
||||||
WXGetPluginCachePath: function() {
|
WXGetPluginCachePath: function() {
|
||||||
var returnStr = window.WXWASMSDK.WXGetPluginCachePath();
|
var returnStr = window.WXWASMSDK.WXGetPluginCachePath();
|
||||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||||
|
|||||||
@ -51,6 +51,7 @@ var WXAssetBundleLibrary = {
|
|||||||
WXFS.msg = "";
|
WXFS.msg = "";
|
||||||
WXFS.fd2wxStream = new Map;
|
WXFS.fd2wxStream = new Map;
|
||||||
WXFS.path2fd = new Map;
|
WXFS.path2fd = new Map;
|
||||||
|
WXFS.refRecord = new Map;
|
||||||
WXFS.fs = wx.getFileSystemManager();
|
WXFS.fs = wx.getFileSystemManager();
|
||||||
WXFS.nowfd = FS.MAX_OPEN_FDS + 1;
|
WXFS.nowfd = FS.MAX_OPEN_FDS + 1;
|
||||||
WXFS.isWXAssetBundle = function(url){
|
WXFS.isWXAssetBundle = function(url){
|
||||||
@ -98,18 +99,6 @@ var WXAssetBundleLibrary = {
|
|||||||
value: function get(key) {
|
value: function get(key) {
|
||||||
var temp = this.hash.get(key);
|
var temp = this.hash.get(key);
|
||||||
if (temp !== undefined) {
|
if (temp !== undefined) {
|
||||||
if(temp.cleanable && unityNamespace.isAndroid && temp.time + this.ttl * 1000 < Date.now()){
|
|
||||||
try {
|
|
||||||
var check_path = WXFS.fd2wxStream.get(key).path
|
|
||||||
if(!GameGlobal.manager.getCachePath(check_path)){
|
|
||||||
throw new Error("No such file in the wx cache system")
|
|
||||||
}
|
|
||||||
WXFS.fs.statSync(check_path)
|
|
||||||
} catch (e) {
|
|
||||||
GameGlobal.manager.reporter.wxAssetBundle.reportEmptyContent({stage: WXFS.WXABErrorSteps['kCacheGet'], path: check_path, error: !!e ? e.toString() : 'unknown'});
|
|
||||||
GameGlobal.manager.Logger.pluginLog('[WXAssetBundle]Android statSync path: ' + check_path + ' error: ' + (!!e ? e.toString() : 'unknown'));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.hash.delete(key);
|
this.hash.delete(key);
|
||||||
temp.time = Date.now();
|
temp.time = Date.now();
|
||||||
this.hash.set(key, temp);
|
this.hash.set(key, temp);
|
||||||
@ -320,6 +309,9 @@ var WXAssetBundleLibrary = {
|
|||||||
}
|
}
|
||||||
if(!WXFS.disk.has(path)){
|
if(!WXFS.disk.has(path)){
|
||||||
WXFS.disk.set(path, 0);
|
WXFS.disk.set(path, 0);
|
||||||
|
WXFS.refRecord.set(path, 1);
|
||||||
|
} else {
|
||||||
|
WXFS.refRecord.set(path, WXFS.refRecord.get(path) + 1);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
@ -327,12 +319,18 @@ var WXAssetBundleLibrary = {
|
|||||||
UnloadbyPath: function (ptr) {
|
UnloadbyPath: function (ptr) {
|
||||||
var path = WXFS.url2path(UTF8ToString(ptr));
|
var path = WXFS.url2path(UTF8ToString(ptr));
|
||||||
var fd = WXFS.path2fd.get(path);
|
var fd = WXFS.path2fd.get(path);
|
||||||
|
var refCount = WXFS.refRecord.get(path);
|
||||||
|
if(!refCount) return;
|
||||||
|
refCount -= 1;
|
||||||
|
WXFS.refRecord.set(path, refCount);
|
||||||
|
if(!refCount){
|
||||||
if(WXFS.cache.has(fd)){
|
if(WXFS.cache.has(fd)){
|
||||||
WXFS.cache.delete(fd);
|
WXFS.cache.delete(fd);
|
||||||
}
|
}
|
||||||
if(WXFS.disk.has(path)){
|
if(WXFS.disk.has(path)){
|
||||||
WXFS.disk.delete(path);
|
WXFS.disk.delete(path);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
CheckWXFSReady: function () {
|
CheckWXFSReady: function () {
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
mergeInto(LibraryManager.library, {
|
mergeInto(LibraryManager.library, {
|
||||||
JSStartGameDataMonitor: function() {
|
JSStartGameDataMonitor: function() {
|
||||||
|
if (!Module.IsWxGame) return;
|
||||||
console.log("call JSStartGameDataMonitor \n");
|
console.log("call JSStartGameDataMonitor \n");
|
||||||
|
|
||||||
if (typeof GameGlobal.manager.getGameDataMonitor === 'function')
|
if (typeof GameGlobal.manager.getGameDataMonitor === 'function')
|
||||||
|
|||||||
BIN
Runtime/Plugins/libemscriptenglx.a
Normal file
BIN
Runtime/Plugins/libemscriptenglx.a
Normal file
Binary file not shown.
74
Runtime/Plugins/libemscriptenglx.a.meta
Normal file
74
Runtime/Plugins/libemscriptenglx.a.meta
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cccbd1d680cfe34fa1fef9e4875e5f23
|
||||||
|
PluginImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
defineConstraints: []
|
||||||
|
isPreloaded: 0
|
||||||
|
isOverridable: 1
|
||||||
|
isExplicitlyReferenced: 0
|
||||||
|
validateReferences: 1
|
||||||
|
platformData:
|
||||||
|
- first:
|
||||||
|
: Any
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
Exclude Editor: 0
|
||||||
|
Exclude Linux64: 0
|
||||||
|
Exclude OSXUniversal: 0
|
||||||
|
Exclude WeixinMiniGame: 0
|
||||||
|
Exclude Win: 0
|
||||||
|
Exclude Win64: 0
|
||||||
|
- first:
|
||||||
|
Any:
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
OS: AnyOS
|
||||||
|
- first:
|
||||||
|
Standalone: Linux64
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
- first:
|
||||||
|
Standalone: OSXUniversal
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
- first:
|
||||||
|
Standalone: Win
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
- first:
|
||||||
|
Standalone: Win64
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
- first:
|
||||||
|
WebGL: WebGL
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
WeixinMiniGame: WeixinMiniGame
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Runtime/Plugins/libemscriptenglx_2021.a
Normal file
BIN
Runtime/Plugins/libemscriptenglx_2021.a
Normal file
Binary file not shown.
93
Runtime/Plugins/libemscriptenglx_2021.a.meta
Normal file
93
Runtime/Plugins/libemscriptenglx_2021.a.meta
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 89ccba97a8e2991dc502c741bc8cd6c6
|
||||||
|
PluginImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
iconMap: {}
|
||||||
|
executionOrder: {}
|
||||||
|
defineConstraints: []
|
||||||
|
isPreloaded: 0
|
||||||
|
isOverridable: 1
|
||||||
|
isExplicitlyReferenced: 0
|
||||||
|
validateReferences: 1
|
||||||
|
platformData:
|
||||||
|
- first:
|
||||||
|
: Any
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
Exclude Android: 1
|
||||||
|
Exclude Editor: 1
|
||||||
|
Exclude Linux64: 1
|
||||||
|
Exclude OSXUniversal: 1
|
||||||
|
Exclude WebGL: 1
|
||||||
|
Exclude Win: 1
|
||||||
|
Exclude Win64: 1
|
||||||
|
Exclude WindowsStoreApps: 1
|
||||||
|
- first:
|
||||||
|
Android: Android
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
AndroidSharedLibraryType: Executable
|
||||||
|
CPU: ARMv7
|
||||||
|
- first:
|
||||||
|
Any:
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
OS: AnyOS
|
||||||
|
- first:
|
||||||
|
Standalone: Linux64
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: OSXUniversal
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win64
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
WebGL: WebGL
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
WeixinMiniGame: WeixinMiniGame
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
Windows Store Apps: WindowsStoreApps
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DontProcess: false
|
||||||
|
PlaceholderPath:
|
||||||
|
SDK: AnySDK
|
||||||
|
ScriptingBackend: AnyScriptingBackend
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: ffcf22f69c45d4919a04626e60e86c20
|
guid: f0cbdcf50f6d52cea758f1ea825443c0
|
||||||
PluginImporter:
|
PluginImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
@ -7,21 +7,68 @@ PluginImporter:
|
|||||||
executionOrder: {}
|
executionOrder: {}
|
||||||
defineConstraints: []
|
defineConstraints: []
|
||||||
isPreloaded: 0
|
isPreloaded: 0
|
||||||
isOverridable: 0
|
isOverridable: 1
|
||||||
isExplicitlyReferenced: 0
|
isExplicitlyReferenced: 0
|
||||||
validateReferences: 1
|
validateReferences: 1
|
||||||
platformData:
|
platformData:
|
||||||
|
- first:
|
||||||
|
: Any
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
Exclude Editor: 0
|
||||||
|
Exclude Linux64: 1
|
||||||
|
Exclude OSXUniversal: 1
|
||||||
|
Exclude WebGL: 0
|
||||||
|
Exclude Win: 1
|
||||||
|
Exclude Win64: 1
|
||||||
- first:
|
- first:
|
||||||
Any:
|
Any:
|
||||||
second:
|
second:
|
||||||
enabled: 1
|
enabled: 0
|
||||||
settings: {}
|
settings: {}
|
||||||
- first:
|
- first:
|
||||||
Editor: Editor
|
Editor: Editor
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings:
|
||||||
|
CPU: AnyCPU
|
||||||
|
DefaultValueInitialized: true
|
||||||
|
OS: AnyOS
|
||||||
|
- first:
|
||||||
|
Standalone: Linux64
|
||||||
second:
|
second:
|
||||||
enabled: 0
|
enabled: 0
|
||||||
settings:
|
settings:
|
||||||
DefaultValueInitialized: true
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: OSXUniversal
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
Standalone: Win64
|
||||||
|
second:
|
||||||
|
enabled: 0
|
||||||
|
settings:
|
||||||
|
CPU: None
|
||||||
|
- first:
|
||||||
|
WebGL: WebGL
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings: {}
|
||||||
|
- first:
|
||||||
|
WeixinMiniGame: WeixinMiniGame
|
||||||
|
second:
|
||||||
|
enabled: 1
|
||||||
|
settings: {}
|
||||||
- first:
|
- first:
|
||||||
Windows Store Apps: WindowsStoreApps
|
Windows Store Apps: WindowsStoreApps
|
||||||
second:
|
second:
|
||||||
|
|||||||
Binary file not shown.
@ -3119,6 +3119,17 @@
|
|||||||
是否结束
|
是否结束
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.PageManagerCallbackResult.errCode">
|
||||||
|
<summary>
|
||||||
|
错误码,文档可见 https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/wx.createPageManager.html
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.PageManagerCallbackResult.errMsg">
|
||||||
|
<summary>
|
||||||
|
错误信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.PageManagerEventResult.isRecommended" -->
|
||||||
<member name="F:WeChatWASM.LoadOption.openlink">
|
<member name="F:WeChatWASM.LoadOption.openlink">
|
||||||
<summary>
|
<summary>
|
||||||
从不同渠道获得的OPENLINK字符串
|
从不同渠道获得的OPENLINK字符串
|
||||||
@ -3139,6 +3150,12 @@
|
|||||||
选填,部分活动、功能允许接收自定义query参数,请参阅渠道说明,默认可不填
|
选填,部分活动、功能允许接收自定义query参数,请参阅渠道说明,默认可不填
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGameExptInfoSuccessCallbackResult.list">
|
||||||
|
<summary>
|
||||||
|
结果对象的json字符串,各项为实验的相关信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.RankManagerStartEventResult.scoreKey" -->
|
||||||
<member name="F:WeChatWASM.VirtualPaymentError.errMsg">
|
<member name="F:WeChatWASM.VirtualPaymentError.errMsg">
|
||||||
错误信息
|
错误信息
|
||||||
|
|
||||||
@ -3589,6 +3606,26 @@
|
|||||||
宽度,单位:px
|
宽度,单位:px
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentsInfo.notificationComponentInfo">
|
||||||
|
<summary>
|
||||||
|
通知组件信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentInfo.boundingClientRect">
|
||||||
|
<summary>
|
||||||
|
组件的布局位置信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentInfo.isVisible">
|
||||||
|
<summary>
|
||||||
|
组件是否显示
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentInfo.name">
|
||||||
|
<summary>
|
||||||
|
组件的名称
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetStorageInfoSyncOption.currentSize">
|
<member name="F:WeChatWASM.GetStorageInfoSyncOption.currentSize">
|
||||||
<summary>
|
<summary>
|
||||||
当前占用的空间大小, 单位 KB
|
当前占用的空间大小, 单位 KB
|
||||||
@ -3911,7 +3948,7 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileOption.enableProfile">
|
<member name="F:WeChatWASM.DownloadFileOption.enableProfile">
|
||||||
<summary>
|
<summary>
|
||||||
是否开启 profile,默认开启。开启后可在接口回调的 res.profile 中查看性能调试信息。
|
是否开启 profile。iOS 和 Android 端默认开启,其他端暂不支持。开启后可在接口回调的 res.profile 中查看性能调试信息。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileOption.enableQuic">
|
<member name="F:WeChatWASM.DownloadFileOption.enableQuic">
|
||||||
@ -3937,12 +3974,6 @@
|
|||||||
超时时间,单位为毫秒,默认值为 60000 即一分钟。
|
超时时间,单位为毫秒,默认值为 60000 即一分钟。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileOption.useHighPerformanceMode">
|
|
||||||
<summary>
|
|
||||||
需要基础库: `3.4.1`
|
|
||||||
使用高性能模式,暂仅支持 Android,默认关闭。该模式下有更优的网络性能表现。
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.GeneralCallbackResult.errMsg">
|
<member name="F:WeChatWASM.GeneralCallbackResult.errMsg">
|
||||||
<summary>
|
<summary>
|
||||||
错误信息
|
错误信息
|
||||||
@ -3956,7 +3987,7 @@
|
|||||||
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.profile">
|
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.profile">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `2.10.4`
|
需要基础库: `2.10.4`
|
||||||
网络请求过程中一些调试信息,[查看详细说明](https://developers.weixin.qq.com/miniprogram/dev/framework/performance/network.html)
|
网络请求过程中一些调试信息,[查看详细说明](https://developers.weixin.qq.com/miniprogram/dev/framework/performance/network.html)。目前 iOS 和 Android 端支持。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.statusCode">
|
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.statusCode">
|
||||||
@ -3991,12 +4022,12 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.domainLookUpEnd">
|
<member name="F:WeChatWASM.RequestProfile.domainLookUpEnd">
|
||||||
<summary>
|
<summary>
|
||||||
DNS 域名查询完成的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
Local DNS 域名查询完成的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.domainLookUpStart">
|
<member name="F:WeChatWASM.RequestProfile.domainLookUpStart">
|
||||||
<summary>
|
<summary>
|
||||||
DNS 域名查询开始的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
Local DNS 域名查询开始的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.downstreamThroughputKbpsEstimate">
|
<member name="F:WeChatWASM.RequestProfile.downstreamThroughputKbpsEstimate">
|
||||||
@ -4014,11 +4045,29 @@
|
|||||||
组件准备好使用 HTTP 请求抓取资源的时间,这发生在检查本地缓存之前
|
组件准备好使用 HTTP 请求抓取资源的时间,这发生在检查本地缓存之前
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.httpDNSDomainLookUpEnd">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.9`
|
||||||
|
httpDNS 完成查询的时间。仅当开启 httpDNS 功能时返回该字段。目前仅wx.request接口支持
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.httpDNSDomainLookUpStart">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.9`
|
||||||
|
httpDNS 开始查询的时间。仅当开启 httpDNS 功能时返回该字段。目前仅wx.request接口支持
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.httpRttEstimate">
|
<member name="F:WeChatWASM.RequestProfile.httpRttEstimate">
|
||||||
<summary>
|
<summary>
|
||||||
协议层根据多个请求评估当前网络的 rtt(仅供参考)
|
协议层根据多个请求评估当前网络的 rtt(仅供参考)
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.invokeStart">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.10`
|
||||||
|
调用接口的时间。
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.peerIP">
|
<member name="F:WeChatWASM.RequestProfile.peerIP">
|
||||||
<summary>
|
<summary>
|
||||||
当前请求的IP
|
当前请求的IP
|
||||||
@ -4034,6 +4083,18 @@
|
|||||||
使用协议类型,有效值:http1.1, h2, quic, unknown
|
使用协议类型,有效值:http1.1, h2, quic, unknown
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.queueEnd">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.10`
|
||||||
|
结束排队的时间。达到并行上限时才需要排队。如果未发生排队,则该字段和 queueStart 字段值相同
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.queueStart">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.10`
|
||||||
|
开始排队的时间。达到并行上限时才需要排队。
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.receivedBytedCount">
|
<member name="F:WeChatWASM.RequestProfile.receivedBytedCount">
|
||||||
<summary>
|
<summary>
|
||||||
收到字节数
|
收到字节数
|
||||||
@ -5534,6 +5595,26 @@
|
|||||||
预告状态:0可用 1取消 2已用
|
预告状态:0可用 1取消 2已用
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.cloudID">
|
||||||
|
<summary>
|
||||||
|
敏感数据对应的云 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)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.encryptedData">
|
||||||
|
<summary>
|
||||||
|
包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.errMsg">
|
||||||
|
<summary>
|
||||||
|
错误信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.iv">
|
||||||
|
<summary>
|
||||||
|
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetClipboardDataSuccessCallbackOption.data">
|
<member name="F:WeChatWASM.GetClipboardDataSuccessCallbackOption.data">
|
||||||
<summary>
|
<summary>
|
||||||
剪贴板的内容
|
剪贴板的内容
|
||||||
@ -5619,6 +5700,11 @@
|
|||||||
使用 sha1( rawData + sessionkey ) 得到字符串,用于校验用户信息
|
使用 sha1( rawData + sessionkey ) 得到字符串,用于校验用户信息
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGameExptInfoOption.keyList">
|
||||||
|
<summary>
|
||||||
|
实验参数数组,不填则获取所有实验参数
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetGroupEnterInfoOption.allowSingleChat">
|
<member name="F:WeChatWASM.GetGroupEnterInfoOption.allowSingleChat">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `3.7.8`
|
需要基础库: `3.7.8`
|
||||||
@ -5670,6 +5756,56 @@
|
|||||||
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGroupMembersInfoOption.members">
|
||||||
|
<summary>
|
||||||
|
需要获取的群用户的 groupOpenId 列表
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGroupMembersInfoSuccessCallbackResult.membersInfo">
|
||||||
|
<summary>
|
||||||
|
所选用户的头像昵称列表
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.avatarUrl">
|
||||||
|
<summary>
|
||||||
|
用户头像图片 url
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.city">
|
||||||
|
<summary>
|
||||||
|
用户所在城市
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.country">
|
||||||
|
<summary>
|
||||||
|
用户所在国家
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.gender">
|
||||||
|
<summary>
|
||||||
|
用户性别
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.language">
|
||||||
|
<summary>
|
||||||
|
显示 country province city 所用的语言
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.nickName">
|
||||||
|
<summary>
|
||||||
|
用户昵称
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.openId">
|
||||||
|
<summary>
|
||||||
|
用户 openId
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.province">
|
||||||
|
<summary>
|
||||||
|
用户所在省份
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetInferenceEnvInfoSuccessCallbackResult.ver">
|
<member name="F:WeChatWASM.GetInferenceEnvInfoSuccessCallbackResult.ver">
|
||||||
<summary>
|
<summary>
|
||||||
AI推理引擎版本
|
AI推理引擎版本
|
||||||
@ -5805,17 +5941,6 @@
|
|||||||
- itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。
|
- itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.GetShareInfoOption.shareTicket">
|
|
||||||
<summary>
|
|
||||||
shareTicket,详见[获取更多转发信息](#)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.GetShareInfoOption.timeout">
|
|
||||||
<summary>
|
|
||||||
需要基础库: `1.9.90`
|
|
||||||
超时时间,单位 ms
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.GetShowSplashAdStatusSuccessCallbackResult.code">
|
<member name="F:WeChatWASM.GetShowSplashAdStatusSuccessCallbackResult.code">
|
||||||
<summary>
|
<summary>
|
||||||
封面广告组件展示状态码
|
封面广告组件展示状态码
|
||||||
@ -6103,12 +6228,12 @@
|
|||||||
超时时间,单位ms
|
超时时间,单位ms
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestFailCallbackErr.errMsg">
|
<member name="F:WeChatWASM.LoginFailCallbackErr.errMsg">
|
||||||
<summary>
|
<summary>
|
||||||
错误信息
|
错误信息
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestFailCallbackErr.errno">
|
<member name="F:WeChatWASM.LoginFailCallbackErr.errno">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `2.24.0`
|
需要基础库: `2.24.0`
|
||||||
errno 错误码,错误码的详细说明参考 [Errno错误码](https://developers.weixin.qq.com/minigame/dev/guide/runtime/debug/PublicErrno.html)
|
errno 错误码,错误码的详细说明参考 [Errno错误码](https://developers.weixin.qq.com/minigame/dev/guide/runtime/debug/PublicErrno.html)
|
||||||
@ -6155,7 +6280,7 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.NavigateToMiniProgramOption.extraData">
|
<member name="F:WeChatWASM.NavigateToMiniProgramOption.extraData">
|
||||||
<summary>
|
<summary>
|
||||||
需要传递给目标小程序的数据,目标小程序可在 `App.onLaunch`,`App.onShow` 中获取到这份数据。如果跳转的是小游戏,可以在 [wx.onShow](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.onShow.html)、[wx.getLaunchOptionsSync](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.getLaunchOptionsSync.html) 中可以获取到这份数据数据。
|
需要传递给目标小程序的数据,目标小程序可在 `App.onLaunch`,`App.onShow` 中获取到这份数据。如果跳转的是小游戏,可以在 [wx.onShow](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.onShow.html)、[wx.getLaunchOptionsSync](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.getLaunchOptionsSync.html) 中可以获取到这份数据。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.NavigateToMiniProgramOption.noRelaunchIfPathUnchanged">
|
<member name="F:WeChatWASM.NavigateToMiniProgramOption.noRelaunchIfPathUnchanged">
|
||||||
@ -6201,6 +6326,25 @@
|
|||||||
设置特征订阅类型,有效值有 `notification` 和 `indication`
|
设置特征订阅类型,有效值有 `notification` 和 `indication`
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.NotifyGroupMembersOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.NotifyGroupMembersOption.members">
|
||||||
|
<summary>
|
||||||
|
需要提醒的用户 group_openid 列表
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.NotifyGroupMembersOption.title">
|
||||||
|
<summary>
|
||||||
|
文字链标题,发送的内容将由微信拼接为:@的成员列表+“请完成:”/"请参与:"+打开小程序的文字链,如「@alex @cindy 请完成:团建报名统计」。
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.NotifyGroupMembersOption.type">
|
||||||
|
<summary>
|
||||||
|
展示的动词
|
||||||
|
可选值:
|
||||||
|
- 'participate': 请参与;
|
||||||
|
- 'complete': 请完成;
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OnAccelerometerChangeListenerResult.x">
|
<member name="F:WeChatWASM.OnAccelerometerChangeListenerResult.x">
|
||||||
<summary>
|
<summary>
|
||||||
X 轴
|
X 轴
|
||||||
@ -6366,14 +6510,9 @@
|
|||||||
- 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向;
|
- 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向;
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.Error.message">
|
<member name="F:WeChatWASM.ListenerError.message">
|
||||||
<summary>
|
<summary>
|
||||||
错误
|
错误信息,包含堆栈
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.Error.stack">
|
|
||||||
<summary>
|
|
||||||
错误调用堆栈
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.OnGamepadConnectedListenerResult.gamepad">
|
<member name="F:WeChatWASM.OnGamepadConnectedListenerResult.gamepad">
|
||||||
@ -6498,6 +6637,11 @@
|
|||||||
当前是否处于弱网状态
|
当前是否处于弱网状态
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OnOfficialComponentsInfoChangeListenerResult.OfficialComponentsInfo">
|
||||||
|
<summary>
|
||||||
|
全部组件的信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OnScreenRecordingStateChangedListenerResult.state">
|
<member name="F:WeChatWASM.OnScreenRecordingStateChangedListenerResult.state">
|
||||||
<summary>
|
<summary>
|
||||||
录屏状态
|
录屏状态
|
||||||
@ -6691,6 +6835,14 @@
|
|||||||
变化后的窗口宽度,单位 px
|
变化后的窗口宽度,单位 px
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OnWindowStateChangeListenerResult.state">
|
||||||
|
<summary>
|
||||||
|
改变的窗口状态,可能的值为:
|
||||||
|
- 'minimize':窗口最小化
|
||||||
|
- 'normalize':窗口恢复正常尺寸
|
||||||
|
- 'maximize':窗口最大化
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OpenBluetoothAdapterOption.mode">
|
<member name="F:WeChatWASM.OpenBluetoothAdapterOption.mode">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `2.10.0`
|
需要基础库: `2.10.0`
|
||||||
@ -6721,6 +6873,11 @@
|
|||||||
视频号 id,以“sph”开头的id,可在视频号助手获取
|
视频号 id,以“sph”开头的id,可在视频号助手获取
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OpenChannelsActivityOption.nonceId">
|
||||||
|
<summary>
|
||||||
|
视频号的Feed的nonceId,必填
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OpenChannelsEventOption.eventId">
|
<member name="F:WeChatWASM.OpenChannelsEventOption.eventId">
|
||||||
<summary>
|
<summary>
|
||||||
活动 id
|
活动 id
|
||||||
@ -6751,6 +6908,21 @@
|
|||||||
视频号 id
|
视频号 id
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OpenChatToolOption.chatType">
|
||||||
|
<summary>
|
||||||
|
群聊类型
|
||||||
|
可选值:
|
||||||
|
- 1: 微信联系人单聊;
|
||||||
|
- 2: 企业微信联系人单聊;
|
||||||
|
- 3: 普通微信群聊;
|
||||||
|
- 4: 企业微信互通群聊;
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OpenChatToolOption.roomid">
|
||||||
|
<summary>
|
||||||
|
聊天室 id,不传则拉起群选择框,可以传入多聊群的 opengid 值,或者单聊群的 open_single_roomid 值
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OpenCustomerServiceChatOption.corpId">
|
<member name="F:WeChatWASM.OpenCustomerServiceChatOption.corpId">
|
||||||
<summary>
|
<summary>
|
||||||
企业ID
|
企业ID
|
||||||
@ -7147,26 +7319,6 @@
|
|||||||
| -10073015 | | 索要功能不可用 |
|
| -10073015 | | 索要功能不可用 |
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.cloudID">
|
|
||||||
<summary>
|
|
||||||
敏感数据对应的云 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)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.encryptedData">
|
|
||||||
<summary>
|
|
||||||
包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.errMsg">
|
|
||||||
<summary>
|
|
||||||
错误信息
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.iv">
|
|
||||||
<summary>
|
|
||||||
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasPaymentOption.currencyType">
|
<member name="F:WeChatWASM.RequestMidasPaymentOption.currencyType">
|
||||||
<summary>
|
<summary>
|
||||||
币种
|
币种
|
||||||
@ -7426,6 +7578,16 @@
|
|||||||
- 'CODE_25': 一维码;
|
- 'CODE_25': 一维码;
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.SelectGroupMembersOption.maxSelectCount">
|
||||||
|
<summary>
|
||||||
|
最多可选人数
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GroupMemberInfo.members">
|
||||||
|
<summary>
|
||||||
|
所选用户在此聊天室下的唯一标识,同一个用户在不同的聊天室下id不同
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.SetBLEMTUOption.deviceId">
|
<member name="F:WeChatWASM.SetBLEMTUOption.deviceId">
|
||||||
<summary>
|
<summary>
|
||||||
蓝牙设备 id
|
蓝牙设备 id
|
||||||
@ -7559,6 +7721,66 @@
|
|||||||
是否转发到当前群。该参数只对从群工具栏打开的场景下生效,默认转发到当前群,填入false时可转发到其他会话。
|
是否转发到当前群。该参数只对从群工具栏打开的场景下生效,默认转发到当前群,填入false时可转发到其他会话。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareAppMessageToGroupOption.title">
|
||||||
|
<summary>
|
||||||
|
转发标题
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareAppMessageToGroupOption.imageUrl">
|
||||||
|
<summary>
|
||||||
|
自定义图片路径,支持PNG及JPG,显示图片长宽比是 5:4,默认使用截图
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareAppMessageToGroupOption.path" -->
|
||||||
|
<member name="F:WeChatWASM.ShareEmojiToGroupOption.imagePath">
|
||||||
|
<summary>
|
||||||
|
要分享的表情地址,必须为本地路径或临时路径
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareEmojiToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareEmojiToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的表情消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareImageToGroupOption.imagePath">
|
||||||
|
<summary>
|
||||||
|
要分享的图片地址,必须为本地路径或临时路径
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareImageToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareImageToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的图片消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareTextToGroupOption.content">
|
||||||
|
<summary>
|
||||||
|
要分享的文本内容
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareTextToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareTextToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的表情消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareVideoToGroupOption.videoPath">
|
||||||
|
<summary>
|
||||||
|
要分享的视频地址,必须为本地路径或临时路径
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareVideoToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareVideoToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的图片消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareVideoToGroupOption.thumbPath">
|
||||||
|
<summary>
|
||||||
|
缩略图路径,若留空则使用视频首帧
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.ShowActionSheetOption.itemList">
|
<member name="F:WeChatWASM.ShowActionSheetOption.itemList">
|
||||||
<summary>
|
<summary>
|
||||||
按钮的文字数组,数组长度最大为 6
|
按钮的文字数组,数组长度最大为 6
|
||||||
@ -7601,6 +7823,14 @@
|
|||||||
键盘输入框显示的默认值
|
键盘输入框显示的默认值
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShowKeyboardOption.keyboardType">
|
||||||
|
<summary>
|
||||||
|
键盘类型,默认为文本类型,客户端8.0.57以上支持数字键盘
|
||||||
|
可选值:
|
||||||
|
- 'text': 文本;
|
||||||
|
- 'number': 数字;
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.ShowKeyboardOption.maxLength">
|
<member name="F:WeChatWASM.ShowKeyboardOption.maxLength">
|
||||||
<summary>
|
<summary>
|
||||||
键盘中文本的最大长度
|
键盘中文本的最大长度
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 882bc04407b4d8217e597652f26bfb81
|
guid: 50e8037b070a830cd4772972a5d44265
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
Binary file not shown.
@ -3125,6 +3125,17 @@
|
|||||||
是否结束
|
是否结束
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.PageManagerCallbackResult.errCode">
|
||||||
|
<summary>
|
||||||
|
错误码,文档可见 https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/wx.createPageManager.html
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.PageManagerCallbackResult.errMsg">
|
||||||
|
<summary>
|
||||||
|
错误信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.PageManagerEventResult.isRecommended" -->
|
||||||
<member name="F:WeChatWASM.LoadOption.openlink">
|
<member name="F:WeChatWASM.LoadOption.openlink">
|
||||||
<summary>
|
<summary>
|
||||||
从不同渠道获得的OPENLINK字符串
|
从不同渠道获得的OPENLINK字符串
|
||||||
@ -3145,6 +3156,12 @@
|
|||||||
选填,部分活动、功能允许接收自定义query参数,请参阅渠道说明,默认可不填
|
选填,部分活动、功能允许接收自定义query参数,请参阅渠道说明,默认可不填
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGameExptInfoSuccessCallbackResult.list">
|
||||||
|
<summary>
|
||||||
|
结果对象的json字符串,各项为实验的相关信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.RankManagerStartEventResult.scoreKey" -->
|
||||||
<member name="F:WeChatWASM.VirtualPaymentError.errMsg">
|
<member name="F:WeChatWASM.VirtualPaymentError.errMsg">
|
||||||
错误信息
|
错误信息
|
||||||
|
|
||||||
@ -3595,6 +3612,26 @@
|
|||||||
宽度,单位:px
|
宽度,单位:px
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentsInfo.notificationComponentInfo">
|
||||||
|
<summary>
|
||||||
|
通知组件信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentInfo.boundingClientRect">
|
||||||
|
<summary>
|
||||||
|
组件的布局位置信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentInfo.isVisible">
|
||||||
|
<summary>
|
||||||
|
组件是否显示
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OfficialComponentInfo.name">
|
||||||
|
<summary>
|
||||||
|
组件的名称
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetStorageInfoSyncOption.currentSize">
|
<member name="F:WeChatWASM.GetStorageInfoSyncOption.currentSize">
|
||||||
<summary>
|
<summary>
|
||||||
当前占用的空间大小, 单位 KB
|
当前占用的空间大小, 单位 KB
|
||||||
@ -3917,7 +3954,7 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileOption.enableProfile">
|
<member name="F:WeChatWASM.DownloadFileOption.enableProfile">
|
||||||
<summary>
|
<summary>
|
||||||
是否开启 profile,默认开启。开启后可在接口回调的 res.profile 中查看性能调试信息。
|
是否开启 profile。iOS 和 Android 端默认开启,其他端暂不支持。开启后可在接口回调的 res.profile 中查看性能调试信息。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileOption.enableQuic">
|
<member name="F:WeChatWASM.DownloadFileOption.enableQuic">
|
||||||
@ -3943,12 +3980,6 @@
|
|||||||
超时时间,单位为毫秒,默认值为 60000 即一分钟。
|
超时时间,单位为毫秒,默认值为 60000 即一分钟。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileOption.useHighPerformanceMode">
|
|
||||||
<summary>
|
|
||||||
需要基础库: `3.4.1`
|
|
||||||
使用高性能模式,暂仅支持 Android,默认关闭。该模式下有更优的网络性能表现。
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.GeneralCallbackResult.errMsg">
|
<member name="F:WeChatWASM.GeneralCallbackResult.errMsg">
|
||||||
<summary>
|
<summary>
|
||||||
错误信息
|
错误信息
|
||||||
@ -3962,7 +3993,7 @@
|
|||||||
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.profile">
|
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.profile">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `2.10.4`
|
需要基础库: `2.10.4`
|
||||||
网络请求过程中一些调试信息,[查看详细说明](https://developers.weixin.qq.com/miniprogram/dev/framework/performance/network.html)
|
网络请求过程中一些调试信息,[查看详细说明](https://developers.weixin.qq.com/miniprogram/dev/framework/performance/network.html)。目前 iOS 和 Android 端支持。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.statusCode">
|
<member name="F:WeChatWASM.DownloadFileSuccessCallbackResult.statusCode">
|
||||||
@ -3997,12 +4028,12 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.domainLookUpEnd">
|
<member name="F:WeChatWASM.RequestProfile.domainLookUpEnd">
|
||||||
<summary>
|
<summary>
|
||||||
DNS 域名查询完成的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
Local DNS 域名查询完成的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.domainLookUpStart">
|
<member name="F:WeChatWASM.RequestProfile.domainLookUpStart">
|
||||||
<summary>
|
<summary>
|
||||||
DNS 域名查询开始的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
Local DNS 域名查询开始的时间,如果使用了本地缓存(即无 DNS 查询)或持久连接,则与 fetchStart 值相等
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.downstreamThroughputKbpsEstimate">
|
<member name="F:WeChatWASM.RequestProfile.downstreamThroughputKbpsEstimate">
|
||||||
@ -4020,11 +4051,29 @@
|
|||||||
组件准备好使用 HTTP 请求抓取资源的时间,这发生在检查本地缓存之前
|
组件准备好使用 HTTP 请求抓取资源的时间,这发生在检查本地缓存之前
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.httpDNSDomainLookUpEnd">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.9`
|
||||||
|
httpDNS 完成查询的时间。仅当开启 httpDNS 功能时返回该字段。目前仅wx.request接口支持
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.httpDNSDomainLookUpStart">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.9`
|
||||||
|
httpDNS 开始查询的时间。仅当开启 httpDNS 功能时返回该字段。目前仅wx.request接口支持
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.httpRttEstimate">
|
<member name="F:WeChatWASM.RequestProfile.httpRttEstimate">
|
||||||
<summary>
|
<summary>
|
||||||
协议层根据多个请求评估当前网络的 rtt(仅供参考)
|
协议层根据多个请求评估当前网络的 rtt(仅供参考)
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.invokeStart">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.10`
|
||||||
|
调用接口的时间。
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.peerIP">
|
<member name="F:WeChatWASM.RequestProfile.peerIP">
|
||||||
<summary>
|
<summary>
|
||||||
当前请求的IP
|
当前请求的IP
|
||||||
@ -4040,6 +4089,18 @@
|
|||||||
使用协议类型,有效值:http1.1, h2, quic, unknown
|
使用协议类型,有效值:http1.1, h2, quic, unknown
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.queueEnd">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.10`
|
||||||
|
结束排队的时间。达到并行上限时才需要排队。如果未发生排队,则该字段和 queueStart 字段值相同
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.RequestProfile.queueStart">
|
||||||
|
<summary>
|
||||||
|
需要基础库: `3.8.10`
|
||||||
|
开始排队的时间。达到并行上限时才需要排队。
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestProfile.receivedBytedCount">
|
<member name="F:WeChatWASM.RequestProfile.receivedBytedCount">
|
||||||
<summary>
|
<summary>
|
||||||
收到字节数
|
收到字节数
|
||||||
@ -5540,6 +5601,26 @@
|
|||||||
预告状态:0可用 1取消 2已用
|
预告状态:0可用 1取消 2已用
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.cloudID">
|
||||||
|
<summary>
|
||||||
|
敏感数据对应的云 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)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.encryptedData">
|
||||||
|
<summary>
|
||||||
|
包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.errMsg">
|
||||||
|
<summary>
|
||||||
|
错误信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetChatToolInfoSuccessCallbackResult.iv">
|
||||||
|
<summary>
|
||||||
|
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetClipboardDataSuccessCallbackOption.data">
|
<member name="F:WeChatWASM.GetClipboardDataSuccessCallbackOption.data">
|
||||||
<summary>
|
<summary>
|
||||||
剪贴板的内容
|
剪贴板的内容
|
||||||
@ -5625,6 +5706,11 @@
|
|||||||
使用 sha1( rawData + sessionkey ) 得到字符串,用于校验用户信息
|
使用 sha1( rawData + sessionkey ) 得到字符串,用于校验用户信息
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGameExptInfoOption.keyList">
|
||||||
|
<summary>
|
||||||
|
实验参数数组,不填则获取所有实验参数
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetGroupEnterInfoOption.allowSingleChat">
|
<member name="F:WeChatWASM.GetGroupEnterInfoOption.allowSingleChat">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `3.7.8`
|
需要基础库: `3.7.8`
|
||||||
@ -5676,6 +5762,56 @@
|
|||||||
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGroupMembersInfoOption.members">
|
||||||
|
<summary>
|
||||||
|
需要获取的群用户的 groupOpenId 列表
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GetGroupMembersInfoSuccessCallbackResult.membersInfo">
|
||||||
|
<summary>
|
||||||
|
所选用户的头像昵称列表
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.avatarUrl">
|
||||||
|
<summary>
|
||||||
|
用户头像图片 url
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.city">
|
||||||
|
<summary>
|
||||||
|
用户所在城市
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.country">
|
||||||
|
<summary>
|
||||||
|
用户所在国家
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.gender">
|
||||||
|
<summary>
|
||||||
|
用户性别
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.language">
|
||||||
|
<summary>
|
||||||
|
显示 country province city 所用的语言
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.nickName">
|
||||||
|
<summary>
|
||||||
|
用户昵称
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.openId">
|
||||||
|
<summary>
|
||||||
|
用户 openId
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ResultOpenDataContextUserInfo.province">
|
||||||
|
<summary>
|
||||||
|
用户所在省份
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.GetInferenceEnvInfoSuccessCallbackResult.ver">
|
<member name="F:WeChatWASM.GetInferenceEnvInfoSuccessCallbackResult.ver">
|
||||||
<summary>
|
<summary>
|
||||||
AI推理引擎版本
|
AI推理引擎版本
|
||||||
@ -5811,17 +5947,6 @@
|
|||||||
- itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。
|
- itemSettings 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.GetShareInfoOption.shareTicket">
|
|
||||||
<summary>
|
|
||||||
shareTicket,详见[获取更多转发信息](#)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.GetShareInfoOption.timeout">
|
|
||||||
<summary>
|
|
||||||
需要基础库: `1.9.90`
|
|
||||||
超时时间,单位 ms
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.GetShowSplashAdStatusSuccessCallbackResult.code">
|
<member name="F:WeChatWASM.GetShowSplashAdStatusSuccessCallbackResult.code">
|
||||||
<summary>
|
<summary>
|
||||||
封面广告组件展示状态码
|
封面广告组件展示状态码
|
||||||
@ -6109,12 +6234,12 @@
|
|||||||
超时时间,单位ms
|
超时时间,单位ms
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestFailCallbackErr.errMsg">
|
<member name="F:WeChatWASM.LoginFailCallbackErr.errMsg">
|
||||||
<summary>
|
<summary>
|
||||||
错误信息
|
错误信息
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestFailCallbackErr.errno">
|
<member name="F:WeChatWASM.LoginFailCallbackErr.errno">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `2.24.0`
|
需要基础库: `2.24.0`
|
||||||
errno 错误码,错误码的详细说明参考 [Errno错误码](https://developers.weixin.qq.com/minigame/dev/guide/runtime/debug/PublicErrno.html)
|
errno 错误码,错误码的详细说明参考 [Errno错误码](https://developers.weixin.qq.com/minigame/dev/guide/runtime/debug/PublicErrno.html)
|
||||||
@ -6161,7 +6286,7 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.NavigateToMiniProgramOption.extraData">
|
<member name="F:WeChatWASM.NavigateToMiniProgramOption.extraData">
|
||||||
<summary>
|
<summary>
|
||||||
需要传递给目标小程序的数据,目标小程序可在 `App.onLaunch`,`App.onShow` 中获取到这份数据。如果跳转的是小游戏,可以在 [wx.onShow](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.onShow.html)、[wx.getLaunchOptionsSync](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.getLaunchOptionsSync.html) 中可以获取到这份数据数据。
|
需要传递给目标小程序的数据,目标小程序可在 `App.onLaunch`,`App.onShow` 中获取到这份数据。如果跳转的是小游戏,可以在 [wx.onShow](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.onShow.html)、[wx.getLaunchOptionsSync](https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.getLaunchOptionsSync.html) 中可以获取到这份数据。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.NavigateToMiniProgramOption.noRelaunchIfPathUnchanged">
|
<member name="F:WeChatWASM.NavigateToMiniProgramOption.noRelaunchIfPathUnchanged">
|
||||||
@ -6207,6 +6332,25 @@
|
|||||||
设置特征订阅类型,有效值有 `notification` 和 `indication`
|
设置特征订阅类型,有效值有 `notification` 和 `indication`
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.NotifyGroupMembersOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.NotifyGroupMembersOption.members">
|
||||||
|
<summary>
|
||||||
|
需要提醒的用户 group_openid 列表
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.NotifyGroupMembersOption.title">
|
||||||
|
<summary>
|
||||||
|
文字链标题,发送的内容将由微信拼接为:@的成员列表+“请完成:”/"请参与:"+打开小程序的文字链,如「@alex @cindy 请完成:团建报名统计」。
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.NotifyGroupMembersOption.type">
|
||||||
|
<summary>
|
||||||
|
展示的动词
|
||||||
|
可选值:
|
||||||
|
- 'participate': 请参与;
|
||||||
|
- 'complete': 请完成;
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OnAccelerometerChangeListenerResult.x">
|
<member name="F:WeChatWASM.OnAccelerometerChangeListenerResult.x">
|
||||||
<summary>
|
<summary>
|
||||||
X 轴
|
X 轴
|
||||||
@ -6372,14 +6516,9 @@
|
|||||||
- 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向;
|
- 'landscapeReverse': 横屏反方向,以 HOME 键在屏幕左侧为反方向;
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.Error.message">
|
<member name="F:WeChatWASM.ListenerError.message">
|
||||||
<summary>
|
<summary>
|
||||||
错误
|
错误信息,包含堆栈
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.Error.stack">
|
|
||||||
<summary>
|
|
||||||
错误调用堆栈
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.OnGamepadConnectedListenerResult.gamepad">
|
<member name="F:WeChatWASM.OnGamepadConnectedListenerResult.gamepad">
|
||||||
@ -6504,6 +6643,11 @@
|
|||||||
当前是否处于弱网状态
|
当前是否处于弱网状态
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OnOfficialComponentsInfoChangeListenerResult.OfficialComponentsInfo">
|
||||||
|
<summary>
|
||||||
|
全部组件的信息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OnScreenRecordingStateChangedListenerResult.state">
|
<member name="F:WeChatWASM.OnScreenRecordingStateChangedListenerResult.state">
|
||||||
<summary>
|
<summary>
|
||||||
录屏状态
|
录屏状态
|
||||||
@ -6697,6 +6841,14 @@
|
|||||||
变化后的窗口宽度,单位 px
|
变化后的窗口宽度,单位 px
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OnWindowStateChangeListenerResult.state">
|
||||||
|
<summary>
|
||||||
|
改变的窗口状态,可能的值为:
|
||||||
|
- 'minimize':窗口最小化
|
||||||
|
- 'normalize':窗口恢复正常尺寸
|
||||||
|
- 'maximize':窗口最大化
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OpenBluetoothAdapterOption.mode">
|
<member name="F:WeChatWASM.OpenBluetoothAdapterOption.mode">
|
||||||
<summary>
|
<summary>
|
||||||
需要基础库: `2.10.0`
|
需要基础库: `2.10.0`
|
||||||
@ -6727,6 +6879,11 @@
|
|||||||
视频号 id,以“sph”开头的id,可在视频号助手获取
|
视频号 id,以“sph”开头的id,可在视频号助手获取
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OpenChannelsActivityOption.nonceId">
|
||||||
|
<summary>
|
||||||
|
视频号的Feed的nonceId,必填
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OpenChannelsEventOption.eventId">
|
<member name="F:WeChatWASM.OpenChannelsEventOption.eventId">
|
||||||
<summary>
|
<summary>
|
||||||
活动 id
|
活动 id
|
||||||
@ -6757,6 +6914,21 @@
|
|||||||
视频号 id
|
视频号 id
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OpenChatToolOption.chatType">
|
||||||
|
<summary>
|
||||||
|
群聊类型
|
||||||
|
可选值:
|
||||||
|
- 1: 微信联系人单聊;
|
||||||
|
- 2: 企业微信联系人单聊;
|
||||||
|
- 3: 普通微信群聊;
|
||||||
|
- 4: 企业微信互通群聊;
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.OpenChatToolOption.roomid">
|
||||||
|
<summary>
|
||||||
|
聊天室 id,不传则拉起群选择框,可以传入多聊群的 opengid 值,或者单聊群的 open_single_roomid 值
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.OpenCustomerServiceChatOption.corpId">
|
<member name="F:WeChatWASM.OpenCustomerServiceChatOption.corpId">
|
||||||
<summary>
|
<summary>
|
||||||
企业ID
|
企业ID
|
||||||
@ -7153,26 +7325,6 @@
|
|||||||
| -10073015 | | 索要功能不可用 |
|
| -10073015 | | 索要功能不可用 |
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.cloudID">
|
|
||||||
<summary>
|
|
||||||
敏感数据对应的云 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)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.encryptedData">
|
|
||||||
<summary>
|
|
||||||
包括敏感数据在内的完整转发信息的加密数据,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.errMsg">
|
|
||||||
<summary>
|
|
||||||
错误信息
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasFriendPaymentSuccessCallbackResult.iv">
|
|
||||||
<summary>
|
|
||||||
加密算法的初始向量,详细见[加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:WeChatWASM.RequestMidasPaymentOption.currencyType">
|
<member name="F:WeChatWASM.RequestMidasPaymentOption.currencyType">
|
||||||
<summary>
|
<summary>
|
||||||
币种
|
币种
|
||||||
@ -7432,6 +7584,16 @@
|
|||||||
- 'CODE_25': 一维码;
|
- 'CODE_25': 一维码;
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.SelectGroupMembersOption.maxSelectCount">
|
||||||
|
<summary>
|
||||||
|
最多可选人数
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.GroupMemberInfo.members">
|
||||||
|
<summary>
|
||||||
|
所选用户在此聊天室下的唯一标识,同一个用户在不同的聊天室下id不同
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.SetBLEMTUOption.deviceId">
|
<member name="F:WeChatWASM.SetBLEMTUOption.deviceId">
|
||||||
<summary>
|
<summary>
|
||||||
蓝牙设备 id
|
蓝牙设备 id
|
||||||
@ -7565,6 +7727,66 @@
|
|||||||
是否转发到当前群。该参数只对从群工具栏打开的场景下生效,默认转发到当前群,填入false时可转发到其他会话。
|
是否转发到当前群。该参数只对从群工具栏打开的场景下生效,默认转发到当前群,填入false时可转发到其他会话。
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareAppMessageToGroupOption.title">
|
||||||
|
<summary>
|
||||||
|
转发标题
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareAppMessageToGroupOption.imageUrl">
|
||||||
|
<summary>
|
||||||
|
自定义图片路径,支持PNG及JPG,显示图片长宽比是 5:4,默认使用截图
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareAppMessageToGroupOption.path" -->
|
||||||
|
<member name="F:WeChatWASM.ShareEmojiToGroupOption.imagePath">
|
||||||
|
<summary>
|
||||||
|
要分享的表情地址,必须为本地路径或临时路径
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareEmojiToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareEmojiToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的表情消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareImageToGroupOption.imagePath">
|
||||||
|
<summary>
|
||||||
|
要分享的图片地址,必须为本地路径或临时路径
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareImageToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareImageToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的图片消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareTextToGroupOption.content">
|
||||||
|
<summary>
|
||||||
|
要分享的文本内容
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareTextToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareTextToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的表情消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareVideoToGroupOption.videoPath">
|
||||||
|
<summary>
|
||||||
|
要分享的视频地址,必须为本地路径或临时路径
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.ShareVideoToGroupOption.entrancePath" -->
|
||||||
|
<member name="F:WeChatWASM.ShareVideoToGroupOption.needShowEntrance">
|
||||||
|
<summary>
|
||||||
|
分享的图片消息是否要带小程序入口
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShareVideoToGroupOption.thumbPath">
|
||||||
|
<summary>
|
||||||
|
缩略图路径,若留空则使用视频首帧
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.ShowActionSheetOption.itemList">
|
<member name="F:WeChatWASM.ShowActionSheetOption.itemList">
|
||||||
<summary>
|
<summary>
|
||||||
按钮的文字数组,数组长度最大为 6
|
按钮的文字数组,数组长度最大为 6
|
||||||
@ -7607,6 +7829,14 @@
|
|||||||
键盘输入框显示的默认值
|
键盘输入框显示的默认值
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WeChatWASM.ShowKeyboardOption.keyboardType">
|
||||||
|
<summary>
|
||||||
|
键盘类型,默认为文本类型,客户端8.0.57以上支持数字键盘
|
||||||
|
可选值:
|
||||||
|
- 'text': 文本;
|
||||||
|
- 'number': 数字;
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:WeChatWASM.ShowKeyboardOption.maxLength">
|
<member name="F:WeChatWASM.ShowKeyboardOption.maxLength">
|
||||||
<summary>
|
<summary>
|
||||||
键盘中文本的最大长度
|
键盘中文本的最大长度
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1adef893b0fe955b2dbd96ac1c601d6e
|
guid: 2d49b78c46d4aa24d2f06fade54cadb4
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
276
Runtime/WX.cs
276
Runtime/WX.cs
@ -276,6 +276,16 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.CreateBLEPeripheralServer(callback);
|
WXSDKManagerHandler.Instance.CreateBLEPeripheralServer(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.exitChatTool(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.exitChatTool.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 退出聊天工具模式
|
||||||
|
/// </summary>
|
||||||
|
public static void ExitChatTool(ExitChatToolOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.ExitChatTool(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.exitMiniProgram(Object object)](https://developers.weixin.qq.com/minigame/dev/api/navigate/wx.exitMiniProgram.html)
|
/// [wx.exitMiniProgram(Object object)](https://developers.weixin.qq.com/minigame/dev/api/navigate/wx.exitMiniProgram.html)
|
||||||
/// 需要基础库: `2.17.3`
|
/// 需要基础库: `2.17.3`
|
||||||
@ -511,6 +521,45 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.GetChannelsLiveNoticeInfo(callback);
|
WXSDKManagerHandler.Instance.GetChannelsLiveNoticeInfo(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.getChatToolInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.getChatToolInfo.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 获取聊天工具模式下的群聊信息。
|
||||||
|
/// 需要注意的是,单聊群和多聊群下返回的群唯一标识是不同的。
|
||||||
|
/// 1. 多聊群下返回 opengid
|
||||||
|
/// 2. 单聊群下返回 open_single_roomid
|
||||||
|
/// 同时将返回用户在群(含单聊)下的唯一标识 group_openid。
|
||||||
|
/// **示例代码**
|
||||||
|
/// ```js
|
||||||
|
/// wx.getChatToolInfo({
|
||||||
|
/// success(res) {
|
||||||
|
/// // res
|
||||||
|
/// {
|
||||||
|
/// errMsg: 'getChatToolInfo:ok',
|
||||||
|
/// encryptedData: '',
|
||||||
|
/// iv: ''
|
||||||
|
/// }
|
||||||
|
/// },
|
||||||
|
/// fail() {
|
||||||
|
/// }
|
||||||
|
/// })
|
||||||
|
/// ```
|
||||||
|
/// 敏感数据有两种获取方式,一是使用 [加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#加密数据解密算法) 。
|
||||||
|
/// 获取得到的开放数据为以下 json 结构(其中 opengid 为当前群的唯一标识):
|
||||||
|
/// ```json
|
||||||
|
/// {
|
||||||
|
/// "opengid": "OPENGID", // 多聊群下返回的群唯一标识
|
||||||
|
/// "open_single_roomid": "", // 单聊群下返回的群唯一标识
|
||||||
|
/// "group_openid": "", // 用户在当前群的唯一标识
|
||||||
|
/// "chat_type": 3, // 聊天室类型
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
/// </summary>
|
||||||
|
public static void GetChatToolInfo(GetChatToolInfoOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.GetChatToolInfo(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.getClipboardData(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/clipboard/wx.getClipboardData.html)
|
/// [wx.getClipboardData(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/clipboard/wx.getClipboardData.html)
|
||||||
/// 需要基础库: `1.1.0`
|
/// 需要基础库: `1.1.0`
|
||||||
@ -641,6 +690,16 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.GetGameClubData(callback);
|
WXSDKManagerHandler.Instance.GetGameClubData(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.getGameExptInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/data-analysis/wx.getGameExptInfo.html)
|
||||||
|
/// 需要基础库: `3.8.8`
|
||||||
|
/// 给定实验参数数组,获取对应的实验参数值
|
||||||
|
/// </summary>
|
||||||
|
public static void GetGameExptInfo(GetGameExptInfoOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.GetGameExptInfo(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.getGroupEnterInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/group/wx.getGroupEnterInfo.html)
|
/// [wx.getGroupEnterInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/group/wx.getGroupEnterInfo.html)
|
||||||
/// 需要基础库: `2.10.4`
|
/// 需要基础库: `2.10.4`
|
||||||
@ -683,6 +742,16 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.GetGroupEnterInfo(callback);
|
WXSDKManagerHandler.Instance.GetGroupEnterInfo(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.getGroupMembersInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/data/wx.getGroupMembersInfo.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 获取所选群成员的头像、昵称,自行在开放数据域中渲染
|
||||||
|
/// </summary>
|
||||||
|
public static void GetGroupMembersInfo(GetGroupMembersInfoOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.GetGroupMembersInfo(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.getInferenceEnvInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ai/inference/wx.getInferenceEnvInfo.html)
|
/// [wx.getInferenceEnvInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ai/inference/wx.getInferenceEnvInfo.html)
|
||||||
/// 需要基础库: `2.30.1`
|
/// 需要基础库: `2.30.1`
|
||||||
@ -847,27 +916,6 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.GetSetting(callback);
|
WXSDKManagerHandler.Instance.GetSetting(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [wx.getShareInfo(Object object)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.getShareInfo.html)
|
|
||||||
/// 需要基础库: `1.1.0`
|
|
||||||
/// 获取转发详细信息(主要是获取群ID)。 从群聊内的小程序消息卡片打开小程序时,调用此接口才有效。从基础库 v2.17.3 开始,推荐用 [wx.getGroupEnterInfo](https://developers.weixin.qq.com/minigame/dev/api/open-api/group/wx.getGroupEnterInfo.html) 替代此接口。
|
|
||||||
/// **示例代码**
|
|
||||||
/// 敏感数据获取方式 [加密数据解密算法](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#加密数据解密算法) 。
|
|
||||||
/// 获取得到的开放数据为以下 json 结构(其中 openGId 为当前群的唯一标识):
|
|
||||||
/// ```json
|
|
||||||
/// {
|
|
||||||
/// "openGId": "OPENGID"
|
|
||||||
/// }
|
|
||||||
/// ```
|
|
||||||
/// **Tips**
|
|
||||||
/// - 如需要展示群名称,小程序可以使用 [开放数据组件](https://developers.weixin.qq.com/minigame/dev/guide/open-ability/open-data.html)
|
|
||||||
/// - 小游戏可以通过 [`wx.getGroupInfo`](https://developers.weixin.qq.com/minigame/dev/api/open-api/data/wx.getGroupInfo.html) 接口获取群名称
|
|
||||||
/// </summary>
|
|
||||||
public static void GetShareInfo(GetShareInfoOption callback)
|
|
||||||
{
|
|
||||||
WXSDKManagerHandler.Instance.GetShareInfo(callback);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.getShowSplashAdStatus(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.getShowSplashAdStatus.html)
|
/// [wx.getShowSplashAdStatus(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ad/wx.getShowSplashAdStatus.html)
|
||||||
/// 需要基础库: `3.7.8`
|
/// 需要基础库: `3.7.8`
|
||||||
@ -1272,6 +1320,16 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.NotifyBLECharacteristicValueChange(callback);
|
WXSDKManagerHandler.Instance.NotifyBLECharacteristicValueChange(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.notifyGroupMembers(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.notifyGroupMembers.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 提醒用户完成任务,标题长度不超过 30 个字符,支持中英文和数字,中文算2个字符。
|
||||||
|
/// </summary>
|
||||||
|
public static void NotifyGroupMembers(NotifyGroupMembersOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.NotifyGroupMembers(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.openAppAuthorizeSetting(Object object)](https://developers.weixin.qq.com/minigame/dev/api/base/system/wx.openAppAuthorizeSetting.html)
|
/// [wx.openAppAuthorizeSetting(Object object)](https://developers.weixin.qq.com/minigame/dev/api/base/system/wx.openAppAuthorizeSetting.html)
|
||||||
/// 需要基础库: `2.25.3`
|
/// 需要基础库: `2.25.3`
|
||||||
@ -1383,6 +1441,19 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.OpenChannelsUserProfile(callback);
|
WXSDKManagerHandler.Instance.OpenChannelsUserProfile(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.openChatTool(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.openChatTool.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 进入聊天工具模式。
|
||||||
|
/// 1. 不传入聊天室id时,微信会拉起聊天列表让用户选择,用户选择后绑定聊天室进入聊天工具模式。
|
||||||
|
/// 2. 传入聊天室id时(群聊为opengid,单聊为open_single_roomid),会直接绑定该聊天室进入,此时必须传入对应的 chatType。
|
||||||
|
/// 3. 聊天室类型可从 [[getGroupEnterInfo]](https://developers.weixin.qq.com/minigame/dev/api/open-api/group/wx.getGroupEnterInfo.html) 返回值中获取。
|
||||||
|
/// </summary>
|
||||||
|
public static void OpenChatTool(OpenChatToolOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.OpenChatTool(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.openCustomerServiceChat(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/service-chat/wx.openCustomerServiceChat.html)
|
/// [wx.openCustomerServiceChat(Object object)](https://developers.weixin.qq.com/minigame/dev/api/open-api/service-chat/wx.openCustomerServiceChat.html)
|
||||||
/// 需要基础库: `2.30.4`
|
/// 需要基础库: `2.30.4`
|
||||||
@ -1906,6 +1977,25 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.ScanCode(callback);
|
WXSDKManagerHandler.Instance.ScanCode(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.selectGroupMembers(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.selectGroupMembers.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 选择聊天室的成员,并返回选择成员的 group_openid。若当前为群聊,则会拉起成员选择器;若当前为单聊,则直接返回双方的 group_openid。
|
||||||
|
/// ****
|
||||||
|
/// ```js
|
||||||
|
/// wx.selectGroupMembers({
|
||||||
|
/// maxSelectCount: 3,
|
||||||
|
/// success(res) {
|
||||||
|
/// // res.members
|
||||||
|
/// }
|
||||||
|
/// })
|
||||||
|
/// ```
|
||||||
|
/// </summary>
|
||||||
|
public static void SelectGroupMembers(SelectGroupMembersOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.SelectGroupMembers(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.setBLEMTU(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/bluetooth-ble/wx.setBLEMTU.html)
|
/// [wx.setBLEMTU(Object object)](https://developers.weixin.qq.com/minigame/dev/api/device/bluetooth-ble/wx.setBLEMTU.html)
|
||||||
/// 需要基础库: `2.11.0`
|
/// 需要基础库: `2.11.0`
|
||||||
@ -2068,6 +2158,56 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.SetVisualEffectOnCapture(callback);
|
WXSDKManagerHandler.Instance.SetVisualEffectOnCapture(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.shareAppMessageToGroup(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.shareAppMessageToGroup.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 转发小程序卡片到聊天
|
||||||
|
/// </summary>
|
||||||
|
public static void ShareAppMessageToGroup(ShareAppMessageToGroupOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.ShareAppMessageToGroup(callback);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.shareEmojiToGroup(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.shareEmojiToGroup.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 转发表情到聊天
|
||||||
|
/// </summary>
|
||||||
|
public static void ShareEmojiToGroup(ShareEmojiToGroupOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.ShareEmojiToGroup(callback);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.shareImageToGroup(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.shareImageToGroup.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 转发图片到聊天
|
||||||
|
/// </summary>
|
||||||
|
public static void ShareImageToGroup(ShareImageToGroupOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.ShareImageToGroup(callback);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.shareTextToGroup(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.shareTextToGroup.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 转发文本到聊天
|
||||||
|
/// </summary>
|
||||||
|
public static void ShareTextToGroup(ShareTextToGroupOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.ShareTextToGroup(callback);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.shareVideoToGroup(Object object)](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.shareVideoToGroup.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 转发视频到聊天
|
||||||
|
/// </summary>
|
||||||
|
public static void ShareVideoToGroup(ShareVideoToGroupOption callback)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.ShareVideoToGroup(callback);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.showActionSheet(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ui/interaction/wx.showActionSheet.html)
|
/// [wx.showActionSheet(Object object)](https://developers.weixin.qq.com/minigame/dev/api/ui/interaction/wx.showActionSheet.html)
|
||||||
/// 显示操作菜单
|
/// 显示操作菜单
|
||||||
@ -2578,6 +2718,16 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.ExitPointerLock();
|
WXSDKManagerHandler.Instance.ExitPointerLock();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.isChatTool()](https://developers.weixin.qq.com/minigame/dev/api/chattool/wx.isChatTool.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 是否处于聊天工具模式
|
||||||
|
/// </summary>
|
||||||
|
public static void IsChatTool()
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.IsChatTool();
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.removeStorageSync(string key)](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.removeStorageSync.html)
|
/// [wx.removeStorageSync(string key)](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.removeStorageSync.html)
|
||||||
/// [wx.removeStorage](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.removeStorage.html) 的同步版本
|
/// [wx.removeStorage](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.removeStorage.html) 的同步版本
|
||||||
@ -2667,23 +2817,6 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.RevokeBufferURL(url);
|
WXSDKManagerHandler.Instance.RevokeBufferURL(url);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// [wx.setStorageSync(string key, any data)](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.setStorageSync.html)
|
|
||||||
/// 将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。
|
|
||||||
/// **注意**
|
|
||||||
/// storage 应只用来进行数据的持久化存储,不应用于运行时的数据传递或全局状态管理。启动过程中过多的同步读写存储,会显著影响启动耗时。
|
|
||||||
/// **示例代码**
|
|
||||||
/// ```js
|
|
||||||
/// try {
|
|
||||||
/// wx.setStorageSync('key', 'value')
|
|
||||||
/// } catch (e) { }
|
|
||||||
/// ```
|
|
||||||
/// </summary>
|
|
||||||
public static void SetStorageSync<T>(string key, T data)
|
|
||||||
{
|
|
||||||
WXSDKManagerHandler.Instance.SetStorageSync(key, data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.shareAppMessage(Object object)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.shareAppMessage.html)
|
/// [wx.shareAppMessage(Object object)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.shareAppMessage.html)
|
||||||
/// 主动拉起转发,进入选择通讯录界面。
|
/// 主动拉起转发,进入选择通讯录界面。
|
||||||
@ -2992,12 +3125,12 @@ namespace WeChatWASM
|
|||||||
/// [wx.onError(function listener)](https://developers.weixin.qq.com/minigame/dev/api/base/app/app-event/wx.onError.html)
|
/// [wx.onError(function listener)](https://developers.weixin.qq.com/minigame/dev/api/base/app/app-event/wx.onError.html)
|
||||||
/// 监听全局错误事件
|
/// 监听全局错误事件
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void OnError(Action<Error> error)
|
public static void OnError(Action<ListenerError> error)
|
||||||
{
|
{
|
||||||
WXSDKManagerHandler.Instance.OnError(error);
|
WXSDKManagerHandler.Instance.OnError(error);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void OffError(Action<Error> error)
|
public static void OffError(Action<ListenerError> error)
|
||||||
{
|
{
|
||||||
WXSDKManagerHandler.Instance.OffError(error);
|
WXSDKManagerHandler.Instance.OffError(error);
|
||||||
}
|
}
|
||||||
@ -3274,6 +3407,28 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.OffNetworkWeakChange(result);
|
WXSDKManagerHandler.Instance.OffNetworkWeakChange(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.onOfficialComponentsInfoChange(function listener)](https://developers.weixin.qq.com/minigame/dev/api/ui/menu/wx.onOfficialComponentsInfoChange.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 监听官方组件信息变化事件
|
||||||
|
/// **示例代码**
|
||||||
|
/// ```js
|
||||||
|
/// const callback = res => console.log('officialComponentsInfoChange', res)
|
||||||
|
/// wx.onOfficialComponentsInfoChange(callback)
|
||||||
|
/// // 取消监听
|
||||||
|
/// wx.offOfficialComponentsInfoChange(callback)
|
||||||
|
/// ```
|
||||||
|
/// </summary>
|
||||||
|
public static void OnOfficialComponentsInfoChange(Action<OnOfficialComponentsInfoChangeListenerResult> result)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.OnOfficialComponentsInfoChange(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void OffOfficialComponentsInfoChange(Action<OnOfficialComponentsInfoChangeListenerResult> result)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.OffOfficialComponentsInfoChange(result);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.onScreenRecordingStateChanged(function listener)](https://developers.weixin.qq.com/minigame/dev/api/device/screen/wx.onScreenRecordingStateChanged.html)
|
/// [wx.onScreenRecordingStateChanged(function listener)](https://developers.weixin.qq.com/minigame/dev/api/device/screen/wx.onScreenRecordingStateChanged.html)
|
||||||
/// 需要基础库: `3.1.4`
|
/// 需要基础库: `3.1.4`
|
||||||
@ -3455,10 +3610,25 @@ namespace WeChatWASM
|
|||||||
WXSDKManagerHandler.Instance.OffWindowResize(result);
|
WXSDKManagerHandler.Instance.OffWindowResize(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [wx.onWindowStateChange(function listener)](https://developers.weixin.qq.com/minigame/dev/api/ui/window/wx.onWindowStateChange.html)
|
||||||
|
/// 需要基础库: `3.8.8`
|
||||||
|
/// 监听小程序窗口状态变化事件。仅适用于 PC 平台
|
||||||
|
/// </summary>
|
||||||
|
public static void OnWindowStateChange(Action<OnWindowStateChangeListenerResult> result)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.OnWindowStateChange(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void OffWindowStateChange(Action<OnWindowStateChangeListenerResult> result)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.OffWindowStateChange(result);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [wx.onAddToFavorites(function listener)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.onAddToFavorites.html)
|
/// [wx.onAddToFavorites(function listener)](https://developers.weixin.qq.com/minigame/dev/api/share/wx.onAddToFavorites.html)
|
||||||
/// 需要基础库: `2.10.3`
|
/// 需要基础库: `2.10.3`
|
||||||
/// 监听用户点击菜单「收藏」按钮时触发的事件(安卓7.0.15起支持,iOS 暂不支持)
|
/// 监听用户点击菜单「收藏」按钮时触发的事件
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void OnAddToFavorites(Action<Action<OnAddToFavoritesListenerResult>> callback)
|
public static void OnAddToFavorites(Action<Action<OnAddToFavoritesListenerResult>> callback)
|
||||||
{
|
{
|
||||||
@ -3769,6 +3939,30 @@ namespace WeChatWASM
|
|||||||
return WXSDKManagerHandler.GetMenuButtonBoundingClientRect();
|
return WXSDKManagerHandler.GetMenuButtonBoundingClientRect();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [Object wx.getOfficialComponentsInfo()](https://developers.weixin.qq.com/minigame/dev/api/ui/menu/wx.getOfficialComponentsInfo.html)
|
||||||
|
/// 需要基础库: `3.7.12`
|
||||||
|
/// 获取所有官方组件的相关信息
|
||||||
|
/// **示例代码**
|
||||||
|
/// ```js
|
||||||
|
/// const componentsInfo = wx.getOfficialComponentsInfo();
|
||||||
|
/// const { notificationComponentInfo } = componentsInfo;
|
||||||
|
/// if (notificationComponentInfo.isShow) {
|
||||||
|
/// console.log(notificationComponentInfo.boundingClientRect.width);
|
||||||
|
/// console.log(notificationComponentInfo.boundingClientRect.height);
|
||||||
|
/// console.log(notificationComponentInfo.boundingClientRect.top);
|
||||||
|
/// console.log(notificationComponentInfo.boundingClientRect.left);
|
||||||
|
/// console.log(notificationComponentInfo.boundingClientRect.bottom);
|
||||||
|
/// console.log(notificationComponentInfo.boundingClientRect.right);
|
||||||
|
/// }
|
||||||
|
/// ```
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public static OfficialComponentsInfo GetOfficialComponentsInfo()
|
||||||
|
{
|
||||||
|
return WXSDKManagerHandler.GetOfficialComponentsInfo();
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [Object wx.getStorageInfoSync()](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.getStorageInfoSync.html)
|
/// [Object wx.getStorageInfoSync()](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.getStorageInfoSync.html)
|
||||||
/// [wx.getStorageInfo](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.getStorageInfo.html) 的同步版本
|
/// [wx.getStorageInfo](https://developers.weixin.qq.com/minigame/dev/api/storage/wx.getStorageInfo.html) 的同步版本
|
||||||
|
|||||||
@ -766,6 +766,16 @@ namespace WeChatWASM
|
|||||||
return WXSDKManagerHandler.Instance.GetCachePath(url);
|
return WXSDKManagerHandler.Instance.GetCachePath(url);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 临时修复安卓在主线程繁忙时,异步读缓存耗时高,但需关注同步读文件可能导致掉帧
|
||||||
|
/// 仅在有需要的情况下主动开启,需要同步读的场景完成后再主动关闭
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="enabled"></param>
|
||||||
|
public static void SetSyncReadCacheEnabled(bool enabled)
|
||||||
|
{
|
||||||
|
WXSDKManagerHandler.Instance.SetSyncReadCacheEnabled(enabled);
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -1137,6 +1147,7 @@ namespace WeChatWASM
|
|||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region PageManager
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// [[PageManager](https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/PageManager.html) wx.createPageManager()](https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/wx.createPageManager.html)
|
/// [[PageManager](https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/PageManager.html) wx.createPageManager()](https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/wx.createPageManager.html)
|
||||||
/// 需要基础库: `3.6.7`
|
/// 需要基础库: `3.6.7`
|
||||||
@ -1162,6 +1173,22 @@ namespace WeChatWASM
|
|||||||
{
|
{
|
||||||
return WXSDKManagerHandler.Instance.CreatePageManager();
|
return WXSDKManagerHandler.Instance.CreatePageManager();
|
||||||
}
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 上报
|
||||||
|
/// <returns></returns>
|
||||||
|
public static WXMiniReportManager GetMiniReportManager(GetMiniReportManagerParam param)
|
||||||
|
{
|
||||||
|
return WXSDKManagerHandler.Instance.GetMiniReportManager(param);
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 社交特色能力
|
||||||
|
public static WXRankManager GetRankManager() {
|
||||||
|
return WXSDKManagerHandler.Instance.GetRankManager();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -149,7 +149,9 @@ public class WXTouchInputOverride : BaseInput
|
|||||||
Text text = selectedObject.GetComponent<Text>();
|
Text text = selectedObject.GetComponent<Text>();
|
||||||
if (text != null)
|
if (text != null)
|
||||||
{
|
{
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
PlayableAdsInput.mobileKeyboardSupport = true;
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
WeixinMiniGameInput.mobileKeyboardSupport = true;
|
WeixinMiniGameInput.mobileKeyboardSupport = true;
|
||||||
#elif PLATFORM_WEBGL
|
#elif PLATFORM_WEBGL
|
||||||
#if UNITY_2022_1_OR_NEWER
|
#if UNITY_2022_1_OR_NEWER
|
||||||
@ -159,7 +161,9 @@ public class WXTouchInputOverride : BaseInput
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#if PLATFORM_WEIXINMINIGAME
|
#if PLATFORM_PLAYABLEADS
|
||||||
|
PlayableAdsInput.mobileKeyboardSupport = false;
|
||||||
|
#elif PLATFORM_WEIXINMINIGAME
|
||||||
WeixinMiniGameInput.mobileKeyboardSupport = false;
|
WeixinMiniGameInput.mobileKeyboardSupport = false;
|
||||||
#elif PLATFORM_WEBGL
|
#elif PLATFORM_WEBGL
|
||||||
#if UNITY_2022_1_OR_NEWER
|
#if UNITY_2022_1_OR_NEWER
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 75ef85528de9cf32347c924331a4b281
|
guid: 5a3338f5854d3b064e68e78996fd755c
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: c233f641f99d4f78c505a46b3e10268a
|
guid: d8ed7083447b6b9c67876096cbc37c6a
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 9c8d7e78ba8ed93f81612e8cf4157812
|
guid: 3dec691cf854c9ba33558037b85674df
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 6381bef0b1cb25ca0814ee9ec3c33584
|
guid: 32c71ecc082161c159930b1b3bf848a1
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 3a706d427ddc6f17a686d00164596b21
|
guid: 6c2a4db476f5604545571ef2c3c375b7
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 3b7afa312f37129c5f0da72ca5085ed2
|
guid: add9c0e40a56f3968335f0f3730d3399
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 38ef877315e858a891e38a8504d14444
|
guid: f160ffbf637126094e69832be9c1fb9d
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: db19f71416cd53e87a23c48b14b8558e
|
guid: 4788c155ccc54f28b5a98bf65226a1a0
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 844e9fbfa7180d47a44d3655a47bfa6a
|
guid: db0431f33b815d4e5d9f630df15ef5eb
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 7bd7e7175cbf02cf19c630e5dde4919c
|
guid: 2ed7f6d1b98c06d65f03e3e441b16510
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 89a34b810a1a142d563099e15e414093
|
guid: 11e564cd1dd6fe38b8a3e1ed1179dc80
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 306d6397d3c633cd3388633bf4d36a76
|
guid: 87f156027172b36f2789baeacd58b28e
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: fafe80396291e3992588aa528e0e92a1
|
guid: fedd1394787318d4f7205ef06d59fdf9
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 371613b26b33189b2dbc0e63af9c2aa8
|
guid: 0e492926f033c6848a13ff998528e660
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 2056d2dadba4cdc21c89b03008d5754a
|
guid: 27c3cbc2a7be6ad981f6ab2e7ef34000
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 02dffa55081d6f775f17621b7aca54de
|
guid: ef42e68b8678762e856c1c584090806a
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 2e17b41cccc3aab50c531f3f846777e5
|
guid: d84236a5895ade2ae8fa098822cf0634
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: d2d2ffeeb21555008dc418d316063a90
|
guid: ad45f8124bdca9bae00194edd4ccf5a7
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 725da8ab5cb786687eb3672109cd7ad0
|
guid: 17e3f96e36691672697b3a41f4fbb061
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 16aea3ab47cc15ca64c9be6db6dfda11
|
guid: 26c6a7230a2aac7e69f7e77b5712863a
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 5102a7a140da8b309dc8cfeba79cb238
|
guid: 07f77dc511b4658520c204143e5d4187
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 4d3cd0899ccf7f7a8a7784a8ef0f493e
|
guid: 3e47a0a55de2da6ffc3612c87550c443
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: fcbd0e472755678cb73ce15c59456b49
|
guid: 6318d25b421354f4be451653771e54d7
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1018,6 +1018,9 @@ export default {
|
|||||||
if (WEBAudio.audioWebSupport === 0 || WEBAudio.audioWebEnabled === 0) {
|
if (WEBAudio.audioWebSupport === 0 || WEBAudio.audioWebEnabled === 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (WEBAudio.audioContext && WEBAudio.audioContext.state !== 'suspended') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
resumeWebAudio();
|
resumeWebAudio();
|
||||||
},
|
},
|
||||||
_JS_Sound_Set3D(channelInstance, threeD) {
|
_JS_Sound_Set3D(channelInstance, threeD) {
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 96fb3e98d187bbbc7a6e54e620eb1183
|
guid: cf3f8cbfc8679f7e11ab715ee0dc09a7
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 46d32a16e64018567a02b90541549025
|
guid: 1fb37672ae8f9c3ad4ef882882da5ffa
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 917aa8b5c3fa53d8a5d2f345d09f200d
|
guid: 0e426bff0838c78311a80260fd1b3b5a
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 87f055f5dccc138fd6dcef872e67bf0c
|
guid: 4c4622bc9850288224ef127b711a484b
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 3ce278d439a9839fc4c3b4502ba8a01e
|
guid: 1e684b95e2f4aff4819a2286ed91bebd
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 702973570969846d4ed4407aa01cf046
|
guid: 7ad6f6edca48c28a87cdaa9422b37eb6
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: d7ea1e611371f45ccd52c676ad877e8d
|
guid: f72a805b5b6263407a2756a3260cf27a
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 5893dde60ed16d4c92c40263d3d9570d
|
guid: ea1d35e586eaf436758a1cbcd6bc1688
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: a60e3e46baf7aeca26f359e5fb988f5b
|
guid: 91424ccb35d8c0d9277c41d24a414fa8
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: cbc6c6f103b6ac0ed8153d44a5811cf8
|
guid: cc24bacc359092bff5c00fc9738d2696
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 3dcf6ae343c0fa275e0aafef55ee43a1
|
guid: 5acf936904bb171d102b09c97e6cd94a
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: c27d44cb16a69da700f08574dea9d4ed
|
guid: 3365926735112998f6ec35eb00d6117c
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1783e806582197eaaf07db70f00e7ee4
|
guid: d92de167696b3b2f36ebb158938cc380
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: ccf0ee7ff1c26648ad79f9de2c7d7ff1
|
guid: 35b15ee0c1b33ac5a3b7fb041c4837d1
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -93,6 +93,14 @@ export const ResType = {
|
|||||||
top: 'number',
|
top: 'number',
|
||||||
width: 'number',
|
width: 'number',
|
||||||
},
|
},
|
||||||
|
OfficialComponentsInfo: {
|
||||||
|
notificationComponentInfo: 'OfficialComponentInfo',
|
||||||
|
},
|
||||||
|
OfficialComponentInfo: {
|
||||||
|
boundingClientRect: 'ClientRect',
|
||||||
|
isVisible: 'bool',
|
||||||
|
name: 'string',
|
||||||
|
},
|
||||||
GetStorageInfoSyncOption: {
|
GetStorageInfoSyncOption: {
|
||||||
currentSize: 'number',
|
currentSize: 'number',
|
||||||
keys: 'string[]',
|
keys: 'string[]',
|
||||||
@ -180,10 +188,15 @@ export const ResType = {
|
|||||||
downstreamThroughputKbpsEstimate: 'number',
|
downstreamThroughputKbpsEstimate: 'number',
|
||||||
estimate_nettype: 'number',
|
estimate_nettype: 'number',
|
||||||
fetchStart: 'number',
|
fetchStart: 'number',
|
||||||
|
httpDNSDomainLookUpEnd: 'number',
|
||||||
|
httpDNSDomainLookUpStart: 'number',
|
||||||
httpRttEstimate: 'number',
|
httpRttEstimate: 'number',
|
||||||
|
invokeStart: 'number',
|
||||||
peerIP: 'string',
|
peerIP: 'string',
|
||||||
port: 'number',
|
port: 'number',
|
||||||
protocol: 'string',
|
protocol: 'string',
|
||||||
|
queueEnd: 'number',
|
||||||
|
queueStart: 'number',
|
||||||
receivedBytedCount: 'number',
|
receivedBytedCount: 'number',
|
||||||
redirectEnd: 'number',
|
redirectEnd: 'number',
|
||||||
redirectStart: 'number',
|
redirectStart: 'number',
|
||||||
@ -518,6 +531,12 @@ export const ResType = {
|
|||||||
status: 'number',
|
status: 'number',
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
},
|
},
|
||||||
|
GetChatToolInfoSuccessCallbackResult: {
|
||||||
|
cloudID: 'string',
|
||||||
|
encryptedData: 'string',
|
||||||
|
errMsg: 'string',
|
||||||
|
iv: 'string',
|
||||||
|
},
|
||||||
GetClipboardDataSuccessCallbackOption: {
|
GetClipboardDataSuccessCallbackOption: {
|
||||||
data: 'string',
|
data: 'string',
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
@ -555,6 +574,10 @@ export const ResType = {
|
|||||||
signature: 'string',
|
signature: 'string',
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
},
|
},
|
||||||
|
GetGameExptInfoSuccessCallbackResult: {
|
||||||
|
list: 'object',
|
||||||
|
errMsg: 'string',
|
||||||
|
},
|
||||||
GetGroupEnterInfoError: {
|
GetGroupEnterInfoError: {
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
errCode: 'number',
|
errCode: 'number',
|
||||||
@ -565,6 +588,20 @@ export const ResType = {
|
|||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
iv: 'string',
|
iv: 'string',
|
||||||
},
|
},
|
||||||
|
GetGroupMembersInfoSuccessCallbackResult: {
|
||||||
|
membersInfo: 'ResultOpenDataContextUserInfo[]',
|
||||||
|
errMsg: 'string',
|
||||||
|
},
|
||||||
|
ResultOpenDataContextUserInfo: {
|
||||||
|
avatarUrl: 'string',
|
||||||
|
city: 'string',
|
||||||
|
country: 'string',
|
||||||
|
gender: 'number',
|
||||||
|
language: 'string',
|
||||||
|
nickName: 'string',
|
||||||
|
openId: 'string',
|
||||||
|
province: 'string',
|
||||||
|
},
|
||||||
GetInferenceEnvInfoSuccessCallbackResult: {
|
GetInferenceEnvInfoSuccessCallbackResult: {
|
||||||
ver: 'string',
|
ver: 'string',
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
@ -667,7 +704,7 @@ export const ResType = {
|
|||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
openIdList: 'string[]',
|
openIdList: 'string[]',
|
||||||
},
|
},
|
||||||
RequestFailCallbackErr: {
|
LoginFailCallbackErr: {
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
errno: 'number',
|
errno: 'number',
|
||||||
},
|
},
|
||||||
@ -736,9 +773,8 @@ export const ResType = {
|
|||||||
OnDeviceOrientationChangeListenerResult: {
|
OnDeviceOrientationChangeListenerResult: {
|
||||||
value: 'string',
|
value: 'string',
|
||||||
},
|
},
|
||||||
Error: {
|
ListenerError: {
|
||||||
message: 'string',
|
message: 'string',
|
||||||
stack: 'string',
|
|
||||||
},
|
},
|
||||||
OnGamepadConnectedListenerResult: {
|
OnGamepadConnectedListenerResult: {
|
||||||
gamepad: 'string',
|
gamepad: 'string',
|
||||||
@ -784,6 +820,9 @@ export const ResType = {
|
|||||||
networkType: 'string',
|
networkType: 'string',
|
||||||
weakNet: 'bool',
|
weakNet: 'bool',
|
||||||
},
|
},
|
||||||
|
OnOfficialComponentsInfoChangeListenerResult: {
|
||||||
|
OfficialComponentsInfo: 'OfficialComponentsInfo',
|
||||||
|
},
|
||||||
OnScreenRecordingStateChangedListenerResult: {
|
OnScreenRecordingStateChangedListenerResult: {
|
||||||
state: 'string',
|
state: 'string',
|
||||||
},
|
},
|
||||||
@ -846,6 +885,9 @@ export const ResType = {
|
|||||||
windowHeight: 'number',
|
windowHeight: 'number',
|
||||||
windowWidth: 'number',
|
windowWidth: 'number',
|
||||||
},
|
},
|
||||||
|
OnWindowStateChangeListenerResult: {
|
||||||
|
state: 'string',
|
||||||
|
},
|
||||||
OpenCardRequestInfo: {
|
OpenCardRequestInfo: {
|
||||||
cardId: 'string',
|
cardId: 'string',
|
||||||
code: 'string',
|
code: 'string',
|
||||||
@ -889,12 +931,6 @@ export const ResType = {
|
|||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
errCode: 'number',
|
errCode: 'number',
|
||||||
},
|
},
|
||||||
RequestMidasFriendPaymentSuccessCallbackResult: {
|
|
||||||
cloudID: 'string',
|
|
||||||
encryptedData: 'string',
|
|
||||||
errMsg: 'string',
|
|
||||||
iv: 'string',
|
|
||||||
},
|
|
||||||
MidasPaymentError: {
|
MidasPaymentError: {
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
errCode: 'number',
|
errCode: 'number',
|
||||||
@ -940,6 +976,10 @@ export const ResType = {
|
|||||||
scanType: 'string',
|
scanType: 'string',
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
},
|
},
|
||||||
|
GroupMemberInfo: {
|
||||||
|
members: 'string[]',
|
||||||
|
errMsg: 'string',
|
||||||
|
},
|
||||||
SetBLEMTUFailCallbackResult: {
|
SetBLEMTUFailCallbackResult: {
|
||||||
mtu: 'number',
|
mtu: 'number',
|
||||||
},
|
},
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 3c2f92a35946993b6a650071a3367699
|
guid: c76a7ce5f0c3f9bed7605e8077f0153a
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -86,4 +86,12 @@ export const ResTypeOther = {
|
|||||||
status: 'number',
|
status: 'number',
|
||||||
errMsg: 'string',
|
errMsg: 'string',
|
||||||
},
|
},
|
||||||
|
LoadOption: {
|
||||||
|
openlink: 'string',
|
||||||
|
query: 'object',
|
||||||
|
},
|
||||||
|
ShowOption: {
|
||||||
|
openlink: 'string',
|
||||||
|
query: 'object',
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 258cafce20c4fedc1f00322b31e35b54
|
guid: f18dd9a077be662539b897febcd489ca
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: d2b3a6bb22a417c4319dd9c53c1e3bc4
|
guid: a5df34a6ac704a166406a24bffc3fa00
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -27,10 +27,12 @@ function WX_OneWayNoFunction(functionName, ...params) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const onlyReadyResponse = [
|
const onlyReadResponse = [
|
||||||
'getSystemSetting',
|
'getSystemSetting',
|
||||||
'getAppAuthorizeSetting',
|
'getAppAuthorizeSetting',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
const needParseJson = ['WXMiniReportManagerReport'];
|
||||||
// eslint-disable-next-line @typescript-eslint/naming-convention
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
||||||
function WX_SyncFunction(functionName, ...params) {
|
function WX_SyncFunction(functionName, ...params) {
|
||||||
return wx[functionName.replace(/^\w/, (a) => a.toLowerCase())](...params);
|
return wx[functionName.replace(/^\w/, (a) => a.toLowerCase())](...params);
|
||||||
@ -72,6 +74,10 @@ export default {
|
|||||||
...config,
|
...config,
|
||||||
success(res) {
|
success(res) {
|
||||||
formatResponse(successType, res);
|
formatResponse(successType, res);
|
||||||
|
|
||||||
|
if (lowerFunctionName === 'getGameExptInfo') {
|
||||||
|
res.list = JSON.stringify(res.list);
|
||||||
|
}
|
||||||
moduleHelper.send(`${functionName}Callback`, JSON.stringify({
|
moduleHelper.send(`${functionName}Callback`, JSON.stringify({
|
||||||
callbackId, type: 'success', res: JSON.stringify(res),
|
callbackId, type: 'success', res: JSON.stringify(res),
|
||||||
}));
|
}));
|
||||||
@ -234,7 +240,7 @@ export default {
|
|||||||
},
|
},
|
||||||
WX_SyncFunction_t(functionName, returnType) {
|
WX_SyncFunction_t(functionName, returnType) {
|
||||||
const res = WX_SyncFunction(functionName);
|
const res = WX_SyncFunction(functionName);
|
||||||
if (onlyReadyResponse.includes(functionName.replace(/^\w/, (a) => a.toLowerCase()))) {
|
if (onlyReadResponse.includes(functionName.replace(/^\w/, (a) => a.toLowerCase()))) {
|
||||||
formatResponse(returnType, JSON.parse(JSON.stringify(res)));
|
formatResponse(returnType, JSON.parse(JSON.stringify(res)));
|
||||||
return JSON.stringify(res);
|
return JSON.stringify(res);
|
||||||
}
|
}
|
||||||
@ -355,7 +361,8 @@ export default {
|
|||||||
}
|
}
|
||||||
ClassOnEventLists[className + functionName][id + eventName].push(callback);
|
ClassOnEventLists[className + functionName][id + eventName].push(callback);
|
||||||
// WXVideoDecoder OnEvent 不规范 特殊处理
|
// WXVideoDecoder OnEvent 不规范 特殊处理
|
||||||
if (className === 'WXVideoDecoder') {
|
// update: 2025.9.27: 严重怀疑之前 WXPageManager 压根没有跑通过事件监听,跑到下面去了
|
||||||
|
if (className === 'WXVideoDecoder' || className === 'WXPageManager') {
|
||||||
obj[functionName.replace(/^\w/, (a) => a.toLowerCase())](eventName, callback);
|
obj[functionName.replace(/^\w/, (a) => a.toLowerCase())](eventName, callback);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -378,7 +385,8 @@ export default {
|
|||||||
}
|
}
|
||||||
ClassOnEventLists[className + functionName][id + eventName].forEach((v) => {
|
ClassOnEventLists[className + functionName][id + eventName].forEach((v) => {
|
||||||
|
|
||||||
if (className === 'WXVideoDecoder') {
|
|
||||||
|
if (className === 'WXVideoDecoder' || className === 'WXPageManager') {
|
||||||
obj[functionName.replace(/^\w/, (a) => a.toLowerCase())](eventName, v);
|
obj[functionName.replace(/^\w/, (a) => a.toLowerCase())](eventName, v);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -391,6 +399,10 @@ export default {
|
|||||||
WX_ClassOneWayNoFunction(className, functionName, id);
|
WX_ClassOneWayNoFunction(className, functionName, id);
|
||||||
},
|
},
|
||||||
WX_ClassOneWayNoFunction_vs(className, functionName, id, param1) {
|
WX_ClassOneWayNoFunction_vs(className, functionName, id, param1) {
|
||||||
|
if (needParseJson.includes(className + functionName)) {
|
||||||
|
// eslint-disable-next-line no-param-reassign
|
||||||
|
param1 = JSON.parse(param1);
|
||||||
|
}
|
||||||
WX_ClassOneWayNoFunction(className, functionName, id, param1);
|
WX_ClassOneWayNoFunction(className, functionName, id, param1);
|
||||||
},
|
},
|
||||||
WX_ClassOneWayNoFunction_t(className, functionName, returnType, id) {
|
WX_ClassOneWayNoFunction_t(className, functionName, returnType, id) {
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 4b4d8cf78fb8f0deae740c1455980c05
|
guid: 0ad86e734ca1366d9aa75d71a14c5ca1
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1cdeff3721d88cf441e2496f5985d8a6
|
guid: 18e51334b191d8d43bfdbed71b57c1cd
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: ebd17001e77737e9af70face72bdb798
|
guid: 38e497940f8f4650424f52109c9fc328
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1d890fc09a8d4b11c345054b5646d07c
|
guid: 4d931df8c0f38246d33fa774cc3c479f
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 879e7dcbaa62cc8b6ab0ca01df6a24bf
|
guid: 163f5af7c9c1931c2a99949e2c8f0f34
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: c82a8346461886817b5d0f44ed863978
|
guid: 0ec945af16a6f9124651e7eaa4cab678
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1ce68770a3cce9a2f7a0f2296c8dc6b5
|
guid: f67873756d313bf6289cdc3ed1741ae2
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -18,36 +18,27 @@ export default {
|
|||||||
if (!obj) {
|
if (!obj) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (key === 'x' || key === 'y' || key === 'width' || key === 'height' || key === 'playbackRate' || key === 'initialTime') {
|
if (key === 'x' || key === 'y' || key === 'width' || key === 'height' || key === 'initialTime' || key === 'playbackRate') {
|
||||||
obj[key] = +value;
|
obj[key] = +value;
|
||||||
}
|
}
|
||||||
else if (key === 'src' || key === 'poster') {
|
else if (key === 'src' || key === 'poster' || key === 'objectFit' || key === 'backgroundColor') {
|
||||||
obj[key] = value;
|
obj[key] = value;
|
||||||
}
|
}
|
||||||
else if (key === 'loop' || key === 'muted') {
|
else if (key === 'live' || key === 'controls' || key === 'showProgress' || key === 'showProgressInControlMode'
|
||||||
obj[key] = value === 'true';
|
|| key === 'autoplay' || key === 'loop' || key === 'muted' || key === 'obeyMuteSwitch'
|
||||||
|
|| key === 'enableProgressGesture' || key === 'enablePlayGesture' || key === 'showCenterPlayBtn') {
|
||||||
|
obj[key] = value === 'True';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
WXVideoPlay(id) {
|
|
||||||
const obj = getObject(id);
|
|
||||||
if (!obj) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
obj.play();
|
|
||||||
},
|
|
||||||
WXVideoAddListener(id, key) {
|
WXVideoAddListener(id, key) {
|
||||||
const obj = getObject(id);
|
getObject(id)?.[key]((e) => {
|
||||||
if (!obj) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
obj[key]((e) => {
|
|
||||||
moduleHelper.send('OnVideoCallback', JSON.stringify({
|
moduleHelper.send('OnVideoCallback', JSON.stringify({
|
||||||
callbackId: id,
|
callbackId: id,
|
||||||
type: key,
|
type: key,
|
||||||
position: e && e.position,
|
position: e?.position,
|
||||||
buffered: e && e.buffered,
|
buffered: e?.buffered ? Number(e.buffered) : undefined,
|
||||||
duration: e && e.duration,
|
duration: e?.duration,
|
||||||
errMsg: e && e.errMsg,
|
errMsg: e?.errMsg,
|
||||||
}));
|
}));
|
||||||
if (key === 'onError') {
|
if (key === 'onError') {
|
||||||
GameGlobal.enableTransparentCanvas = false;
|
GameGlobal.enableTransparentCanvas = false;
|
||||||
@ -55,54 +46,31 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
WXVideoDestroy(id) {
|
WXVideoRemoveListener(id, key) {
|
||||||
const obj = getObject(id);
|
getObject(id)?.[key]();
|
||||||
if (!obj) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
obj.destroy();
|
|
||||||
GameGlobal.enableTransparentCanvas = false;
|
|
||||||
},
|
},
|
||||||
WXVideoExitFullScreen(id) {
|
WXVideoDestroy(id, isLast) {
|
||||||
const obj = getObject(id);
|
getObject(id)?.destroy();
|
||||||
if (!obj) {
|
if (isLast) {
|
||||||
return;
|
GameGlobal.enableTransparentCanvas = false;
|
||||||
}
|
}
|
||||||
obj.exitFullScreen();
|
},
|
||||||
|
WXVideoPlay(id) {
|
||||||
|
getObject(id)?.play();
|
||||||
},
|
},
|
||||||
WXVideoPause(id) {
|
WXVideoPause(id) {
|
||||||
const obj = getObject(id);
|
getObject(id)?.pause();
|
||||||
if (!obj) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
obj.pause();
|
|
||||||
},
|
|
||||||
WXVideoRequestFullScreen(id, direction) {
|
|
||||||
const obj = getObject(id);
|
|
||||||
if (!obj) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
obj.requestFullScreen(direction);
|
|
||||||
},
|
|
||||||
WXVideoSeek(id, time) {
|
|
||||||
const obj = getObject(id);
|
|
||||||
if (!obj) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
obj.seek(time);
|
|
||||||
},
|
},
|
||||||
WXVideoStop(id) {
|
WXVideoStop(id) {
|
||||||
const obj = getObject(id);
|
getObject(id)?.stop();
|
||||||
if (!obj) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
obj.stop();
|
|
||||||
},
|
},
|
||||||
WXVideoRemoveListener(id, key) {
|
WXVideoSeek(id, time) {
|
||||||
const obj = getObject(id);
|
getObject(id)?.seek(time);
|
||||||
if (!obj) {
|
},
|
||||||
return;
|
WXVideoRequestFullScreen(id, direction) {
|
||||||
}
|
getObject(id)?.requestFullScreen(direction);
|
||||||
obj[key]();
|
},
|
||||||
|
WXVideoExitFullScreen(id) {
|
||||||
|
getObject(id)?.exitFullScreen();
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 28ca988d10ebc58dde845c1355456359
|
guid: 4617cacde907f14e6a7ba5520e5feb86
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1dcd303fb66477ceb547d88206d5a98d
|
guid: ad29f4ae0e705ac583eb65a4f0eaf76a
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -171,6 +171,12 @@ function _JS_Video_Create(url) {
|
|||||||
function _JS_Video_Destroy(video) {
|
function _JS_Video_Destroy(video) {
|
||||||
debugLog('_JS_Video_Destroy', video);
|
debugLog('_JS_Video_Destroy', video);
|
||||||
videoInstances[video].destroy();
|
videoInstances[video].destroy();
|
||||||
|
const Module = GameGlobal.manager.gameInstance.Module;
|
||||||
|
const { GL } = Module;
|
||||||
|
const gl = GL.currentContext.GLctx;
|
||||||
|
if (!isWebVideo && gl.emscriptenGLX && Module._glxVideoDestroy) {
|
||||||
|
Module._glxVideoDestroy(video);
|
||||||
|
}
|
||||||
delete videoInstances[video];
|
delete videoInstances[video];
|
||||||
}
|
}
|
||||||
function _JS_Video_Duration(video) {
|
function _JS_Video_Duration(video) {
|
||||||
@ -375,7 +381,29 @@ function _JS_Video_UpdateToTexture(video, tex) {
|
|||||||
if (!FrameworkData) {
|
if (!FrameworkData) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
const Module = GameGlobal.manager.gameInstance.Module;
|
||||||
const { GL, GLctx } = FrameworkData;
|
const { GL, GLctx } = FrameworkData;
|
||||||
|
const gl = GL.currentContext.GLctx;
|
||||||
|
|
||||||
|
if (!isWebVideo && Module._glxVideoUpdateToTexture && gl.emscriptenGLX) {
|
||||||
|
const data = v.frameData?.data;
|
||||||
|
const source = supportVideoFrame ? data : new Uint8ClampedArray(data);
|
||||||
|
const byteLength = supportVideoFrame ? 0 : source.byteLength;
|
||||||
|
let sourceIdOrPtr;
|
||||||
|
if (supportVideoFrame) {
|
||||||
|
sourceIdOrPtr = source.__uid;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
sourceIdOrPtr = Module._glxGetVideoTempBuffer(video, byteLength);
|
||||||
|
if (sourceIdOrPtr) {
|
||||||
|
Module.HEAPU8.set(source, sourceIdOrPtr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Module._glxVideoUpdateToTexture(v, supportVideoFrame, tex, v.videoWidth, v.videoHeight, sourceIdOrPtr);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
GLctx.pixelStorei(GLctx.UNPACK_FLIP_Y_WEBGL, true);
|
GLctx.pixelStorei(GLctx.UNPACK_FLIP_Y_WEBGL, true);
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 1cf39f45e9f8f334b9496f7588eedaa4
|
guid: 303061e6de182dbcb97c937e0a7152cd
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: ef14be51b471245848e73dfab9b2182d
|
guid: ebf517a71e316995eefb70eb4bd8353b
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: f7e3ac90e99fb0459e563cc66da25b12
|
guid: 9807e3e1e38bbc086311df398175b112
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 11a621fca1bb459797abd39cb47896f0
|
guid: 33f69186700c8421b134d74aefc42258
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 08990d064137d4a3b95cfea917db95b2
|
guid: dec6b543c309cb6a7c79341083aab0ad
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user