Спасибо за вашу помощь.
Что касается обработки передачи ETH, я выполнял обработку передачи ETH со следующими источниками,
В журнале отображается:
В моем кошельке "0,0001" "в нем, поэтому не похоже, что мой баланс недостаточен. Почему я получаю следующую ошибку? Мы были бы признательны, если бы вы одолжили нам свою мудрость.
【журнал】
~~~エラー~~~
nodeError(desc: "insufficient funds for gas * price + value")
【звоните】
sendEth(keyData: [キーデータ], address: [自分のWalletアドレス], pass: [Walletのパスワード], toAddress: [送信先のWalletアドレス], sendEthPrice: "0.00001", gasEthPrice: "0.000084")
【источник】
func sendEth(keyData: String, address: String, pass: String, toAddress: String, sendEthPrice: String, gasEthPrice: String) {
print(sendEthPrice)
print(gasEthPrice)
guard
let keystoreSetting = EthereumKeystoreV3(keyData),
let walletAddress = EthereumAddress(address),
let toAddress = EthereumAddress(toAddress),
let gas = Web3.Utils.parseToBigUInt(gasEthPrice, units: .eth)
else {
print("~~~エラー1~~~")
return
}
let web3 = Web3.InfuraMainnetWeb3()
web3.addKeystoreManager(KeystoreManager([keystoreSetting]))
let contract = web3.contract(Web3.Utils.coldWalletABI, at: toAddress, abiVersion: 2)!
let amount = Web3.Utils.parseToBigUInt(sendEthPrice, units: .eth)
var options = TransactionOptions.defaultOptions
options.value = amount
options.from = walletAddress
options.gasPrice = .manual(gas)
let transaction = contract.write(
"fallback",
parameters: [AnyObject](),
extraData: Data(),
transactionOptions: options)!
do{
let result = try transaction.send(password: pass)
print("成功")
print(result)
} catch let e {
print("~~~エラー~~~")
print(e)
return
}
}