# 目录 [TOC=2,9] ## 介绍 True是一款去中心化区块链数字化钱包App,旨在为全球用户提供安全、简单化的数字资产管理,支持TrueChain公链和以太坊公链生态。True Wallet臻选优质的DApp,同时开放第三方DApp免费入驻。 ## True App下载 * ### 下载地址 [https://dapp.truedapp.net/appdown/](https://dapp.truedapp.net/appdown/) * ### 下载二维码 ![](https://box.kancloud.cn/4729dda279b30eadb8307451b6b1fad1_256x256.png) ## 使用说明 ### 登录钱包 如果没有登录的用户,进入App中必须要通过创建账号登录钱包;没有账户的用户需要先进行注册,注册完成后会直接进行登录。如果已经登录的用户会直接进入App中。 ![](https://img.kancloud.cn/65/3f/653f11916342ee9185ab23b81898e067_1080x2280.jpg =x500) ### 创建钱包 手机登录True App【下图1】,点击【创建钱包】进入钱包创建界面【下图2】,输入钱包名称、设置密码、确认密码,点击“创建钱包”,系统在手机上就会生成一个钱包助记词【下图3】(助记词为私钥的另一种体现方式)。为了防止数字资产的丢失,创建完成后必须要备份钱包的助记词,通过笔和纸来抄写进行备份;备份的助记词必须要完成验证,才会添加至True App中进行使用。 >[danger] 注意:钱包创建成功后,必须要备份钱包,通过笔和纸来抄写进行备份;切勿截屏,备份时确保周围没有摄像头、无人。 ![](https://img.kancloud.cn/8d/3d/8d3d20bd4e880f3c6b6069b3f13a65aa_1125x2436.png =x500)**\>** ![](https://img.kancloud.cn/92/55/9255491fb6dc517511223a315a1e3ea6_1080x2339.jpg =x500) **\>** ![](https://img.kancloud.cn/a2/ee/a2ee3bfd7264b55ff9523c770457dcc9_1080x2339.jpg =x500) ### 导入钱包 手机登录True App【下图1】,点击【导入钱包】进入设置钱包密码界面【下图2】,设置完成后选择导入方式【下图3】,可以通过助记词、私钥及keystore三种方式导入;选择助记词导入,需要输入已保存的助记词;选择私钥导入,需要输入已保存的私钥;选择keystore导入,需要输入已保存的keystore文件内容及对应的密码;然后点击“立即导入”,验证通过后,钱包就添加成功了。 ![](https://img.kancloud.cn/15/af/15af0d88693f2420e63fd145e91dceed_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/54/58/54588e0916478e271b3c24b328236a85_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/d9/93/d9939092f4003d83f777db0766441434_1125x2436.png =x500) ### 导出钱包私钥、助记词、Keystore 手机登录True App,首先通过【创建钱包】或【导入钱包】先添加一个钱包【下图1】,点击菜单栏“![](https://img.kancloud.cn/a3/7c/a37ce1dd45b0203bf5a61711b2990a97_111x110.png =x30)”图标进入到钱包管理页【下图2】,点击要导出钱包右侧图标,就可以看到导出钱包私钥、助记词、Keystore的选项【下图3】;点击【私钥 或 助记词 或 Keystore】> 【输入钱包密码】,即可以看到对应的信息。 ![](https://img.kancloud.cn/08/f0/08f04325402188505fa546e631a3161e_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/ef/c3/efc3f335d221edad60d6951e0c313349_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/ae/df/aedfa34fe39d43de662d89abe32f9eb8_1125x2436.png =x500) ### 添加多个钱包 手机登录True App,首先通过【创建钱包】或【导入钱包】先添加一个钱包【下图1】,点击左上角“![](https://img.kancloud.cn/a3/7c/a37ce1dd45b0203bf5a61711b2990a97_111x110.png =x30)”,可以看到自己所有的钱包【下图2】,点击“+”号【下图3】,点击创建钱包 > 输入钱包密码 > 创建成功;点击导入钱包 > 输入钱包密码 > 选择导入方式 > 导入成功;创建或导入成功后,完成备份操作以保证钱包账户的安全性。 ![](https://img.kancloud.cn/08/f0/08f04325402188505fa546e631a3161e_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/32/1a/321ac27b0f6baf01e164a392fa910594_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/3b/76/3b768e92c7200a1110d02f32df3b48f5_1080x2339.png =x500) ### 转账 手机登录True App - 资产页【下图1】 1.点击需要转账Token;进入Token详情界面【下图2】,点击“转账”按钮,进入转账界面【下图3】,输入收款地址、收款金额,点击“下一步”,确认转账信息,在点击“下一步”,输入钱包密码,点击“确认”。 ![](https://img.kancloud.cn/4e/d5/4ed53c15ca0dc883e9b999a29566ec58_1080x2339.png =x500) **\>** ![](https://img.kancloud.cn/dc/c2/dcc29e865e0d0c4985a4b00e6f0853a8_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/e8/9c/e89c4b38fa858485af4f91729faac8c7_1125x2436.png =x500) 2.资产页点击转账按钮【下图1】;进入到选择Token【下图2】,选择完成的后续流程参照“第一条”。 ![](https://img.kancloud.cn/f3/a3/f3a330ad8f023d3bc1358cafc1af1306_1080x2339.png =x500) **\>** ![](https://img.kancloud.cn/56/bc/56bce4872a5943a059e1c04feb8911a6_1125x2436.png =x500) ### 收款 第一种方式:可以进入钱包管理点击钱包地址来复制【下图1】,发送给对方来接收Token。 >[info] 注意:只要钱包中显示Token,都可以复制该地址来收款。 ![](https://img.kancloud.cn/d7/3b/d73b7b567455f513686a6369b480d115_1080x2339.png =x500) 第二种方式:可以提供收款二维码给对方扫码来接收Token。操作步骤: 1.手机登录True App - 资产页【下图1】,点击需要收款的Token;进入Token详情界面【下图2】,点击“收款”按钮,会显示自己的收款二维码【下图3】,可以对二维码进行保存图片发送给对方,对方可直接扫二维码进行转账。 ![](https://img.kancloud.cn/4e/d5/4ed53c15ca0dc883e9b999a29566ec58_1080x2339.png =x500) **\>** ![](https://img.kancloud.cn/89/c1/89c194c1c8e38e04363c4555529c0e8a_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/b7/e5/b7e5af10f3e2fc26205f3e0c2ab92209_1080x2339.jpg =x500)‘ 2.点击收款【下图1】,选择代币种类【下图2】,选择完成后会显示自己的收款二维码【下图3】。 ![](https://img.kancloud.cn/8c/32/8c32e40a18f921e53989ec31365c8c44_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/91/ab/91abd2264d7dc1d7f8a334d646c9717e_1125x2436.png =x500) **\>** ![](https://img.kancloud.cn/b7/e5/b7e5af10f3e2fc26205f3e0c2ab92209_1080x2339.jpg =x500) ### 设置收款金额 在收款二维码页面中,可以设置收款的金额【下图1】;设置完成后扫描二维码会自动输入所扫描二维码中所包含的金额;设置完成后如果有汇率的话还会根据当前的汇率进行显示当前所支持的法币的金额【下图2】。 ![](https://img.kancloud.cn/9f/47/9f47fcbcb266baf4b9efbd5fbb437449_1080x2339.png =x500) **\>** ![](https://img.kancloud.cn/be/40/be403fc48bd7d76c94f7dd6839bb6c5e_1125x2436.png =x500) ### 查看 Dapp / 应用 手机登录True App > 发现,就可以看见应用列表;后续我们会推出许多优秀的Dapp;我们也为用户提供免费申请将自己的Dapp上架到应用区域中,继而快速获得大量用户。 >[info] 应用上架申请:可前往[开发者平台](http://dev.truedapp.net/) - 登录 - 控制台 - 应用 - 添加应用 - 申请上架; ### 登出 >[danger] 注意:如果添加了钱包,进行登出钱包前,必须做好钱包备份;一旦登出后,所有的钱包都会数据都会移除。如果未备份钱包,一旦丢失,资产将无法找回。谨慎操作!谨慎操作!谨慎操作! 打开True App - 我的,点击个人信息区域,点击“退出”,弹出确认提示警示框,点击确定,输入钱包密码。 ![](https://img.kancloud.cn/c3/8f/c38f9b7aec86dfbdb35fee56c1efb0d7_1080x2339.png =x500) **\>** ![](https://img.kancloud.cn/ec/3b/ec3ba67a536c29ce032002ef725d6613_1080x2339.png =x500) **\>** ![](https://img.kancloud.cn/ca/d2/cad2d5ef139644054eb0d4f603aa242a_1080x2339.png =x500) ## API 函数 ### RN框架内Web端游戏-移动端应用通讯接口说明 > 所有接口通过`postMessage`方法单向传递。参数中均包含`timestamp`字段指明请求发起时的时间戳,和请求的其他参数一起通过格式化的JSON字符串传递。 ### 请求接口 #### 获取当前使用的账户地址 ##### 发起 ```js { timestamp: new Date().getTime(), method: 'get_account' } ``` ##### 返回 ```js { timestamp: timestamp, method: 'get_account', data: { // ok字段为false时不需要其他参数,可选附带message ok: true, address: '0x1234...' } } ``` #### 签名指定交易 ##### 发起 ```js { timestamp: new Date().getTime(), method: 'get_signedTx', data: { from: '0x123...', tx: { to: '0x123...', value: 0, input: '0x123...', nonce: 0, gas: 21000, gasPrice: 1, chainId: 123 }, message: '交易的内容说明,会展示给用户' } } ``` ##### 返回 ```js { timestamp: timestamp, method: 'get_signedTx', data: { // ok字段为false时不需要其他参数,可选附带message ok: true, rawTx: '0x123456...' } } ``` #### 设置标题 ##### 发起 ```js { timestamp: new Date().getTime(), method: 'set_title' } ``` ####关闭 WebView ###### 发起 ```js { timestamp: new Date().getTime(), method: 'close' } ``` #### 获取当前应用版本 ##### 发起 ```js { timestamp: new Date().getTime(), method: 'get_version' } ``` ##### 返回 ```js { timestamp: timestamp, method: 'get_version', data: { ok: true, version: 3.3....., } } ``` #### 代付Gas签名 ##### 发起 ```js { timestamp: new Date().getTime(), method: 'get_signPrePaymentTx', data: { from: '0x123...', tx: { to: '0x123...', value: 0, input: '0x123...', nonce: 0, gas: 21000, gasPrice: 1, chainId: 123 }, message: '交易的内容说明,会展示给用户' } } ``` ##### 返回 ```js { timestamp: timestamp, method: 'get_signPrePaymentTx', data: { ok: true, preSignedRawTx, }, }; ``` ### 例子 #### 初始化 在钱包环境中必须等待加载完成才可以使用`postMessage`方法通信,在加载完成时会收到`onload`信息,应当在接收到消息后初始化所有通信事件。 ```js document.addEventListener('message', (e) { if (e.data === 'onload') { init() } }) ``` #### 获取当前使用账户 ```js // 发送请求 const payload = { timestamp: new Date().getTime(), method: 'get_account' } window.postMessage(JSON.stringify(payload)) // 监听返回信息 document.addEventListener('message', e => { let res if (e.data) { try { res = JSON.parse(e.data) } catch (err) {} } if (!res) { return } if (res.timestamp === payload.timestamp) { console.log(res.data.address) } }) ```