Flutter插件zakah的介绍与使用
Flutter插件zakah的介绍与使用
Zakah
Zakah 是一个用于 Safaricom 的 M-Pesa API 的客户端库。它的名字来源于肯尼亚嘻哈艺术家 Zakah。它允许你与 Safaricom M-Pesa API 集成。
它目前仍在开发中,API 可能在一段时间内保持不稳定。
M-Pesa 是由 Safaricom(肯尼亚最大的移动网络运营商)运营的一种基于手机的转账、融资和微型融资服务。它已经扩展到其他国家。M-Pesa 允许用户通过移动设备轻松存取款、转账以及支付商品和服务。- 维基百科
安装
在你的 pubspec.yaml
文件中添加以下内容:
dependencies:
zakah: <1.0.0
然后运行以下命令:
pub get
或者在 Flutter 项目中运行:
flutter packages get
现在可以在 Dart 代码中导入:
import 'package:zakah/zakah.dart';
该库也可以在 Pub 包管理仓库 中找到。
使用
以下是一个完整的示例代码,展示如何使用 zakah 插件进行 B2C 支付操作:
import 'dart:async';
import 'package:zakah/zakah.dart' as zakah;
Future<void> main() async {
// 初始化 M-Pesa 实例,传入 Consumer Key 和 Consumer Secret
var m = zakah.Mpesa('ConsumerKey', 'ConsumerSecret');
// 调用 b2c 方法进行业务支付
Map b2cResult = await m.b2c(
"apitest390", // Initiator Name
"SecurityCredential", // Security Credential
zakah.CommandID["BusinessPayment"], // Command ID
300, // Amount
"601390", // Party A (发起方)
"254708374149", // Party B (接收方)
"some remaks", // Remarks
Uri.parse("https://www.google.com"), // Queue Time Out URL
Uri.parse("https://www.google.com"), // Result URL
occasion: "some occasion"); // Occasion
// 打印最终结果
print("final b2cResult::");
print(b2cResult);
}
特性
- TODO
开发环境搭建
以下是开发环境的设置步骤:
-
克隆并 Fork 本仓库:
在本地或 GitHub 上 fork 此仓库。 -
安装 Dart 2:
确保你已安装 Dart 2。 -
创建 Issue:
在此仓库中打开一个 Issue,并说明你想添加的功能及其原因。 -
修改代码:
在你的 Fork 中进行更改。 -
兼容性:
确保你的更改具有向后兼容性,除非无法实现。 -
添加测试:
为你的更改编写测试。 -
格式化代码:
使用 dartfmt 格式化代码:dartfmt --overwrite --profile --follow-links .
-
运行测试:
确保所有测试通过:pub run test .
-
提交 Pull Request:
在此仓库中提交 Pull Request。
注意:我不会承诺接受所有 Pull Request。
示例代码
以下是完整的示例代码,可以直接运行以测试 zakah 插件的功能:
import 'dart:async';
import 'package:zakah/zakah.dart' as zakah;
Future<void> main() async {
// 初始化 M-Pesa 实例
var m = zakah.Mpesa('KNJH6N40cjL8saPjDmJxvcx1AyVywVzw', 'SQhQ4EeOXMTe96D5');
// 调用 b2c 方法进行业务支付
Map b2cResult = await m.b2c(
"apitest390", // Initiator Name
"c6x4tK+uZzTyRtn7vFG//ctViOSfiYCCYGQ4j+xvQfeOC/zbv9Iszr/c6niGtqHRyuLAgGKV0G6zzQtc0QcEIzH9c6fOG/JA03OS5RRFccHI3sCQ0ucVGuYD4FbxM1EMAMgj09C21WGouXiFPenF0wwxFPZLRs9JBFOXfLNPbaA8+03TrYnID1mFR+nDfDT5xOvuk1JWnkmTk9NJDOtT+Fn2dP1DBrMbIW0tmROkMsKm3zCV4QJmKbnr/Ds+/HyXyGmr3UOUU3t9jq973uJ/y6/8TukQmA4dkjXGy7agzAO4pPIYWScpiom3K/JY//Z5EdSUn1f4SYrwHiH8cTmjCw==", // Security Credential
zakah.CommandID["BusinessPayment"]!, // Command ID
300, // Amount
"601390", // Party A (发起方)
"254708374149", // Party B (接收方)
"some remaks", // Remarks
Uri.parse("https://www.google.com"), // Queue Time Out URL
Uri.parse("https://www.google.com"), // Result URL
occasion: "some occasion"); // Occasion
// 打印最终结果
print("final b2cResult::");
print(b2cResult);
}
更多关于Flutter插件zakah的介绍与使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
在Flutter中,zakah
并不是一个广为人知或官方支持的插件。如果你在某个项目或文档中遇到了这个插件,可能是某个开发者或团队自定义的插件,或者是某个特定领域的解决方案。为了帮助你更好地探索和使用这个插件,以下是一些步骤和建议:
1. 查找插件的来源
- GitHub: 首先,尝试在GitHub上搜索
zakah
,看看是否有相关的仓库。通常,Flutter插件会发布在GitHub上,并且会有详细的文档和使用说明。 - Pub.dev: 检查 pub.dev 上是否有
zakah
插件。这是Flutter官方插件发布平台,大多数插件都会在这里发布。 - 项目文档: 如果你是在某个项目中遇到这个插件,查看项目的文档或README文件,通常会有关于插件的使用说明。
2. 阅读插件的文档
- 如果找到了插件的来源,仔细阅读其文档。文档通常会包含插件的安装方法、使用示例、API参考等信息。
- 如果没有文档,可以查看插件的源代码,尝试理解其功能和使用方式。
3. 安装插件
- 如果插件发布在
pub.dev
上,你可以通过在pubspec.yaml
文件中添加依赖来安装插件:dependencies: zakah: ^1.0.0 # 替换为实际的版本号
- 如果插件是本地开发的,你可能需要将插件的路径添加到
pubspec.yaml
中:dependencies: zakah: path: /path/to/zakah