1、在发送ETH 或 token交易时,构建好交易需要知道当前交易使用多少gas,可以通过网络接口获取。
2、接口为"eth_estimateGas",可以使用web3j 包,android项目中可以配置
implementation ('org.web3j:core:3.3.1-android'){
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'
}
后面内容是解决jar包冲突
3、之后根据自己节点地址 address ,初始化web3
Web3j web3j = Web3jFactory.build(new HttpService(address))
4、调用的接口:
public BigInteger getGasLimit(Transaction transaction) {
BigInteger gasLimit = BigInteger.ONE;
try {
System.out.print("get gas limit --- ");
Request<?, EthEstimateGas> rs = web3j.ethEstimateGas(transaction);
EthEstimateGas eGasLimit = rs.sendAsync().get();