diff --git a/packages/kit-bg/src/vaults/impls/evm/sdkEvm/ClientEvm.ts b/packages/kit-bg/src/vaults/impls/evm/sdkEvm/ClientEvm.ts index d3e3674ed3f..8b822153546 100644 --- a/packages/kit-bg/src/vaults/impls/evm/sdkEvm/ClientEvm.ts +++ b/packages/kit-bg/src/vaults/impls/evm/sdkEvm/ClientEvm.ts @@ -28,10 +28,20 @@ export class ClientEvm extends JsonRPCRequest { baseFeePerGas: string; }>('eth_getBlockByNumber', ['latest', false]); const baseFeePerGas = new BigNumber(hexBlock.baseFeePerGas); - const isEIP1559FeeEnabled = !( - baseFeePerGas.isNaN() || baseFeePerGas.isEqualTo(0) - ); // 0 also means not 1559 - return { isEIP1559FeeEnabled }; + + // 0 also means not 1559 + if (baseFeePerGas.isNaN() || baseFeePerGas.isEqualTo(0)) { + return { isEIP1559FeeEnabled: false }; + } + + let maxPriorityFeeSupported = true; + try { + await this.call('eth_maxPriorityFeePerGas'); + } catch (error) { + maxPriorityFeeSupported = false; + } + + return { isEIP1559FeeEnabled: maxPriorityFeeSupported }; } async broadcastTransaction(rawTx: string): Promise {