手把手教你实现imtoken添加合约地址即空投代币
imToken 是一款全球领先的区块链数字资产管理工具[ZB],帮助你安全管理BTC, ETH, ATOM, EOS, TRX, CKB, BCH, LTC, DOT, KSM, FIL, XTZ 资产,同时支持去中心化币币兑换功能 ...
最近各种项目方的代币空投层出不穷,有的是手动空投,有的是通过转0eth到代币合约来实现空投,不过最近有部分空投是不需要转钱,只要在合约中添加代币合约地址就可以实现的。这里很多朋友不明白原理,以为不用做任何操作就可以空投到自己的地址上。下面我来详细讲解一下如何添加和空投代币。
ERC-20 代币
使用以太坊创建的ERC-20代币是指遵循ERC-20标准的代币,该标准规定需要在代币合约中实现以下方法:
余额变量,存储所有拥有代币的地址的余额
(=>单位);
()
返回指定地址的账户余额
//
方法原型 ( )( )
()
将token数量转入
//方法原型
(_to,)(布尔)
()
将一定数量的代币从地址 _from 发送到地址 _to
//方法原型
(_来自,_到,)(布尔值)
关于ERC-20 token标准中需要实现的方法,我只提到了这几种,并不是全部imtoken空投,具体请参见附录中的链接。
如何实现添加和空投?
在钱包中添加 token 合约时,钱包首先需要获取 token 合约中当前地址的余额。关键在于当你在 token 合约中需要获取自己地址的余额时,其实是调用了 token 合约的 () 方法。也就是说,虽然在添加 token 合约时你以为没有和 token 合约交互,但实际上钱包已经和 token 合约交互过了。如果你想实现空投,只需要在 () 方法中实现一个空投方法即可。
首先我们来看一下token最佳实践中的()方法:
()(){[];}
基本方法只是从变量中获取您当前地址的余额。
如果你想实现空投,你可以这样做:
uint =; //总发行量 uint =0; //已空投数量 uint =; //单个账户空投数量 ( )( ){//
当余额为0时直接添加此方法即可空投
如果([] ==0&& < ){ += ; [] += ; }[];}
你可能会说我只需要把我地址里的余额全部转走imToken钱包官网,然后调用合约的()方法空投就可以了,如果我想对每个地址只空投一次,应该怎么做呢?
让我们创建一个新变量:
uint =; //发行总量 uint =0; //空投数量 uint =; //单个账户空投数量 //存储是否进行过空投 (=>bool); //修改方法 ( )( ){//
当余额为0时直接添加此方法即可空投
如果(![] && < ){ [] =true; += ; [] += ; }[];}
修改完之后就可以添加和空投了。
当然上面的例子只是一个简化的版本,我们还可以在任意一个调用的方法中判断该账户是否收到过空投,如果没有,则直接对该账户进行空投。
空投福利
这样就分享一个已知的空投合约,打开im钱包,点击加号进入,复制粘贴合约地址,搜索点击添加,秒到币,无需以太坊手续费。
1. BWC蓝鲸币
合约地址:39