From 241722e1af1cae5771852b047013cd649457a6b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E6=96=B9=E6=88=90?= Date: Sat, 3 Jan 2026 22:34:01 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BD=BF=20Nakama=20custom=20ID=20?= =?UTF-8?q?=E6=8C=81=E4=B9=85=E5=8C=96=E4=BB=A5=E7=A1=AE=E4=BF=9D=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E8=BA=AB=E4=BB=BD=E4=B8=80=E8=87=B4=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/nakamaManager.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/utils/nakamaManager.js b/utils/nakamaManager.js index fbc2895..8beac15 100644 --- a/utils/nakamaManager.js +++ b/utils/nakamaManager.js @@ -77,9 +77,13 @@ class NakamaManager { async authenticateWithGameToken(gameToken) { this.gameToken = gameToken; - // 生成唯一的 custom ID - const customId = `game_${Date.now()}_${Math.random().toString(36).substring(7)}`; - console.log('[Nakama] Authenticating with Custom ID:', customId); + // 获取或生成持久化的 custom ID + let customId = uni.getStorageSync('nakama_custom_id'); + if (!customId) { + customId = `game_${Date.now()}_${Math.random().toString(36).substring(7)}`; + uni.setStorageSync('nakama_custom_id', customId); + } + console.log('[Nakama] Authenticating with Persistent ID:', customId); // HTTP 认证请求 const scheme = this.useSSL ? 'https://' : 'http://';