惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 威少小二orz

团结引擎抖音小游戏一定要手动填缓存资源域名 团结引擎+Addressable+Instant Game打包抖音小游戏 - 威少小二orz 团结引擎发布抖音小游戏(十万个坑已踩完) 团结引擎发布小游戏区分不同平台 Unity发布京东小游戏 LayerMask的使用规范 Unity RectTransform中使用stretch模式时代码动态控制Left、Top、Right、Bottom Unity使用https请求握手失败的处理方案 【MAUI开发】一、初识MAUI Android中使用GSON解析JSON数据 游戏软著渠道的用户协议和隐私协议方案(启动显示方案) C#文件夹复制 C#在Json序列化中动态忽略某些属性或字段 安卓多个Activity大退时自动重启的问题处理 C#中接收到的Json数据中key为数字的问题处理 对于UniWebView这种组件违规获取信息的处理 TapTap实名认证-Android Unity使用Get和Post传递json数据并转换成class对象 Unity获取手机本地应用以及调起apk安装、启动app、安装完成回调 Unity接入穿山甲GroMore广告——重构偏2(Banner广告)
团结引擎发布小游戏与js版本SDK的互相调用
威少小二orz · 2026-03-25 · via 博客园 - 威少小二orz

适应于团结引擎版本发布的全部小游戏,包括但不限于如下:

微信小游戏、bilibili小京戏、京东小游戏、抖音小游戏、支付宝小游戏、快手小游戏等、宿主小游戏。

团结引擎版本:1.6.2

一、Unity调用Js代码:

1、WX-WASM-SDK-V2目录下的Editor/template/minigame目录下创建一个GameRecommend.js文件。

不同的小游戏可能WX-WASM-SDK-V2这个目录不一样,比如宿主小游戏好像是TJ-WASM,

但是子目录都是template/minigame,如果不存在,就创建。

image

2、GameRecommend.js里的代码如下:

代码说明:这里是js代码,不是C#代码。

没有funtion的代码会在启动时直接执行。funtion方法可以在Unity中调用。

// 让 window.GameRecommend 变成对象
window.GameRecommend = window.GameRecommend || {};
// 把方法挂上去
window.GameRecommend.doLogin = doLogin;
// 同时兼容挂载到 GameGlobal(你原有逻辑)
if (typeof GameGlobal !== "undefined")
{
    GameGlobal.doLogin = doLogin;
}

function sendMsgToUnity(msg) {
    // 兼容 Unity 实例的不同挂载方式(微信小游戏 Unity 适配的两种常见形式)
    const unityInst = window.unityInstance || GameGlobal.manager?.gameInstance;
    if (unityInst) {
        unityInst.Module.SendMessage("GameGlobal", "OnLoginSuccess", msg);
    } else {
        console.error("Unity 实例未加载完成,500ms后重试");
        setTimeout(() => sendMsgToUnity(msg), 500);
    }
}

async function doLogin() {
    try {
        console.error("向Unity发送消息:", "现在开始");
        sendMsgToUnity("测试Unity接收")
        console.error("向Unity发送消息:", "发送结束");
    } catch (err) {
        console.error("失败:", err);
    }
}

3、在game.js中导入这个GameRecommend.js。

image

image

 4、在C#代码中调用:

WX.CallJSFunction("GameRecommend", "doLogin", new object[0]);

这里是C#代码,调用GameRecommend.js中没有参数的doLogin方法,第3个参数需要new object[0]。

不要再使用webgl中传统的Application.ExternalCall()方式来调用。

 运行之后,在GamRecommend.js的doLogin方法中可以打印内容。

二、在js中调用Unity中的C#代码。

1、unity层面和传统的方式一样,首先设置一个gameobject,名字取为GameGlobal,

随便给个脚本,里面有一个public的非全局方法,带一个参数,和传统的接收一样。

image

 2、js中的调用:

image

 区别于传统的webGL,传统webgl一般是window.unityInstance可以直接用,但在小游戏里需要再点一个module出来。

再启动测试。