Flutter插件alan3的探索使用_Alan3.dart 是一个纯 Dart 包,允许你轻松地将你的 Dart 项目与任何基于 Cosmos 的区块链集成

Flutter插件alan3的探索使用

封面图

Alan3.dart 是一个纯 Dart 包,允许你轻松地将你的 Dart 项目与任何基于 Cosmos 的区块链集成。它是从 Alan.dart 分支出来的,并添加了自定义功能。

你可以在此处找到官方文档:https://alan-sdk.github.io/alan.dart/

Cosmos-SDK 兼容性表

随着时间的推移,我们开发了不同的库版本以兼容多个 Cosmos SDK 版本。以下是你应该使用的版本对照表:

Cosmos SDK 版本 Alan.dart 分支
v0.40.x, v0.41.x, v0.42.x v0.40.x(0.50.x)
v0.45.x v0.41.x(0.51.x)

开始使用

要在你的项目中使用这个库,只需编辑 pubspec.yaml 文件并添加以下行:

dependencies:
  alan: <version>

最新可用版本为:

Pub Version

你还可以使用特定的 GitHub 标签或分支:

dependencies:
  alan:
    git:
      url: git://github.com/aufwallet/alan3.dart.git
      ref: <branch or tag>

示例代码

以下是使用 alan3.dart 插件发送交易的完整示例:

import 'package:alan3/alan.dart';
import 'package:alan3/proto/cosmos/bank/v1beta1/export.dart' as bank;

void main() async {
  // 创建网络信息
  final networkInfo = NetworkInfo.fromSingleHost(
    bech32Hrp: 'desmos',
    host: 'localhost',
  );

  // 使用助记词创建钱包
  final mnemonic = [
    'roast',
    'stomach',
    'welcome',
    'please',
    'gauge',
    'funny',
    'coconut',
    'baby',
    'bird',
    'announce',
    'bind',
    'jacket',
    'title',
    'vibrant',
    'tomorrow',
    'indoor',
    'bitter',
    'initial',
    'ill',
    'analyst',
    'thought',
    'strike',
    'answer',
    'cotton',
  ];
  final wallet = Wallet.derive(mnemonic, networkInfo);

  // 创建并签署交易
  final message = bank.MsgSend.create()
    ..fromAddress = wallet.bech32Address
    ..toAddress = 'cosmos1cx7mec8x567xh8f4x7490ndx7xey8lnr9du2qy';
  message.amount.add(Coin.create()
    ..denom = 'uatom'
    ..amount = '100');

  final signer = TxSigner.fromNetworkInfo(networkInfo);
  final tx = await signer.createAndSign(wallet, [message]);

  // 广播交易
  final txSender = TxSender.fromNetworkInfo(networkInfo);
  final response = await txSender.broadcastTx(tx);

  // 检查结果
  if (response.isSuccessful) {
    print('Tx sent successfully. Response: ${response}');
  } else {
    print('Tx errored: ${response}');
  }
}

更多关于Flutter插件alan3的探索使用_Alan3.dart 是一个纯 Dart 包,允许你轻松地将你的 Dart 项目与任何基于 Cosmos 的区块链集成的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter插件alan3的探索使用_Alan3.dart 是一个纯 Dart 包,允许你轻松地将你的 Dart 项目与任何基于 Cosmos 的区块链集成的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


Alan AI 是一个强大的语音助手和对话式 AI 平台,它允许开发者将语音交互功能集成到应用程序中。Alan 提供了 Flutter 插件 (alan_voice) 以便在 Flutter 应用中轻松集成语音功能。以下是如何探索和使用 Alan AI 插件(alan_voice)的步骤:


1. 了解 Alan AI

Alan AI 提供了一个基于云的语音助手平台,允许开发者通过语音命令控制应用程序。它可以理解自然语言,执行特定任务,并返回响应。Alan AI 支持多种平台,包括 Flutter。


2. 集成 Alan AI 插件

在 Flutter 项目中使用 Alan AI 插件,首先需要将插件添加到 pubspec.yaml 文件中。

dependencies:
  flutter:
    sdk: flutter
  alan_voice: ^3.0.0  # 使用最新版本

然后运行 flutter pub get 以安装插件。


3. 初始化 Alan AI

在 Flutter 应用中初始化 Alan AI,需要提供 Alan AI 提供的 SDK Key。你可以在 Alan AI 控制台中创建项目并获取 SDK Key。

import 'package:alan_voice/alan_voice.dart';

void initAlan() {
  AlanVoice.addButton(
    "YOUR_ALAN_SDK_KEY",  // 替换为你的 SDK Key
    buttonAlign: AlanVoice.BUTTON_ALIGN_RIGHT,  // 按钮位置
  );

  AlanVoice.callbacks.add((command) {
    // 处理 Alan AI 返回的命令
    print("Received command: ${command.data}");
  });
}

4. 处理语音命令

Alan AI 会将语音命令转换为 JSON 数据并传递给应用程序。你可以在回调函数中处理这些命令。

AlanVoice.callbacks.add((command) {
  switch (command.data["action"]) {
    case "navigate":
      String page = command.data["page"];
      // 执行导航操作
      break;
    case "play_music":
      String song = command.data["song"];
      // 播放音乐
      break;
    default:
      print("Unknown command: ${command.data}");
  }
});

5. 自定义语音脚本

Alan AI 使用 JavaScript 脚本来定义语音交互逻辑。你可以在 Alan AI 控制台中编写脚本,例如:

intent('Play $(SONG* (.*))', (p) => {
  p.play({ song: p.SONG.value });
  p.play(`Playing ${p.SONG.value}`);
});
回到顶部