Skip to content

Commit 6c23063

Browse files
committed
Update CustomSDK.md
1 parent c6e2e7f commit 6c23063

File tree

1 file changed

+24
-7
lines changed

1 file changed

+24
-7
lines changed

Design/CustomSDK.md

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,20 @@
11
# 自定义SDK调用
2-
微信SDK提供了`WX.CallJSFunction``WX.CallJSFunctionWithReturn`接口实现了简单的第三方SDK调用,支持可序列化为JSON的**任意数量的参数****返回值**
2+
微信SDK提供了`WX.CallJSFunction``WX.CallJSFunctionWithReturn`接口实现了简单的第三方SDK调用,支持可序列化为JSON的**任意数量的参数****返回值**
33

4-
其中,JS侧的实际调用逻辑为`GameGlobal.sdkName.functionName(args)`所以在调用之前需要保证**SDK位于`GameGlobal`****SDK中含有该名称的函数**
4+
其中,JS侧的实际调用逻辑为`GameGlobal.sdkName.functionName(args)`所以在调用之前需要保证SDK位于`GameGlobal`下且SDK中含有该名称的function
55

6-
`WX.CallJSFunctionWithReturn`中,会将函数返回值转换为JSON后传回,若无返回值则传回`""`
6+
`WX.CallJSFunctionWithReturn`中,会将函数返回值转换为JSON后传回,若无返回值则传回`""`
77

8-
如需更加复杂的调用,可参考[WebGL:与浏览器脚本交互](https://docs.unity3d.com/cn/2018.4/Manual/webgl-interactingwithbrowserscripting.html)进行自定义定制。
8+
如需更加复杂的调用,可参考[WebGL:与浏览器脚本交互](https://docs.unity3d.com/cn/2018.4/Manual/webgl-interactingwithbrowserscripting.html)进行自定义定制。
99

1010
## 版本要求
1111
`转换插件 >= 202406062127`
1212

1313
## 代码示例
1414

15-
- CS侧调用(`"sdk"``"testFunction"``TestFunctionOption`仅作为演示,请依实际情况更改)
15+
### CS调用JS
16+
17+
​ 示例中的"sdk"、"testFunction"、TestFunctionOption仅作为演示,实际使用中请自行更改。
1618

1719
```csharp
1820
WeChatWASM.WX.CallJSFunction("sdk", "testFunction", new TestFunctionOption
@@ -35,9 +37,24 @@ WeChatWASM.WX.CallJSFunction("sdk", "testFunction", new TestFunctionOption
3537
});
3638
```
3739

38-
- JS侧挂载SDK(`"sdk"``sdk`仅作为演示,请依实际情况更改)
39-
可配合[构建模版能力](https://wechat-miniprogram.github.io/minigame-unity-webgl-transform/Design/BuildTemplate.html)使用。
40+
另外,在js侧代码中合适位置添加以下代码,可配合[构建模版能力](https://wechat-miniprogram.github.io/minigame-unity-webgl-transform/Design/BuildTemplate.html)使用。
4041

4142
```js
4243
GameGlobal["sdk"] = sdk;
4344
```
45+
46+
### JS调用CS
47+
48+
```js
49+
// 其中,objectName 是场景中的对象名称;methodName 是当前附加到该对象的脚本中的方法名称;value 可以是字符串、数字,也可为空。
50+
GameGlobal.Module.SendMessage(objectName, methodName, value)
51+
```
52+
53+
objectName对象下的脚本中的methodName方法:
54+
55+
```csharp
56+
public void methodName(string value)
57+
{
58+
// 函数内容
59+
}
60+
```

0 commit comments

Comments
 (0)