21 个版本
0.3.4 | 2024年6月18日 |
---|---|
0.3.3 | 2024年5月30日 |
0.2.21 | 2024年5月28日 |
#432 in 魔法豆
277 次每月下载
335KB
7.5K SLoC
Devol 账户套件
目录
简介
欢迎使用 Devol 账户套件文档。本指南旨在为开发人员和系统管理员提供必要的知识和工具,以便有效地实施和管理 Devol 智能合约系统。
快速入门指南
设置开发环境
开始之前,请确保您的开发环境已设置好必要的工具和库
- Rust
- Solana CLI
初始化项目
创建一个新的 Rust 项目,您将在其中集成 Devol 账户套件
cargo new devol_integration
cd devol_integration
添加依赖项
打开您的 Cargo.toml
文件,并添加与 Solana 区块链和 Devol 账户套件一起工作的必要依赖项
[dependencies]
devol-accounts-kit = '*'
与 Devol 智能合约交互的示例代码
以下是一个设置客户端并与 Devol 智能合约交互的基本示例
// Required imports
use std::str::FromStr;
use solana_client::nonblocking::rpc_client::RpcClient;
use solana_program::pubkey::Pubkey;
use devol_accounts_kit::dvl_client::dvl_client::DvlClient;
use devol_accounts_kit::accounts::root::root_account::RootAccount;
use tokio;
#[tokio::main] // This attribute sets up the Tokio runtime for your async main
async fn main() {
let rpc_url = String::from("https://api.mainnet-beta.solana.com/");
let rpc_client = RpcClient::new(rpc_url);
// Proper error handling with `match` for key parsing
let admin_pub_key = match Pubkey::from_str("ADMIN_PUBLIC_KEY") {
Ok(key) => key,
Err(e) => {
eprintln!("Failed to parse admin public key: {}", e);
return;
}
};
let program_id = match Pubkey::from_str("PROGRAM_ID") {
Ok(id) => id,
Err(e) => {
eprintln!("Failed to parse program ID: {}", e);
return;
}
};
let reader = DvlClient::new(rpc_client, INT_SEED, admin_pub_key, program_id);
match reader.get_account::<RootAccount>(()).await {
Ok(root_account) => println!("Root Account: {:?}", root_account),
Err(e) => eprintln!("Failed to fetch the RootAccount: {}", e),
};
}
运行您的应用程序
要运行您的应用程序并查看输出
cargo run
这个简单的设置将帮助您开始与 Devol 智能合约交互,并在您开发过程中探索更复杂的交易和交互。
高级
功能配置选项
Devol 账户套件配备了一套功能,以满足区块链应用程序开发中的各种用例。该库以默认功能集结构化,编译了整个库,包括典型应用程序所需的所有功能。此外,还有一个专为区块链环境设计的特定功能
-
链上功能
“链上”功能专门设计用于不需要网络依赖功能的场景。当启用此功能时,它将移除库中的所有网络相关部分,使其适合在智能合约本身内部署。此功能确保库针对链上操作进行了优化,减少了占用空间并提高了智能合约执行的性能。
文档
更多详细说明,请参阅 DeVol Network 文档
依赖项
~73MB
~1.5M SLoC