iOS调用智能合约
发布于 4 个月前 作者 steve8881 30298 次浏览 来自 新手入门

有没有前辈研究过 https://github.com/TrustWallet/trust-wallet-ios 这个swift的APP,小弟初学区块链,不知道这个trust是怎么调用智能合约的,烦请路过大神指点一二,万分感谢!!!

1 回复

其实调用合约本质上使用的都是data字段,每条交易都有to、data字段,调用智能合约时,交易的to字段为合约地址,data字段为编码后调用方法及参数的字节码,其中前8位为methodid, 如果是web3j话,可以使用类似于下面的代码生成你所需调用的data字段,在手机上填写该字段就可以了,发送交易即为调用智能合约。不同的方法的function中的参数,名称是不一样的,你可以通过合约的abi来查询相关的接口调用方法。

Function function = new Function(
                "transfer",
                Arrays.<Type>asList(new org.web3j.abi.datatypes.Address(_to),
                        new org.web3j.abi.datatypes.generated.Uint256(_value)),
                Collections.<TypeReference<?>>emptyList());
String encodedFunction = FunctionEncoder.encode(function);
回到顶部