using System; using UnityEngine.Scripting; namespace WeChatWASM { public class WXBaseResponse { public string callbackId; //回调id,调用者不需要关注 public string errMsg; //失败示例 getUserInfo:fail auth deny; 成功示例 getUserInfo:ok } public class WXBaseActionParam { public Action success; //接口调用成功的回调函数 public Action fail; //接口调用失败的回调函数 public Action complete; //接口调用结束的回调函数(调用成功、失败都会执行) } public class WXTextResponse : WXBaseResponse { public int errCode; } public class WXReadFileResponse : WXBaseResponse { /// /// 如果返回二进制,则数据在这个字段 /// public byte[] binData; /// /// 如果返回的是字符串,则数据在这个字段 /// public string stringData; } public class WXUserInfoResponse : WXBaseResponse { // 具体说明可以参考 https://developers.weixin.qq.com/minigame/dev/api/open-api/user-info/wx.getUserInfo.html public int errCode; // 0为成功,非零为失败 public string signature; //使用 sha1( rawData + sessionkey ) 得到字符串,用于校验用户信息,详见 https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html public string encryptedData; //包括敏感数据在内的完整用户信息的加密数据,详见 https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#%E5%8A%A0%E5%AF%86%E6%95%B0%E6%8D%AE%E8%A7%A3%E5%AF%86%E7%AE%97%E6%B3%95 public string iv; //加密算法的初始向量,详见 https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#%E5%8A%A0%E5%AF%86%E6%95%B0%E6%8D%AE%E8%A7%A3%E5%AF%86%E7%AE%97%E6%B3%95 public string cloudID; //敏感数据对应的云 ID,开通云开发的小程序才会返回,可通过云调用直接获取开放数据,详细见云调用直接获取开放数据 https://developers.weixin.qq.com/minigame/dev/guide/open-ability/signature.html#method-cloud public WXUserInfo userInfo; //用户信息对象,不包含 openid 等敏感信息 public string userInfoRaw; //userinfo的序列化 } public class WXShareInfoResponse : WXBaseResponse { // 具体说明可以参考 https://developers.weixin.qq.com/minigame/dev/api/share/wx.getShareInfo.html public string encryptedData; public string iv; public string cloudID; } public class WXAuthPrivateMessageResponse : WXBaseResponse { public string encryptedData; public string iv; public bool valid; } public class WXADErrorResponse : WXBaseResponse { // 具体说明可以参考 https://developers.weixin.qq.com/minigame/dev/api/ad/BannerAd.onError.html public int errCode; } public class WXADLoadResponse : WXBaseResponse { // 具体说明可以参考 https://developers.weixin.qq.com/minigame/dev/api/ad/BannerAd.onLoad.html public int rewardValue; public int shareValue; } public class WXADResizeResponse : WXBaseResponse { // 具体说明可以参考 https://developers.weixin.qq.com/minigame/dev/api/ad/BannerAd.onResize.html public int width; public int height; } public class WXRewardedVideoAdOnCloseResponse : WXBaseResponse { /// /// 视频是否是在用户完整观看的情况下被关闭的,详见 https://developers.weixin.qq.com/minigame/dev/api/ad/RewardedVideoAd.onClose.html /// public bool isEnded; } public class RequestAdReportShareBehaviorParam { public int operation; // 1-曝光 2-点击 3-关闭 4-操作成功 5-操作失败 6-分享拉起 public int currentShow; // 0-广告 1-分享,当 operation 为 1-5 时必填 public int strategy; // 0-业务 1-微信策略 public string inviteUser; // 当 operation 为 6 时必填,填写分享人的 openId public string inviteUserAdunit; // 当 operation 为 6 时必填,填写分享人分享时的广告单元 public int shareValue; // 分享推荐值,必填 public int rewardValue; // 激励广告推荐值,必填 } public class WXRewardedVideoAdReportShareBehaviorResponse : WXBaseResponse { public string success; public string message; } /// /// 小游戏回到前台的事件的回调函数里返回的数据,详见 https://developers.weixin.qq.com/minigame/dev/api/base/app/life-cycle/wx.onShow.html /// public class WXOnShowResponse { public string scene; /// /// JS版里的query对象序列化成的JSON字符串 /// public string queryRaw; public string shareTicket; public ReferrerInfo referrerInfo; /// /// 该字段没用 /// public string referrerInfoRaw; } /// /// 云函数回调 https://developers.weixin.qq.com/minigame/dev/wxcloud/reference-sdk-api/functions/Cloud.callFunction.html /// public class WXCloudCallFunctionResponse : WXBaseResponse { /// /// 后端返回的经过json序列化后的数据 /// public string result; public string requestID; } public struct ReferrerInfo { public string appid; /// /// 对应JS版里的 extraData,这里序列化成JSON字符串 /// public string extraDataRaw; } public struct WXUserInfo { /// /// 详见 https://developers.weixin.qq.com/minigame/dev/api/open-api/user-info/UserInfo.html /// public string nickName; public string avatarUrl; public string country; public string province; public string city; public string language; public int gender; } public struct WXSafeArea { public int left; public int right; public int top; public int bottom; public int width; public int height; } public class WXAccountInfo : WXBaseResponse { public WXAccountInfoMiniProgram miniProgram; public string miniProgramRaw; public WXAccountInfoPlugin plugin; public string pluginRaw; } public struct WXAccountInfoMiniProgram { public string appId; public string envVersion; } public struct WXAccountInfoPlugin { public string appId; public string version; } /// /// 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.updateShareMenu.html /// public class WXUpdateShareMenuParam : WXBaseActionParam { public bool withShareTicket; public bool isUpdatableMessage; public string activityId; public string toDoActivityId; public bool isPrivateMessage; public TemplateInfo templateInfo; /// /// // 该字段不需要传 /// public string[] templateInfoRaw; } public class TemplateInfo { public TemplateInfoItem[] parameterList; } public class TemplateInfoItem { public string name; public string value; } public class WXShowShareMenuParam : WXBaseActionParam { // 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.showShareMenu.html public bool withShareTicket; public string[] menus; } public class WXHideShareMenuParam : WXBaseActionParam { // 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.hideShareMenu.html public string[] menus; } public class WXShareAppMessageParam { // 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.shareAppMessage.html public string title; public string imageUrl; public string query; public string imageUrlId; public bool toCurrentGroup; public string path; } public class WXShareTimelineParam { // 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.onShareTimeline.html public string title; public string imageUrl; public string query; public string path; } public class WXAddToFavoritesParam { // 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.onAddToFavorites.html public string title; public string imageUrl; public string query; public bool disableForward; } public class WXGetShareInfoParam : WXBaseActionParam { // 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.getShareInfo.html public string shareTicket; public int timeout; } public class WXAuthPrivateMessageParam : WXBaseActionParam { // 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/share/wx.authPrivateMessage.html public string shareTicket; } /// /// 创建 banner 广告组件参数,参数详见 https://developers.weixin.qq.com/minigame/dev/api/ad/wx.createBannerAd.html /// public class WXCreateBannerAdParam { public string adUnitId; public int adIntervals; public Style style; public string styleRaw; //该字段不需要传 } /// /// 创建激励视频广告组件参数,参数详见 https://developers.weixin.qq.com/minigame/dev/api/ad/wx.createRewardedVideoAd.html /// public class WXCreateRewardedVideoAdParam { public string adUnitId; public bool multiton; } /// /// 创建插屏广告组件参数,参数详见 https://developers.weixin.qq.com/minigame/dev/api/ad/wx.createInterstitialAd.html /// public class WXCreateInterstitialAdParam { public string adUnitId; } /// /// 创建格子广告参数,参数详见 https://developers.weixin.qq.com/minigame/dev/api/ad/wx.createGridAd.html /// public class WXCreateGridAdParam { public string adUnitId; public int adIntervals; public string adTheme; public int gridCount; public Style style; public string styleRaw; //该字段不需要传 } /// /// 创建原生模板广告参数,参数详见 https://developers.weixin.qq.com/minigame/dev/api/ad/wx.createCustomAd.html /// public class WXCreateCustomAdParam { public string adUnitId; public int adIntervals; public CustomStyle style; public string styleRaw; //该字段不需要传 } public struct Style { public int left; public int top; public int width; public int height; } /// /// 原生模板广告组件的样式 /// public struct CustomStyle { /// /// 原生模板广告组件的左上角横坐标 /// public int left; /// /// 原生模板广告组件的左上角纵坐标 /// public int top; /// /// 原生模板广告组件是否固定屏幕位置(不跟随屏幕滚动), 相当于JS api里的 fixed /// public bool isFixed; } /// /// 将当前 Canvas 保存为一个临时文件的同步版本,详见 https://developers.weixin.qq.com/minigame/dev/api/render/canvas/Canvas.toTempFilePathSync.html /// public class WXToTempFilePathSyncParam { public int x; public int y; public int width; public int height; public int destWidth; public int destHeight; public string fileType = "png"; public float quality = 1.0f; } [Preserve] public class ToTempFilePathParamSuccessCallbackResult : WXBaseResponse { /// /// canvas 生成的临时文件路径 (本地路径) /// public string tempFilePath; } /// /// 将当前 Canvas 保存为一个临时文件的异步版本,详见 https://developers.weixin.qq.com/minigame/dev/api/render/canvas/Canvas.toTempFilePath.html /// public class WXToTempFilePathParam : WXToTempFilePathSyncParam { /// /// 接口调用结束的回调函数(调用成功、失败都会执行) /// public Action complete; /// /// 接口调用失败的回调函数 /// public Action fail; /// /// 接口调用成功的回调函数 /// public Action success; } /// /// 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/ui/keyboard/wx.updateKeyboard.html /// public class WXUpdateKeyboardParam : WXBaseActionParam { public string value; } /// /// 各字段说明详见这里,https://developers.weixin.qq.com/minigame/dev/api/ui/keyboard/wx.showKeyboard.html /// public class WXShowKeyboardParam : WXBaseActionParam { public string defaultValue; public int maxLength; public bool multiple; public bool confirmHold; public string confirmType; } /// /// 对用户托管数据进行写数据操作。允许同时写多组 KV 数据。详见 https://developers.weixin.qq.com/minigame/dev/api/open-api/data/wx.setUserCloudStorage.html /// public class SetUserCloudStorageParam : WXBaseActionParam { public KVData[] KVDataList; } /// /// 删除用户托管数据当中对应 key 的数据。详见 https://developers.weixin.qq.com/minigame/dev/api/open-api/data/wx.removeUserCloudStorage.html /// public class RemoveUserCloudStorageParam : WXBaseActionParam { public string[] keyList; } /// /// https://developers.weixin.qq.com/minigame/dev/api/file/FileSystemManager.access.html /// public class AccessParam : WXBaseActionParam { public string path; } /// /// https://developers.weixin.qq.com/minigame/dev/api/file/FileSystemManager.unlink.html /// public class UnlinkParam : WXBaseActionParam { public string filePath; } /// /// https://developers.weixin.qq.com/minigame/dev/api/file/FileSystemManager.mkdir.html /// public class MkdirParam : WXBaseActionParam { /// /// 创建的目录路径 (本地路径) /// public string dirPath; /// /// 是否在递归创建该目录的上级目录后再创建该目录。如果对应的上级目录已经存在,则不创建该上级目录。如 dirPath 为 a/b/c/d 且 recursive 为 true,将创建 a 目录,再在 a 目录下创建 b 目录,以此类推直至创建 a/b/c 目录下的 d 目录。 /// public bool recursive = false; } /// /// https://developers.weixin.qq.com/minigame/dev/api/file/FileSystemManager.copyFile.html /// public class CopyFileParam : WXBaseActionParam { public string srcPath; public string destPath; } [Preserve] public class TouchEvent { /// /// 当前所有触摸点的列表 /// public Touch[] touches; /// /// 触发此次事件的触摸点列表,可以通过这个知道触发当前通知的事件的位置 /// public Touch[] changedTouches; /// /// 事件触发时的时间戳 /// public long timeStamp; } /// /// 调用云函数 https://developers.weixin.qq.com/minigame/dev/wxcloud/reference-sdk-api/functions/Cloud.callFunction.html /// public class CallFunctionParam : WXBaseActionParam { public string name; /// /// 这里请将数据json序列化为字符串再赋值到data /// public string data; public CallFunctionConf config; } public class CallFunctionConf { public string env; } /// /// 云函数初始化 https://developers.weixin.qq.com/minigame/dev/wxcloud/reference-sdk-api/init/client.init.html /// public class CallFunctionInitParam { /// /// 必填,环境ID,指定接下来调用 API 时访问哪个环境的云资源 /// public string env; /// /// 是否在将用户访问记录到用户管理中,在控制台中可见 /// public bool traceUser; } public class InnerAudioContextParam { /// /// 音频资源的地址,用于直接播放。可以设置为网络地址,或者unity中的本地路径如 Assets/xx.wav,运行时会自动和配置的音频地址前缀做拼接得到最终线上地址 /// public string src = ""; /// /// 是否循环播放,默认为 false /// public bool loop = false; /// /// 开始播放的位置(单位:s),默认为 0 /// public float startTime = 0; /// /// 是否自动开始播放,默认为 false /// public bool autoplay = false; /// /// 音量。范围 0~1。默认为 1 /// public float volume = 1; /// /// 播放速度。范围 0.5-2.0,默认为 1。 /// public float playbackRate = 1; /// /// 下载音频,设置为true后,会完全下载后再触发OnCanplay,方便后续音频复用,避免延迟 /// public bool needDownload = false; } /// /// 发起米大师支付参数,详见 https://developers.weixin.qq.com/minigame/dev/api/midas-payment/wx.requestMidasPayment.html /// public class RequestMidasPaymentParam : WXBaseActionParam { /// /// 支付的类型,不同的支付类型有各自额外要传的附加参数。 /// public string mode = ""; /// /// 环境配置 /// public int env = 0; /// /// 在米大师侧申请的应用 id /// public string offerId = ""; /// /// 币种 /// public string currencyType = ""; /// /// 申请接入时的平台,platform 与应用id有关 /// public string platform = ""; /// /// 购买数量。mode=game 时必填。购买数量。 /// public int buyQuantity = 0; /// /// 分区 ID /// public string zoneId = "1"; } /// /// 发起米大师朋友礼物索要参数,详见 https://developers.weixin.qq.com/minigame/dev/api/midas-payment/wx.requestMidasFriendPayment.html /// public class RequestMidasFriendPaymentParam : WXBaseActionParam { /// /// 支付的类型,不同的支付类型有各自额外要传的附加参数。 /// public string mode = ""; /// /// 环境配置 /// public int env = 0; /// /// 在米大师侧申请的应用 id /// public string offerId = ""; /// /// 币种 /// public string currencyType = ""; /// /// 申请接入时的平台,platform 与应用id有关 /// public string platform = ""; /// /// 购买数量。mode=game 时必填。购买数量。 /// public int buyQuantity = 0; /// /// 分区 ID /// public string zoneId = "1"; /// /// 开发者业务订单号,每个订单号只能使用一次,重复使用会失败。要求32个字符内,只能是数字、大小写字母、符号 _-|*@ /// public string outTradeNo = ""; /// /// 随机字符串,长度应小于 128 /// public string nonceStr = ""; /// /// 生成这个随机字符串的 UNIX 时间戳(精确到秒) /// public int timeStamp; /// /// 签名 /// public string signature = ""; } /// /// 网络状态变化事件的回调参数,详见 https://developers.weixin.qq.com/minigame/dev/api/device/network/wx.onNetworkStatusChange.html /// public class NetworkStatus { /// /// 当前是否有网络连接 /// public bool isConnected; /// /// 网络类型 /// public string networkType; } public class GetNetworkTypeResponse : WXBaseResponse { /// /// 网络类型 /// public string networkType; /// /// 信号强弱,单位 dbm /// public int signalStrength; } public class GetNetworkTypeParam : WXBaseActionParam { } public class SetKeepScreenOnParam : WXBaseActionParam { /// /// 是否保持屏幕常亮 /// public bool keepScreenOn; } public class WriteFileParam : WXBaseActionParam { /// /// 要写入的文件路径 (本地路径) /// public string filePath; /// /// 要写入的二进制数据 /// public byte[] data; /// /// 指定写入文件的字符编码 /// public string encoding = "utf8"; } public class WriteFileStringParam : WXBaseActionParam { /// /// 要写入的文件路径 (本地路径) /// public string filePath; /// /// 要写入的二进制数据 /// public string data; /// /// 指定写入文件的字符编码 /// public string encoding = "utf8"; } public class ReadFileParam : WXBaseActionParam { /// /// 要读取的文件的路径 (本地路径) /// public string filePath; /// /// 指定读取文件的字符编码,如果不传 encoding,则以 ArrayBuffer 格式读取文件的二进制内容 /// public string encoding; } public class WXReadFileCallback : WXTextResponse { public string data; public int byteLength; } public class CustomerServiceConversationParam : WXBaseActionParam { /// /// 会话来源 /// public string sessionFrom; /// /// 是否显示会话内消息卡片,设置此参数为 true,用户进入客服会话会在右下角显示"可能要发送的小程序"提示,用户点击后可以快速发送小程序消息 /// public bool showMessageCard; /// /// 会话内消息卡片标题 /// public string sendMessageTitle; /// /// 会话内消息卡片路径 /// public string sendMessagePath; /// /// 会话内消息卡片图片路径 /// public string sendMessageImg; } public class WXVideoCallback : WXTextResponse { /// /// 当前的播放位置,单位为秒 /// public float position; /// /// 视频的总时长,单位为秒 /// public float duration; /// /// 当前的缓冲进度,缓冲进度区间为 (0~100],100表示缓冲完成 /// public int buffered; } public class WXVideoProgress { /// /// 视频的总时长,单位为秒 /// public float duration; /// /// 当前的缓冲进度,缓冲进度区间为 (0~100],100表示缓冲完成 /// public int buffered; } public class WXVideoTimeUpdate { /// /// 当前的播放位置,单位为秒 /// public float position; /// /// 视频的总时长,单位为秒 /// public float duration; } //创建视频,详见 https://developers.weixin.qq.com/minigame/dev/api/media/video/wx.createVideo.html public class WXCreateVideoParam { /// /// 视频的左上角横坐标 /// public int x=0; /// /// 视频的左上角纵坐标 /// public int y=0; /// /// 视频的宽度 /// public int width=300; /// /// 视频的高度 /// public int height=100; /// /// 视频的资源地址 /// public string src; /// /// 视频的封面 /// public string poster; /// /// 视频的初始播放位置,单位为 s 秒 /// public int initialTime; /// /// 视频的播放速率,有效值有 0.5、0.8、1.0、1.25、1.5 /// public float playbackRate=1.0f; /// /// 视频是否为直播 /// public bool live; /// /// 视频的缩放模式 /// public string objectFit= "contain"; /// /// 视频是否显示控件 /// public bool controls = true; /// /// 是否显示视频底部进度条 /// public bool showProgress = true; /// /// 是否显示控制栏的进度条 /// public bool showProgressInControlMode = true; /// /// 视频背景颜色 /// public string backgroundColor ="#000000"; /// /// 视频是否自动播放 /// public bool autoplay; /// /// 视频是否是否循环播放 /// public bool loop; /// /// 视频是否禁音播放 /// public bool muted; /// /// 视频是否遵循系统静音开关设置(仅iOS) /// public bool obeyMuteSwitch; /// /// 是否启用手势控制播放进度 /// public bool enableProgressGesture = true; /// /// 是否开启双击播放的手势 /// public bool enablePlayGesture; /// /// 是否显示视频中央的播放按钮 /// public bool showCenterPlayBtn = true; /// /// 视频是否显示在游戏画布之下 /// public bool underGameView; } public class WXClipboardParam : WXBaseActionParam { public string data; } public class WXClipboardResponse : WXTextResponse { public string data; } public enum WXToastIcon { /// /// 显示成功图标,此时 title 文本最多显示 7 个汉字长度 /// success, /// /// 显示失败图标,此时 title 文本最多显示 7 个汉字长度 /// error, /// /// 显示加载图标,此时 title 文本最多显示 7 个汉字长度 /// loading, /// /// 不显示图标,此时 title 文本最多可显示两行 /// none } public class WXShowToastParam : WXBaseActionParam { /// /// 提示的内容 /// public string title; /// /// 图标 /// public WXToastIcon icon = WXToastIcon.success; /// /// 提示的延迟时间 /// public int duration = 1500; /// /// 是否显示透明蒙层,防止触摸穿透 /// public bool mask = false; } public class WXModalResponse : WXTextResponse { /// /// editable 为 true 时,用户输入的文本 /// public string content; /// /// 为 true 时,表示用户点击了确定按钮 /// public bool confirm; /// /// 为 true 时,表示用户点击了取消(用于 Android 系统区分点击蒙层关闭还是点击取消按钮关闭) /// public bool cancel; } public class WXShowModalParam : WXBaseActionParam { /// /// 提示的内容 /// public string title; /// /// 提示的内容 /// public string content; /// /// 是否显示取消按钮 /// public bool showCancel = true; /// /// 取消按钮的文字,最多 4 个字符 /// public string cancelText = "取消"; /// /// 取消按钮的文字颜色,必须是 16 进制格式的颜色字符串 /// public string cancelColor = "#000000"; /// /// 确认按钮的文字,最多 4 个字符 /// public string confirmText = "确定"; /// /// 确认按钮的文字颜色,必须是 16 进制格式的颜色字符串 /// public string confirmColor = "#576B95"; /// /// 是否显示输入框 /// public bool editable = false; /// /// 显示输入框时的提示文本 /// public string placeholderText; } public class WXShowLoadingParam : WXBaseActionParam { /// /// 提示的内容 /// public string title; /// /// 是否显示透明蒙层,防止触摸穿透 /// public bool mask = false; } public enum EnvVersion { /// /// 开发版 /// develop, /// /// 体验版 /// trial, /// /// 正式版 /// release } /// /// 跳转小程序参数,https://developers.weixin.qq.com/minigame/dev/api/navigate/wx.navigateToMiniProgram.html /// public class WXNavigateToMiniProgramParam : WXBaseActionParam { /// /// 必填,要打开的小程序 appId /// public string appId; /// /// 打开的页面路径,如果为空则打开首页。 /// public string path; /// /// 需要传递给目标小程序的数据 /// public object extraData; public string extraDataRaw; // 该字段不需要传值 /// /// 要打开的小程序版本,默认release /// public EnvVersion envVersion = EnvVersion.release; /// /// 小程序链接,当传递该参数后,可以不传 appId 和 path。链接可以通过【小程序菜单】->【复制链接】获取。 /// public string shortLink; } public enum GameClubButtonType { /// /// 可以设置背景色和文本的按钮 /// text, /// /// 只能设置背景贴图的按钮,背景贴图会直接拉伸到按钮的宽高 /// image } public enum GameClubButtonTextAlign { /// /// 居左 /// left, /// /// 居中 /// center, /// /// 居右 /// right, } public struct GameClubButtonStyle { public int left; public int top; public int width; public int height; public string backgroundColor; public string borderColor; public int borderWidth; public int borderRadius; public string color; public GameClubButtonTextAlign textAlign; public int fontSize; public int lineHeight; } public enum GameClubButtonIcon { green, white, dark, light, } /// /// 创建游戏圈参数,详见 https://developers.weixin.qq.com/minigame/dev/api/open-api/game-club/wx.createGameClubButton.html /// public class WXCreateGameClubButtonParam { /// /// 必填,按钮类型 /// public GameClubButtonType type; /// /// 按钮上的文本,仅当 type 为 text 时有效 /// public string text; /// /// 按钮的背景图片,仅当 type 为 image 时有效 /// public string image; /// /// 必填,按钮的样式 /// public GameClubButtonStyle style; public string styleRaw; /// /// 必填,游戏圈按钮的图标,仅当 object.type 参数为 image 时有效。 /// public GameClubButtonIcon icon; } public class WXRequestSubscribeSystemMessageResponse : WXTextResponse { /// /// 系统订阅消息类型,值为"accept"、"reject"、"ban","accept", "" 表示用户同意订阅该类型对应的模板消息,"reject"表示用户拒绝订阅该类型对应的模板消息,"ban"表示已被后台封禁, ""表示没有调用该类型请求。例如 { errMsg: "requestSubscribeSystemMessage:ok", SYS_MSG_TYPE_INTERACTIVE: "accept" } 表示用户同意订阅'SYS_MSG_TYPE_INTERACTIVE'这条消息 /// public string SYS_MSG_TYPE_INTERACTIVE; public string SYS_MSG_TYPE_RANK; } /// /// state 值包括'accept'、'reject'、'ban'、'filter'。'accept'表示用户同意订阅该条id对应的模板消息,'reject'表示用户拒绝订阅该条id对应的模板消息,'ban'表示已被后台封禁,'filter'表示该模板因为模板标题同名被后台过滤。例如 { TemplateId: "zun-LzcQyW-edafCVvzPkK4de2Rllr1fFpw2A_x0oXE", state : "accept"} 表示用户同意订阅zun-LzcQyW-edafCVvzPkK4de2Rllr1fFpw2A_x0oXE这条消息 /// public class WXSubscribeMessageItem { public string TemplateId; public string state; } public class WXRequestSubscribeMessageResponse : WXTextResponse { /// /// 跟官网返回格式不一样,以这里为准 /// public WXSubscribeMessageItem[] resItems; } public class WXRequestSubscribeSystemMessageParam : WXBaseActionParam { public string[] msgTypeList; } /// /// 清理文件缓存的结果 /// public enum ReleaseResult { /// /// 无需清理,空间足够 /// noNeedRelease = 1, /// /// 超过最大存储容量,不清理 /// exceedMax, /// /// 清理成功 /// releaseSuccess, } /// /// 启动数据 /// public class LaunchEvent { public LaunchEventType type; /// /// 当前阶段耗时 /// public int costTimeMs; /// /// 自插件启动后总运行时间 /// public int runTimeMs; /// /// 是否需要下载资源包 /// public bool needDownloadDataPackage; /// /// 首包资源是否作为小游戏代码分包下载 /// public bool loadDataPackageFromSubpackage; /// /// 当前阶段完成时是否处于前台 /// public bool isVisible; /// /// 是否开启了代码分包 /// public bool useCodeSplit; /// /// 是否iOS高性能模式 /// public bool isHighPerformance; } /// /// 启动阶段类型定义 /// public enum LaunchEventType { /// /// 插件启动 /// launchPlugin, /// /// 下载wasm代码 /// loadWasm, /// /// 编译wasm /// compileWasm, /// /// 下载首包资源 /// loadAssets, /// /// 读取首包资源 /// readAssets = 5, /// /// 引擎初始化(callmain) /// prepareGame, } }