Version: 6000.3
语言: 中文
Unity Web 版本中的 JavaScript 接口
Emscripten 的 Web 原生插件

替换已弃用的浏览器交互代码

与 Web 浏览器脚本交互相关的一些代码已被弃用,并已被替代代码取代。

如果您的代码包含任何已弃用的代码,则需要使用替换代码更新代码,以防止出现意外行为或损坏的代码。

已弃用的代码快速参考

以下代码已弃用,您需要将其替换为替换代码。

已弃用的代码 替换代码
dynCall() makeDynCall()
Pointer_stringify() UTF8ToString()
统一。实例() CreateUnityInstance()
游戏实例 unityInstance

将 dynCall 更改为 makeDynCall

dynCall函数已弃用。如果您有任何使用dynCall,将其替换为makeDynCall.无论您有WebAssembly.Table是否启用。

例如,更改:

dynCall('vii', callback, [1, 2])

自:

{{{ makeDynCall('vii', 'callback') }}}(1, 2)

调用没有参数的函数

迁移dynCall没有参数的,则必须在makeDynCall模板来调用函数。

例如,更改:'

dynCall('v', callback, []);

自:

{{{ makeDynCall('v', 'callback') }}}()

将 Pointer_stringify() 更改为 UTF8ToString

Pointer_stringify()函数已弃用。如果代码包含对Pointer_stringify(),将调用替换为UTF8ToString().

例如,更改:

var stringMessage = Pointer_stringify(message);

自:

var stringMessage = UTF8ToString(message);

改变团结。实例到 CreateUnityInstance

unity.Instance已弃用。如果您的代码使用unity.InstanceCreateUnityInstance相反。

例如,更改:

var MyGameInstance = null;
  script.onload = () => {
    unity.Instance(canvas, config, (progress) => { /*...*/ }).then((unityInstance) => {

自:

var MyGameInstance = null;
  script.onload = () => {
    createUnityInstance(canvas, config, (progress) => { /*...*/ }).then((unityInstance) => {

将 gameInstance 更改为 unityInstance

gameInstance属性已弃用。如果您的代码使用gameInstanceunityInstance相反。

例如,更改:

MyGameInstance = gameInstance;

自:

MyGameInstance = unityInstance;

其他资源

Unity Web 版本中的 JavaScript 接口
Emscripten 的 Web 原生插件