Files
ZenEcho 3cf582e71b feat(main): 增强主进程日志与游戏扫描稳定性与性能
- 主进程新增 CrashReporter 捕获崩溃信息,提升诊断能力
- 优化 ipcMain 游戏扫描进度事件,加入节流防止 IPC 风暴
- 扫描平台分工重构,支持并发执行,添加执行日志和错误捕获
- 完善扫描结果去重逻辑,优先基于标准化安装目录合并游戏条目
- 增加未捕获异常、渲染进程退出和子进程退出日志,提升稳定性监控
- 更新日志模块,错误级日志立即同步落盘,降低闪退日志丢失风险
- 延长日志落盘监听事件,兼容多种退出信号安全清理日志
- 主进程窗口配置修改,始终保留调试工具,提高开发调试便捷性
- 优化扫描服务代码注释和参数说明,提升可维护性和易读性
2026-03-05 20:18:18 +08:00

51 lines
1.3 KiB
TypeScript

/**
* 游戏对象接口
*
* 前后端共享的统一定义,所有游戏相关的 CRUD 操作均基于此接口。
*/
export interface Game {
/** 游戏唯一 ID */
id?: string
/** 游戏名称 */
name: string
/** 图标 URL (支持 http/https/data URI) */
iconUrl?: string
/** 游戏进程名 (支持单个字符串或数组) */
processName: string | string[]
/** 主分类 ID */
category: string
/** 分类 ID 列表(支持多标签分类) */
categories?: string[]
/** 标签列表 */
tags?: string[]
/** 关联的配置文件 ID */
profileId?: string
/** 最后运行时间戳 (毫秒) */
lastPlayed?: number
/** 当前状态 */
status?: 'idle' | 'accelerating'
/** 延迟 (ms) */
latency?: number
/** 指定的节点 ID */
nodeId?: string
/** 代理模式:process (按进程) | routing (按路由规则) */
proxyMode?: 'process' | 'routing'
/** 路由规则列表 (bypass_cn, global, 或 IP CIDR) */
routingRules?: string[]
/** 是否启用链式代理(自动代理子进程) */
chainProxy?: boolean
}
/**
* 本地扫描到的游戏信息
*/
export type LocalScanGame = {
name: string
processName: string[]
source: string
installDir: string
/** 游戏图标 URL(可选) */
iconUrl?: string
}