---
title: 发生了MATCHMAKE_UNHANDLED错误
slug: world-sdk-guide-ch/matchmakeunhandled
docTags: 
createdAt: 2024-09-02T08:34:13.136Z
---

如果在二维码测试期间发生 MATCHMAKE\_UNHANDLED 错误，请尝试以下方法解决。

::Image[]{src="https://api.archbee.com/api/optimize/fCt3n1oCa8rgNJ8fw9I2N-VONRI8py0RPyx8RTN4sHa-20240904-102412.png" size="76" width="542" height="328" position="center" showCaption="false"}



## 请检查 Multiplay 服务器脚本 (index.ts)。

- 当客户端在连接到 Multiplay 服务器后未能顺利接收 Multiplay 房间状态数据时，可能会发生此错误代码。
- 请参考下面的教程，并检查服务器脚本 (index.ts) 中的 onCreate/onJoin 部分的代码。

:::hint{type="info"}
**📘&#x20;**&#x8BF7;参考以下指南。[ZEPETO Multiplay 教程](docId\:sPK-TARdrDZ3tD3r6GnAe)&#x20;
:::



## 请将 ZEPETO WORLD SDK 版本更新到最新版本。

- 请参阅下面的指南，以检查 ZEPETO WORLD SDK 版本是否为最新版本，然后更新到最新版本。

:::hint{type="info"}
**📘&#x20;**&#x8BF7;参阅以下指南。[更新包](docId\:BtjLzBHM63ZmYimiQnx8H)&#x20;
:::



## 请检查 Zepeto World Multiplay 组件。

- 如果 Zepeto World Multiplay 组件在不同场景中存在，则可能会发生此错误。
- 将 Zepeto World Multiplay 组件添加到仅一个场景中，并按照下面的示例代码将其实现为单例。

```typescript
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { GameObject } from 'UnityEngine';
 
export default class MultiplayComponent extends ZepetoScriptBehaviour {
 
    private static _instance: MultiplayComponent = null;
    public static get instance(): MultiplayComponent {
 
        // 如果尚未创建实例，请执行以下逻辑。
        if (this._instance === null) {
 
            // 在场景中搜索 MultiplayComponent 类型的实例。
            this._instance = GameObject.FindObjectOfType<MultiplayComponent>();
 
            // 如果在场景中未找到 MultiplayComponent 实例，请执行以下逻辑。
            if (this._instance === null) {
                this._instance = new GameObject(MultiplayComponent.name).AddComponent<MultiplayComponent>();
            }
        }
        return this._instance;
    }
 
    private Awake() {
        // 如果另一个实例已经存在且当前实例不同，则执行以下逻辑。
        if (MultiplayComponent._instance !== null && MultiplayComponent._instance !== this) {
 
            // 销毁当前 GameObject（与当前实例）以防止重复实例创建。
            GameObject.Destroy(this.gameObject);
 
        // 如果不存在其他实例或当前实例相同，则执行以下逻辑。
        } else {
            MultiplayComponent._instance = this;
            GameObject.DontDestroyOnLoad(this.gameObject);
        }
    }
}
```

