大家在使用 imToken 的过程中肯定碰到过转账失败的情况,今天我就来为大家详细讲解一下如何处理转账失败的问题。前方高能预警,请系好安全带 ~

转账失败大致分为两种情况:一种情况是交易未被打包导致转账失败,另外一种情况是交易在打包的过程中发生了错误导致交易失败。

交易未被打包导致转账失败

交易未被打包不会扣除矿工费,绝大多数未被打包的情况是矿工费设置的过低导致的。通过https://etherscan.io/ 查询会出现以下几种提示

1.Sorry,we are unable to locate this Transaction Hash

图片[1] - 以太坊imToken钱包转账失败的常见解决办法

截图中的提示表明,这笔交易未被打包。小编发送这笔交易时 https://ethgasstation.info 推荐的 Gas Price 为 61 Gwei。小编设置的 Gas Price 为 1 Gwei。这笔交易因为设置的 Gas Price 过低,被丢弃的概率是比较大的。

2.Pending 状态

重新发送一笔交易,将 Gas Price 设置为 40 Gwei,发送交易后查询这笔交易的详细状态

图片[2] - 以太坊imToken钱包转账失败的常见解决办法

截图中的信息表明,这笔交易已经进入了打包队列,正在排队。只要耐心等待打包成功就可以了。

钱包转账失败的常见解决办法

转账时设置合适的矿工费。在 imToken 2.0 国际版中,设置矿工费的滑动杆最大值和最小值都是从以太坊网络实时获取的,推荐的矿工费就是能够保证你这笔交易成功的最小值,所以只要按照 App 内部推荐的矿工费数值设置就可以了。

图片[3] - 以太坊imToken钱包转账失败的常见解决办法

那么问题又来了,如果我这笔交易已经发送成功但是矿工费设置的过低,我想加速交易应该如何操作呢?

在目前已经发布的版本中的解决办法是发送一笔相同的交易 ( 这里的相同指收币地址相同,代币转账数量相同 ) 并调高 Gas Price,只要后发送的这笔交易成功了,前一笔交易就会失败。

在下一个版本我们会增加 ETH 的加速功能,可以在交易发送后通过提高这笔交易的 Gas Price 的方式加速这笔交易,请大家耐心等~

打包过程中出现错误导致失败

打包过程中出现问题大概分为三种类型:

1.Reverted 错误

图片[4] - 以太坊imToken钱包转账失败的常见解决办法

2.Bad instruction 错误

图片[5] - 以太坊imToken钱包转账失败的常见解决办法

3.Out of gas 错误

图片[6] - 以太坊imToken钱包转账失败的常见解决办法

其中 Reverted 错误和 Bad instruction 错误都是智能合约的问题,所以出现这种情况联系代币的发行方询问解决办法就可以了。

提示Out of gas 错误是因为转账设置的 Gas 值低于合约默认值导致的,目前大部分智能合约的 Gas 值都是 60000,但是某些合约比较复杂,调用的时候需要更高的 Gas 值。这时重新发送一笔交易,通过高级选项设置 Gas 值高于默认 Gas 值就能够成功发送这笔交易了。