Flutter集成Deema服务插件deema_sdk的使用
Flutter集成Deema服务插件deema_sdk的使用
简介
Deema SDK for Flutter允许你将我们的“先买后付”(BNPL)支付服务无缝集成到你的Flutter应用程序中。该SDK简化了启动支付流程、管理交易和处理结果状态的过程,并提供了结构化的响应。
安装
在你的Flutter项目中添加Deema SDK,通过将其包含在pubspec.yaml
文件中:
dependencies:
deema_sdk: sdk_version
运行以下命令来安装包:
flutter pub get
快速开始
步骤1:导入SDK
import 'package:deema_sdk/deema_sdk.dart';
步骤2:启动SDK
使用DeemaSdk.launch
方法来启动支付流程:
DeemaSdk.launch(
context,
"SDK_KEY", // 替换为实际的SDK密钥
Environment.sandbox, // 可以根据实际情况选择环境
PurchaseRequest(
merchantOrderId: "1726", // 商户订单ID
amount: 100.0, // 付款金额
currencyCode: "KWD", // 货币代码
),
(result) {
if (result is Success) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Payment successful!")), // 显示成功信息
);
} else if (result is Failure) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Payment failed: ${result.message}")), // 显示失败信息
);
} else if (result is Canceled) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Payment was canceled")), // 显示取消信息
);
} else if (result is Unknown) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Unknown payment result")), // 显示未知结果信息
);
}
},
);
示例集成
以下是将Deema SDK集成到Flutter应用中的完整示例:
import 'package:flutter/material.dart';
import 'package:deema_sdk/deema_sdk.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp(
title: 'Deema Payment Demo',
theme: ThemeData(primarySwatch: Colors.blue),
home: const PaymentScreen(),
);
}
}
class PaymentScreen extends StatefulWidget {
const PaymentScreen({Key? key}) : super(key: key);
[@override](/user/override)
State<PaymentScreen> createState() => _PaymentScreenState();
}
class _PaymentScreenState extends State<PaymentScreen> {
void _makePurchase(BuildContext context) {
DeemaSdk.launch(
context,
"SDK_KEY", // 替换为实际的SDK密钥
Environment.sandbox, // 可以根据实际情况选择环境
PurchaseRequest(
merchantOrderId: "1726", // 商户订单ID
amount: 100.0, // 付款金额
currencyCode: "KWD", // 货币代码
),
(result) {
if (result is Success) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Payment successful!")), // 显示成功信息
);
} else if (result is Failure) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Payment failed: ${result.message}")), // 显示失败信息
);
} else if (result is Canceled) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Payment was canceled")), // 显示取消信息
);
} else if (result is Unknown) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text("Unknown payment result")), // 显示未知结果信息
);
}
},
);
}
[@override](/user/override)
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("Deema Payment")),
body: Center(
child: ElevatedButton(
onPressed: () => _makePurchase(context), // 触发付款操作
child: const Text("Pay Now"), // 按钮文本
),
),
);
}
}
更多关于Flutter集成Deema服务插件deema_sdk的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复