1基本流程Asch有localnet、testnet、mainnet三个net。后两者是在线发布的,可以通过公网访问。第一种localnet是本地运行的私有链,只有一个节点,主要是为了方便本地测试和开发。Dapp的开发也涉及到这三个网络,即第一步在localnet上开发,第二步在本地测试,第三步在testnet上测试,正式发布到mainnet2是启动localnet.每个开发人员都可以在本地开始自己的工作。localnet,需要先下载asch源码。gitclonehttps://github.com/sqfasd/asch下载后,后续的安装和运行可以参考项目的README。3安装asch-clinpminstal-gasch-cli注意这一步不要使用淘宝的cnpm,有一个bug4本地创建应用,必须先进入你的asch源码目录,并确保localnet启动cd节点应用程序。js,然后使用asch-cli的dapps子命令创建应用asch-clidapps-a接下来,我们要回答一系列的问题来生成应用的创世块?enteryourtestnetaccountsecret*这里需要输入一个genesisblock可以是任意普通的aschmasterpassword(12个字组成)?输入你testnet账号的secondsecret有没有creation账号是否设置了二级密码,默认没有,我们直接回车吧?输入DApp名称HelloDappDapp名称,我们输入的是HelloDapp?输入DAppdescriptionHelloworlddemoforaschdappDappdescription,可以为空吗?输入DApp标签hello,asch,dapp Dapp标签,为了以后更好的检索,能不能为空?选择DApp类别1)Common2)Business3)Social4)Education5)Entertainment6)News(上下移动显示更多选择)答:Dapp的类型可以任意选择你的dapp的业务范围或领域属于,只需输入列表中的数字?进入DApp链接https://github.com/sqfasd/asc...进入Dapp源码压缩包,必须以zip结尾,安装好的需要通过这个链接下载吗?输入DApp图标urlhttps://www.asch.com/logo.pngDapp图标url?你想在这个dapp中发布一个内置资产吗?否您需要在dapp中构建内置资产吗?我们暂时不需要这个选项,直接输入No?输入dapp伪造者的公钥-十六进制数组,用','分隔8065a105c785a08757727fded3a06f8f312e73ad40f1f3502e0232ea42e67efd输入dapp的初始受托人公钥列表,用逗号分隔可以动态添加人,所以我们只需要输入一个创世账户的key即可。创建DApp创世块获取AschDappsSDK保存创世块保存dappmeta信息在localnet中注册dapp完成(DAppid为6299140990391157236)然后程序会自动在localnet中打开本例中我们的应用id为62991409903911572365目录结构我们可以在dapps下查看一个新的目录,即目录名为新建的dappidls-1dapps/blockchain.json#dapp数据库描述config.json#dapp配置文件,主要是种子节点列表,类似主链配置,开发者也可以添加其他自定义配置dapp.json#dapp元信息,包括名称、描述、源代码包等,这个文件可以在不同网络重新注册时使用genesis.json#创世块,由命令行自动生成,也可以自己写程序生成,这样可以更灵活的分配创世账户的资产index.js#dapp的入口文件init.js#这里是各个模块的初始化代码LICENSE#源码licensedescriptionmodules#主要代码在这里modules.full.json#需要加载的模块配置。如果需要添加新模块,可以在Configuremodules.genesis中添加.json#(模块配置的简化版,暂不需要)node_modules#package.json#public#前端目录routes.json#http路由配置,如果要增加新的接口,需要修改这个配置文件。需要详细调查。首先,你可以有一个大概的了解。与开发人员最相关的文件主要位于modules/contracts/目录中。我们可以看到该目录下已经内置了4个合约类型。ls-1dapps//modules/contracts/delegates.js#受托人注册合约insidetransfer.js#链转账合约outsidetransfer.js#XAS充值合约withdrawaltransfer.js#XAS取款合约开发者需要做的是创建一个新合约来表达你的业务逻辑,仅此而已。不需要了解其他不相关的代码。6配置dappgenesiskey我们需要在config.json的dapp字段中配置masterpassword和我们在genesisblock中使用的对应dappid。以后发布到官网的时候,也需要一个节点配置这个key,只有一个"params":{"6299140990391157236":["someonemanualstrongmovieroofepisode8spacebrownsoldiersoupmotor"]}7接入前端好了,现在放轻松,打开dapp的前端链接,体验一下侧链的基本功能。可以在钱包ui的已安装应用列表中找到dapp入口,也可以直接访问dapp的urllocalhost:4096/dapps/在这个helloworld项目中,我们可以进行充值、链内转账和提现等操作。目前充值暂时只能通过命令操作(后面会在主钱包中进行),其他功能可以直接在这个界面操作asch-clidapps-d?输入秘密****************************************************************************************?输入金额100?DAppID6299140990391157236?输入二级机密(如果已定义)?主机和端口localhost:4096null{success:true,transactionId:'10589988261732949004'}10589988261732949004每30秒刷新一次充值和提现操作。过一会我们可以看到界面上刷新了余额。