Flutter加密货币管理插件moneroo_flutter_sdk的使用
Flutter加密货币管理插件moneroo_flutter_sdk的使用
需求
❗ 为了开始使用Moneroo Flutter,你必须在你的机器上安装[Flutter SDK][flutter_install_link]。
安装
通过 flutter pub add
安装:
flutter pub add moneroo_flutter_sdk
配置
Android
在你的 <code>AndroidManifest.xml</code>
中添加这一行。这将帮助你在处理支付时避免出现 ERR_CLEAR_TEXT_NOT_PERMITTED 错误。
不要忘记允许Android应用访问互联网!更多信息请点击这里!
<application
...
android:usesCleartextTraffic="true"
...
>
...
</application>
iOS
在你的 <code>Info.plist</code>
中添加这一行。这将帮助你在处理支付时避免出现 ERR_CLEAR_TEXT_NOT_PERMITTED 错误。
<plist>
...
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
...
</plist>
文档
你可以在这里查看一个完整的示例。你也可以使用 <code>MonerooApi</code>
类来实现自己的支付功能,而无需使用此包提供的 Moneroo 小部件。
开发
开发模式
注意事项
异常处理 🐛
- MonerooException: 当API调用期间发生错误时抛出此异常。你可以通过记录该类的属性来获取更多相关信息。
- ServiceUnavailableException: 当SDK无法将请求发送到服务器时抛出此异常。可能是由于网络问题导致的。
安全漏洞
如果你在Moneroo Flutter SDK中发现了一个安全漏洞,请通过电子邮件将其报告给Moneroo Security,邮箱地址为 hello@moneroo.io。所有安全漏洞都将得到及时处理。
许可证
Moneroo Flutter SDK 是开源软件,根据MIT许可证授权。
示例代码
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:moneroo_flutter_sdk/moneroo_flutter_sdk.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp(
title: 'Moneroo Flutter SDK Demo',
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.blue),
useMaterial3: true,
),
home: const MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({super.key});
[@override](/user/override)
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
[@override](/user/override)
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: ElevatedButton(
child: const Text('立即支付'),
onPressed: () {
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => Moneroo(
amount: 1, // 支付金额
apiKey: 'YOUR_API_KEY', // 你的API密钥
currency: MonerooCurrency.XOF, // 货币类型
customer: MonerooCustomer(
email: 'email@gmail.com', // 客户邮箱
firstName: 'firstname', // 客户名
lastName: 'lastname', // 客户姓
),
description: '这是一个描述', // 支付描述
onPaymentCompleted: (infos, context) {
if (infos.status == MonerooStatus.success) {
Navigator.of(context).pop(); // 如果支付成功,则返回上一页
} else {
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(
content: Text(
'我们未能正确完成支付!',
),
backgroundColor: Colors.red,
),
);
}
},
onError: (error, context) {
log(error.toJson().toString()); // 记录错误信息
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(
content: Text(
'发生错误!',
),
backgroundColor: Colors.red,
),
);
Navigator.pop(context); // 返回上一页
},
),
),
);
},
),
),
);
}
}
更多关于Flutter加密货币管理插件moneroo_flutter_sdk的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复