diff --git a/src/core/packet/client/nativeClient.ts b/src/core/packet/client/nativeClient.ts index 5838f4f8..cf2a6c43 100644 --- a/src/core/packet/client/nativeClient.ts +++ b/src/core/packet/client/nativeClient.ts @@ -51,7 +51,7 @@ export class NativePacketClient extends PacketClient { //此时为recv 调用callback const trace_id = this.sendEvent.get(seq); const callback = this.cb.get(trace_id + 'recv'); - console.log('callback:', callback, trace_id); + // console.log('callback:', callback, trace_id); callback?.({ seq, cmd, hex_data }); } diff --git a/src/core/packet/session.ts b/src/core/packet/session.ts index 61331a4c..7e05d141 100644 --- a/src/core/packet/session.ts +++ b/src/core/packet/session.ts @@ -17,7 +17,7 @@ const clientPriority: clientPriority = { export class PacketSession { readonly logger: LogWrapper; - readonly client: PacketClient; + readonly client: PacketClient ; readonly packer: PacketPacker; readonly highwaySession: PacketHighwaySession; @@ -30,19 +30,28 @@ export class PacketSession { private newClient(core: NapCatCore): PacketClient { const prefer = core.configLoader.configData.packetBackend; + let client: PacketClient | null; switch (prefer) { case "native": this.logger.log("[Core] [Packet] 使用指定的 NativePacketClient 作为后端"); - return new NativePacketClient(core); + client = new NativePacketClient(core); + break; case "frida": this.logger.log("[Core] [Packet] 使用指定的 FridaPacketClient 作为后端"); - return new wsPacketClient(core); + client = new wsPacketClient(core); + break; case "auto": case undefined: - return this.judgeClient(core); + client = this.judgeClient(core); + break; default: - throw new Error(`[Core] [Packet] 未知的Packet后端类型 ${prefer},请检查配置文件!`); + this.logger.logError(`[Core] [Packet] 未知的Packet后端类型 ${prefer},请检查配置文件!`); + client = null; } + if (!(client && client.check(core))) { + throw new Error("[Core] [Packet] 无可用的后端,NapCat.Packet将不会加载!"); + } + return client; } private judgeClient(core: NapCatCore): PacketClient {