[2026-05-12T15:18:54.423434] [INFO] Log system initialized at: /var/mobile/Containers/Data/Application/6A6636E8-EE76-4EF7-AA43-0AC57F5F7533/Documents/logs [2026-05-12T15:18:54.423587] [INFO] [Print] 数据库初始化成功 [2026-05-12T15:18:54.423589] [INFO] [Print] 数据库已初始化,跳过 [2026-05-12T15:18:54.425514] [INFO] [Print] UserRepository初始化成功 [2026-05-12T15:18:54.425531] [INFO] [Print] 数据库已初始化,跳过 [2026-05-12T15:18:54.427592] [INFO] [Print] ChatRepository初始化成功 [2026-05-12T15:18:54.427606] [INFO] [Print] 数据库已初始化,跳过 [2026-05-12T15:18:54.428596] [INFO] [Print] NFCRepository初始化成功 [2026-05-12T15:18:54.428880] [INFO] [Print] 【DbMigration】userAction 已清理过,跳过 [2026-05-12T15:18:54.430483] [INFO] [Print] device_uuid: IOSviPPSsV2OGFEKVsq8rMB3LlcTAto0rXkY [2026-05-12T15:18:54.432216] [INFO] [Print] 【DEBUG】build返回_homeWidget: null [2026-05-12T15:18:54.432349] [INFO] [Print] 【DEBUG】build返回_homeWidget: HomePage [2026-05-12T15:18:54.433136] [INFO] [Print] 【ASR】使用苹果原生 Speech(iOS) [2026-05-12T15:18:54.433447] [INFO] [Print] 【视频播放】初始化视频组件,当前阶段: StartupPhase.idle [2026-05-12T15:18:54.443673] [INFO] [Print] /api/v1/point/info 查询积分: uid=180 [2026-05-12T15:18:54.443822] [INFO] [Print] 【API请求】POST https://www.sumerumeta.cn/api/v1/point/info [2026-05-12T15:18:54.443836] [INFO] [Print] 【请求头】{Accept: application/json, Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxODAiLCJpc3MiOiJ5dWFuamkiLCJpYXQiOjE3NzgwNjM2NjksImV4cCI6MTc4MDY1NTY2OX0.-pRpgh2yK5q8aZmo8FCVPejg44wl0ElbRWcePzfZByM, Content-Type: application/json} [2026-05-12T15:18:54.443837] [INFO] [Print] 【请求体】{"uid":180} [2026-05-12T15:18:54.468251] [INFO] [Print] 【WebSocket】检测到有效 uid=180,正在自动连接... [2026-05-12T15:18:54.468278] [INFO] [Print] 【WebSocket】正在连接: wss://www.sumerumeta.cn/api/v1/chatsocket/180 [2026-05-12T15:18:54.468365] [INFO] [Print] 从数据库加载消息 [2026-05-12T15:18:54.468390] [INFO] [Print] 本地有消息,直接显示 [2026-05-12T15:18:54.477189] [INFO] [Print] 【增量同步】方法被调用,开始获取用户信息... [2026-05-12T15:18:54.477200] [INFO] [Print] 【增量同步】uid=180, 游标 lastServerId=3395, 本地消息数=20 [2026-05-12T15:18:54.477215] [INFO] [Print] 【API请求】GET https://www.sumerumeta.cn/api/v1/chat/sync?uid=180&lastServerId=3395 [2026-05-12T15:18:54.477218] [INFO] [Print] 【请求头】{Accept: application/json, Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxODAiLCJpc3MiOiJ5dWFuamkiLCJpYXQiOjE3NzgwNjM2NjksImV4cCI6MTc4MDY1NTY2OX0.-pRpgh2yK5q8aZmo8FCVPejg44wl0ElbRWcePzfZByM} [2026-05-12T15:18:54.495202] [INFO] [Print] 【视频播放】视频初始化完成 [2026-05-12T15:18:54.495209] [INFO] [Print] 【视频播放】初始化完成但组件已卸载,跳过 [2026-05-12T15:18:54.541316] [INFO] [Print] 【NativeASR】初始化: true [2026-05-12T15:18:54.588204] [INFO] [Print] 【生命周期】应用进入前台 (resumed) [2026-05-12T15:18:54.588209] [INFO] [Print] 【WebSocket】应用回到前台 [2026-05-12T15:18:54.588212] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.resumed, 当前页面状态: HomePageState.chatting [2026-05-12T15:18:54.588213] [INFO] [Print] 【增量同步】应用回到前台,触发同步 [2026-05-12T15:18:55.840467] [INFO] [Print] 【WebSocket】连接成功: 180 [2026-05-12T15:18:55.840503] [INFO] [Print] 【WebSocket】开始进行 auth 鉴权... [2026-05-12T15:18:55.840547] [INFO] [Print] 【WebSocket 发送】{"msgId":"c_1778570335840","type":"auth","payload":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxODAiLCJpc3MiOiJ5dWFuamkiLCJpYXQiOjE3NzgwNjM2NjksImV4cCI6MTc4MDY1NTY2OX0.-pRpgh2yK5q8aZmo8FCVPejg44wl0ElbRWcePzfZByM"}} [2026-05-12T15:18:55.841583] [INFO] [Print] 【WebSocket 接收】{"type":"open"} [2026-05-12T15:18:55.841609] [INFO] [Print] 【主动推送】收到空 msgId 的非业务包或异常包,舍弃。 [2026-05-12T15:18:55.994753] [INFO] [Print] /api/v1/system/checkUpdate 检查更新: version=1.0.6, platform=ios [2026-05-12T15:18:55.994900] [INFO] [Print] 【API请求】POST https://www.sumerumeta.cn/api/v1/system/checkUpdate [2026-05-12T15:18:55.994915] [INFO] [Print] 【请求头】{Accept: application/json, Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxODAiLCJpc3MiOiJ5dWFuamkiLCJpYXQiOjE3NzgwNjM2NjksImV4cCI6MTc4MDY1NTY2OX0.-pRpgh2yK5q8aZmo8FCVPejg44wl0ElbRWcePzfZByM, Content-Type: application/json} [2026-05-12T15:18:55.994922] [INFO] [Print] 【请求体】{"version":"1.0.6","platform":"ios"} [2026-05-12T15:18:56.228245] [INFO] [Print] 【API响应】状态码: 200 [2026-05-12T15:18:56.228271] [INFO] [Print] 【响应体】{"code":200,"msg":null,"data":{"rechargePoint":15580,"presentPoint":4054,"limitPoint":0,"monthCardPoint":0}} [2026-05-12T15:18:56.228953] [INFO] [Print] 保存用户信息成功: [2026-05-12T15:18:56.228965] [INFO] [Print] - deviceUuid: IOSviPPSsV2OGFEKVsq8rMB3LlcTAto0rXkY [2026-05-12T15:18:56.228973] [INFO] [Print] - id: 180 [2026-05-12T15:18:56.228980] [INFO] [Print] - nick: 熠辰 [2026-05-12T15:18:56.228995] [INFO] [Print] - gender: 2 (female) [2026-05-12T15:18:56.229007] [INFO] [Print] - birthTime: 2013-01-01 00:00:00.000 [2026-05-12T15:18:56.229015] [INFO] [Print] - points: 19634 [2026-05-12T15:18:56.229025] [INFO] [Print] - updatedAt: 2026-05-12 15:18:56.228395 [2026-05-12T15:18:57.096013] [INFO] [Print] 【WebSocket 接收】{"msgId":"c_1778570335840","type":"auth_reply","payload":{"type":0,"code":200,"message":"ok"}} [2026-05-12T15:18:57.096060] [INFO] [Print] 【WebSocket】连接及鉴权成功: 180 [2026-05-12T15:18:57.299336] [INFO] [Print] 【API响应】状态码: 200 [2026-05-12T15:18:57.299346] [INFO] [Print] 【响应体】{"code":200,"msg":null,"data":{"hasUpdate":false,"newVersion":"1.0.0","forceUpdate":false}} [2026-05-12T15:18:59.237676] [INFO] [Print] 【API响应】状态码: 200 [2026-05-12T15:18:59.237705] [INFO] [Print] 【响应体】{"code":200,"msg":null,"data":[]} [2026-05-12T15:18:59.237846] [INFO] [Print] 【增量同步】无遗漏消息 [2026-05-12T15:19:27.098314] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570367098","type":"ping","payload":{}} [2026-05-12T15:19:27.708012] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570367098","type":"ping","payload":{}} [2026-05-12T15:19:57.098060] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570397097","type":"ping","payload":{}} [2026-05-12T15:19:57.707877] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570397097","type":"ping","payload":{}} [2026-05-12T15:20:27.097926] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570427097","type":"ping","payload":{}} [2026-05-12T15:20:27.710860] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570427097","type":"ping","payload":{}} [2026-05-12T15:20:57.097266] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570457097","type":"ping","payload":{}} [2026-05-12T15:20:58.123780] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570457097","type":"ping","payload":{}} [2026-05-12T15:21:27.097466] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570487097","type":"ping","payload":{}} [2026-05-12T15:21:27.717947] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570487097","type":"ping","payload":{}} [2026-05-12T15:21:57.097341] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570517097","type":"ping","payload":{}} [2026-05-12T15:21:57.541227] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570517097","type":"ping","payload":{}} [2026-05-12T15:22:27.096588] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570547096","type":"ping","payload":{}} [2026-05-12T15:22:27.724708] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570547096","type":"ping","payload":{}} [2026-05-12T15:22:57.097083] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570577097","type":"ping","payload":{}} [2026-05-12T15:22:58.137490] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570577097","type":"ping","payload":{}} [2026-05-12T15:23:27.096141] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570607096","type":"ping","payload":{}} [2026-05-12T15:23:27.731256] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570607096","type":"ping","payload":{}} [2026-05-12T15:23:57.096520] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570637096","type":"ping","payload":{}} [2026-05-12T15:23:57.734174] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570637096","type":"ping","payload":{}} [2026-05-12T15:24:27.095585] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570667095","type":"ping","payload":{}} [2026-05-12T15:24:27.739086] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570667095","type":"ping","payload":{}} [2026-05-12T15:24:57.095407] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570697095","type":"ping","payload":{}} [2026-05-12T15:24:58.559824] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570697095","type":"ping","payload":{}} [2026-05-12T15:25:27.094920] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570727094","type":"ping","payload":{}} [2026-05-12T15:25:27.743942] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570727094","type":"ping","payload":{}} [2026-05-12T15:25:57.095270] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570757095","type":"ping","payload":{}} [2026-05-12T15:25:57.747609] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570757095","type":"ping","payload":{}} [2026-05-12T15:26:27.094685] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570787094","type":"ping","payload":{}} [2026-05-12T15:26:28.484152] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570787094","type":"ping","payload":{}} [2026-05-12T15:26:57.094605] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570817094","type":"ping","payload":{}} [2026-05-12T15:26:57.754136] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570817094","type":"ping","payload":{}} [2026-05-12T15:27:27.094555] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570847094","type":"ping","payload":{}} [2026-05-12T15:27:27.758891] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570847094","type":"ping","payload":{}} [2026-05-12T15:27:44.354685] [INFO] [Print] 【生命周期】应用变为非活动状态 (inactive) [2026-05-12T15:27:44.354824] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.inactive, 当前页面状态: HomePageState.chatting [2026-05-12T15:27:47.125666] [INFO] [Print] 【生命周期】应用进入前台 (resumed) [2026-05-12T15:27:47.125684] [INFO] [Print] 【WebSocket】应用回到前台 [2026-05-12T15:27:47.125687] [INFO] [Print] 【WebSocket】连接正常,通知上层触发增量同步 [2026-05-12T15:27:47.125696] [INFO] [Print] 【增量同步】WebSocket 重连/前台回调触发同步 [2026-05-12T15:27:47.125698] [INFO] [Print] 【增量同步】方法被调用,开始获取用户信息... [2026-05-12T15:27:47.125716] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.resumed, 当前页面状态: HomePageState.chatting [2026-05-12T15:27:47.125719] [INFO] [Print] 【增量同步】应用回到前台,触发同步 [2026-05-12T15:27:47.125846] [INFO] [Print] 【增量同步】uid=180, 游标 lastServerId=3395, 本地消息数=20 [2026-05-12T15:27:47.125947] [INFO] [Print] 【API请求】GET https://www.sumerumeta.cn/api/v1/chat/sync?uid=180&lastServerId=3395 [2026-05-12T15:27:47.125973] [INFO] [Print] 【请求头】{Accept: application/json, Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxODAiLCJpc3MiOiJ5dWFuamkiLCJpYXQiOjE3NzgwNjM2NjksImV4cCI6MTc4MDY1NTY2OX0.-pRpgh2yK5q8aZmo8FCVPejg44wl0ElbRWcePzfZByM} [2026-05-12T15:27:47.538370] [INFO] [Print] 【生命周期】应用变为非活动状态 (inactive) [2026-05-12T15:27:47.538399] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.inactive, 当前页面状态: HomePageState.chatting [2026-05-12T15:27:48.529033] [INFO] [Print] 【API响应】状态码: 200 [2026-05-12T15:27:48.529061] [INFO] [Print] 【响应体】{"code":200,"msg":null,"data":[]} [2026-05-12T15:27:48.529110] [INFO] [Print] 【增量同步】无遗漏消息 [2026-05-12T15:27:57.093842] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570877093","type":"ping","payload":{}} [2026-05-12T15:27:57.660431] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570877093","type":"ping","payload":{}} [2026-05-12T15:28:27.094484] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778570907094","type":"ping","payload":{}} [2026-05-12T15:28:27.661496] [INFO] [Print] 【WebSocket 接收】{"msgId":"ping_1778570907094","type":"ping","payload":{}} [2026-05-12T15:28:44.648117] [INFO] [Print] 【生命周期】应用被隐藏 (hidden) [2026-05-12T15:28:44.648130] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.hidden, 当前页面状态: HomePageState.chatting [2026-05-12T15:28:44.648133] [INFO] [Print] 【生命周期】应用进入后台 (paused) [2026-05-12T15:28:44.648141] [INFO] [Print] 【WebSocket】应用进入后台,启动 5 分钟保活倒计时 [2026-05-12T15:28:44.648147] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.paused, 当前页面状态: HomePageState.chatting [2026-05-12T15:30:26.275661] [INFO] [Print] 【WebSocket 发送】{"msgId":"ping_1778571026275","type":"ping","payload":{}} [2026-05-12T15:30:26.277177] [INFO] [Print] 【WebSocket 健康检测】118 秒未收到下行包,判定为假连接,主动断开 [2026-05-12T15:30:26.277312] [INFO] [Print] 【WebSocket】应用正处于后台状态,遇意外断网,阻断其重连死循环调度以节省电量保护 [2026-05-12T15:30:27.025955] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.hidden, 当前页面状态: HomePageState.chatting [2026-05-12T15:30:27.025974] [INFO] [Print] 【生命周期】应用被显示 (show) [2026-05-12T15:30:27.025978] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.inactive, 当前页面状态: HomePageState.chatting [2026-05-12T15:30:27.619669] [INFO] [Print] 【生命周期】应用进入前台 (resumed) [2026-05-12T15:30:27.619696] [INFO] [Print] 【WebSocket】应用回到前台 [2026-05-12T15:30:27.619701] [INFO] [Print] 【WebSocket】检测到连接已断开(非后台超时),立即重连... [2026-05-12T15:30:27.619710] [INFO] [Print] 【WebSocket】正在连接: wss://www.sumerumeta.cn/api/v1/chatsocket/180 [2026-05-12T15:30:27.620033] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.resumed, 当前页面状态: HomePageState.chatting [2026-05-12T15:30:27.620041] [INFO] [Print] 【增量同步】应用回到前台,触发同步 [2026-05-12T15:30:27.620045] [INFO] [Print] 【增量同步】方法被调用,开始获取用户信息... [2026-05-12T15:30:27.620312] [INFO] [Print] 【增量同步】uid=180, 游标 lastServerId=3395, 本地消息数=20 [2026-05-12T15:30:27.620363] [INFO] [Print] 【API请求】GET https://www.sumerumeta.cn/api/v1/chat/sync?uid=180&lastServerId=3395 [2026-05-12T15:30:27.620371] [INFO] [Print] 【请求头】{Accept: application/json, Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxODAiLCJpc3MiOiJ5dWFuamkiLCJpYXQiOjE3NzgwNjM2NjksImV4cCI6MTc4MDY1NTY2OX0.-pRpgh2yK5q8aZmo8FCVPejg44wl0ElbRWcePzfZByM} [2026-05-12T15:30:28.306517] [INFO] [Print] 【生命周期】应用变为非活动状态 (inactive) [2026-05-12T15:30:28.306544] [INFO] [Print] 【生命周期-HomePage】状态变化: AppLifecycleState.inactive, 当前页面状态: HomePageState.chatting [2026-05-12T15:30:29.012758] [INFO] [Print] 【WebSocket】连接成功: 180 [2026-05-12T15:30:29.012771] [INFO] [Print] 【WebSocket】开始进行 auth 鉴权... [2026-05-12T15:30:29.013281] [INFO] [Print] 【WebSocket 发送】{"msgId":"c_1778571029013","type":"auth","payload":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxODAiLCJpc3MiOiJ5dWFuamkiLCJpYXQiOjE3NzgwNjM2NjksImV4cCI6MTc4MDY1NTY2OX0.-pRpgh2yK5q8aZmo8FCVPejg44wl0ElbRWcePzfZByM"}} [2026-05-12T15:30:29.014496] [INFO] [Print] 【WebSocket 接收】{"type":"open"} [2026-05-12T15:30:29.014510] [INFO] [Print] 【主动推送】收到空 msgId 的非业务包或异常包,舍弃。 [2026-05-12T15:30:29.354438] [INFO] [Print] 【WebSocket 接收】{"msgId":"c_1778571029013","type":"auth_reply","payload":{"type":0,"code":200,"message":"ok"}} [2026-05-12T15:30:29.354530] [INFO] [Print] 【WebSocket】连接及鉴权成功: 180 [2026-05-12T15:30:29.354537] [INFO] [Print] 【WebSocket】重连成功,触发上层增量同步回调 [2026-05-12T15:30:29.354542] [INFO] [Print] 【增量同步】WebSocket 重连/前台回调触发同步