iOS应用程序如何调用以太坊智能合约

本文详述如何在iOS应用中调用以太坊智能合约,使用Xcode、ContractCodegen和EtherKit,通过MVVM项目结构创建密钥、生成Swift代码,并实现与智能合约的交互。教程涵盖了安装工具、生成代码、创建密钥和实际调用合约的步骤。
摘要由CSDN通过智能技术生成

以太坊智能合约有各种各样的用例,但到目前为止,从你的iOS应用程序中调用它们非常困难。不过如果使用以太坊iOS开发套件EtherKit,这种情况会改善很多,你可以立即开始使用。在本教程结束时,你将能够调用其ABI(应用程序二进制接口)中定义的任何公共合约函数。

对于这个项目,我们将使用Xcode 10.0和ContractCodegen 0.1。我们还建议使用iOS MVVM项目模板,但为了使本教程简单,我们将使用正常的iOS项目结构。

首先,我们将创建一个新的iOS项目,并将其称为EthereumContracts。在这里下载我们的示例合约abi.json文件。下载成功后,将文件拖到Xcode项目中。你的Xcode项目现在应该如下所示:

安装ContractCodegen

在本教程的下一部分中,我们将从我们的以太坊iOS开发工具包下载ContractCodegen。为此,我将使用Cocoapods,它将自动下载必要的依赖项,但还有其他方法可用,在以太坊iOS开发套件Github中有描述。

在项目根目录中创建Podfile并插入以下代码:

platform :ios, '10.3'
project 'EthereumContracts'

inhibit_all_warnings!
use_frameworks!

target 'EthereumContracts' do
   pod 'ContractCodegen', '~> x.y.z'
end

打开终端并粘贴此命令:

pod install 

当此命令完成时,关闭我们的EthereumContracts项目并在Finder中打开EthereumContracts.xcworkspace

很好!现在让我们生成Swift代码以与我们的智能合约进行交互。

生成Swift代码

首先,确保你在项目根目录中。如果你已经在了,我们可以非常简单地生成我们的Swift代码,只需使用以下命令:

Pods/ContractCodegen/ContractCodegen/bin/contractgen HelloContract EthereumContracts/abi.json -x EthereumContracts.xcodeproj -o EthereumContracts/GeneraredContracts

当命令询问你使用哪个选项时,非常简单,只使用一个,即第一个选项。

瞧,如果你收到“Code generation: ok”的消息,你已经为以太坊智能合约创建了第一个Swift代码。</

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值