SwiftyArk 1.2.1

SwiftyArk 1.2.1

测试已测试
语言语言 SwiftSwift
许可协议 MIT
发布最后发布2017年10月
SwiftSwift 版本4.0
SPM支持 SPM

Andrew Walz 维护。



SwiftyArk 1.2.1

  • Andrew Walz



概述

SwiftyArk 是一个简单、轻量级的用于 Ark 生态系统 的框架。SwiftyArk 为访问 Ark 账户、委托、区块和交易信息提供了一个简单的包装。

SwiftyArk 的网络组件完全异步,并且具有广泛的错误处理。SwiftyArk 数据结构是类型安全的,并倾向于不可变性。

要求

  • iOS 8.0+
  • mac OS X 10.10+
  • Swift 3.0

文档

SwiftyArk 100% 已文档化,可在 此处 提供。

入门指南

使用 ArkManager 访问 Ark API

let manager = ArkManager()

ArkManager 处理所有网络调用,并以异步方式在闭包中返回结果

manager.delegates { (error, delegates) in
   if let arkError = error {
        print(arkError.localizedDescription)
           return
    }

    if let currentDelegates = delegates {
    	// List of delegates
     }
}

使用管理器实例,您可以访问一个账户

manager.account(address: "AUexKjGtgsSpVzPLs6jNMM6vJ6znEVTQWK") { (error, arkAccount) in
  if let account = arkAccount {
       // Account(address: "AUexKjGtgsSpVzPLs6jNMM6vJ6znEVTQWK",
       // unconfirmedBalance: 16118512.398923151,
       // balance: 16118512.398923151,
       // publicKey: "02ff171adaef486b7db9fc160b28433d20cf43163d56fd28fee72145f0d5219a4b",
       // unconfirmedSignature: Optional(0),
       // secondSignature: Optional(0),
       // multisignatures: Optional([]),
       // secondPublicKey: nil,
       // unconfirmedMultisignatures: Optional([]))
   }
}

管理器实例可以存储一个会话,以便轻松访问地址/委托

manager.delegate("jarunik") { (error, delegate) in
   if let arkDelegate = delegate {
		// Delegate(username: "jarunik", 
		// address: "Aasu14aTs9ipZdy1FMv7ay1Vqn3jPskA8t", 
		// publicKey: "02c7455bebeadde04728441e0f57f82f972155c088252bf7c1365eb0dc84fbf5de",
		// votes: 1246983.70585494,
		// producedblocks: 
		// 28670, 
		// missedblocks: 61, 
		// rate: 47, 
		// approval: 0.970000029, 
		// productivity: 99.7900009)
       // Update the session settings with delegate
       manager.updateSettings(delegate: arkDelegate)
   }
}

使用存储的会话凭证,您可以轻松访问账户信息

 manager.lastBlock { (error, block) in
    if let lastBlock = block {
    	 // Block(id: "3725283905614253778",
    	 // version: 0,
    	 // timestamp: 2017-09-19 00:48:48 +0000,
    	 // height: 1948928,
    	 // previousBlock: "17490567348134875423",
    	 // numberOfTransactions: 0,
    	 // totalAmount: 0.0,
    	 // totalFee: 0.0,
    	 // reward: 2.0,
    	 // payloadLength: 0,
    	 // payloadHash: "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
    	 // generatorPublicKey: "#{key}",
    	 // generatorId: "ARAq9nhjCxwpWnGKDgxveAJSijNG8Y6dFQ",
    	 // blockSignature: "#{signature}",
    	 // confirmations: 27,
    	 // totalForged: 2.0)
    }
 }

SwiftyArk 还提供了由 CoinMarketCap 提供的内置 Ark Ticker 支持多达 31 种货币

manager.ticker(currency: .cad) { (error, ticker) in
   if let canadianTicker = ticker {
        // Ticker(currency: SwiftyArk.Currency.cad,
        // id: "ark",
        // name: "Ark",
        // symbol: "ARK",
        // rank: 20,
        // price: 4.3638476501000003,
        // bitcoinPrice: 0.00088648999999999998,
        // volume24Hour: 5406421.2865599999,
        // marketCap: 426120847.0,
        // availableSupply: 97647966.0,
        // totalSupply: 128897966.0,
        // percentChange1h: -3.7999999999999998,
        // percentChange24h: 1.8700000000000001,
        // percentChange7d: -1.1100000000000001)
   }
}

安装

手动安装

只需将 Source 文件夹的内容复制到您的项目中。

许可协议

SwiftyArk 采用 MIT 许可协议。有关更多信息,请参阅 LICENSE 文件。

作者

如果您有任何问题、请求或改进意见,请随时提交拉取请求、创建问题或直接与我联系。

Andrew Walz
[email protected]

支持

SwiftyArk 100% 为开源项目,由❤️制作。.如果您想贡献力量

Ark 地址: AYdHH5TsZF796pv7gxVU1tK6DLkUxMK1VL

比特币地址: 16HPSJkzaQWWYyATrAnzCiLCQ2GSJETJbL

赞助商

委托赞助商 - Jarunik