Flutter插件prembly_flutter的特性与使用方法

Flutter插件prembly_flutter的特性与使用方法

Prembly_flutter

验证您的用户或客户,使用prembly_flutter非常简单。

Flutter插件prembly_flutter的特性

prembly_flutter可用于验证非洲超过4个国家,包括尼日利亚、加纳、南非、乌干达、肯尼亚、塞拉利昂和卢旺达。

开始使用prembly_flutter

通过以下步骤安装prembly_flutter。

安装

在您的项目目录中运行以下命令:

pub get prembly_flutter

开始使用

在安装了prembly_flutter之后,您应该在main.dart文件中初始化prembly_flutter插件。

void main() {
  // 初始化prembly插件
  PremblyPlugin.initialize(
    appId: "YOUR_APP_ID_FROM_PREMBLY",
    apiKey: "YOUR_API_KEY_FROM_PREMBLY",
  ).then((_) {
    return runApp(const MyApp());
  });
}

您可以从prembly.com获取App_IDApi-key

使用

访问example/lib/main.dart查看prembly_flutter的一些短小且有用的示例,以及如何使用它们。以下是部分示例:

示例

全局

// 邮箱验证
void verifyEmail() async {
    var response = await premblyPlugin
        .emailVerifier("test@whitecoode.com");
    print(response);
}

尼日利亚

// 尼日利亚车牌号验证
void verifyPlateNumber() async {
    var response = await premblyPlugin
        .ngPlateNumberVerifier("AA0000000");
    print(response);
}

// 尼日利亚BVN号码验证
void verifyBvnNumber() async {
    var response = await premblyPlugin
        .ngBvnNumberVerifier("54651333604");
    print(response);
}

加纳

// 加纳国际护照验证
void verifyInternationalPassport() async {
    var response = await premblyPlugin
        .ghVerifyInternationalPassport(number: "G0000575");
    print(response);
}

// 加纳选民卡验证
void verifyVoter() async {
    var response = await premblyPlugin
        .ghVerifyVoters(number: "9001332866", type: "Main");
    print(response);
}

乌干达

// 乌干达企业验证
void verifyBusiness() async {
    var response = await premblyPlugin
        .ugVerifyBusinessVerification(customerReference: "ref", customerName: "Coode", reservationNumber: "001");
    print(response);
}

肯尼亚

// 肯尼亚国际护照验证
void verifyInternationalPassport() async {
    var response = await premblyPlugin
        .kyVerifyInternationalPassport(customerName: "coode", number: '01234567', customerReference: "ref");
    print(response);
}

// 肯尼亚国家身份证验证
void verifyNationalIdentity() async {
    var response = await premblyPlugin
        .kyVerifyNationalIdentityNumber(customerName: "coode", number: '01234567', customerReference: "ref");
    print(response);
}

南非

// 南非国家身份证验证
void verifyNationalIdentity() async {
    var response = await premblyPlugin.saVerifyNationalIdentity(firstName: "firstName", lastName: "Lethabo", nationalID: "0123474827482", dateOfBirth: "1985-01-20");
    print(response);
}

塞拉利昂

// 塞拉利昂选民卡验证
void verifyVoters() async {
    var response = await premblyPlugin.slVerifyVotersCard(searchMode: "ID or BIO", firstName: "firstName if(searchMode is BIO)", lastName: "lastName if(searchMode is BIO)", middleName: "middleName if(searchMode is BIO)", dateOfBirth: "dateOfBirth if(searchMode is BIO)", number: "number if(searchMode is BIO)");
    print(response);
}

卢旺达

// 卢旺达国家身份证验证
void verifyVoters() async {
    var response = await premblyPlugin.rwVerifyNationalID(number: "ID number");
    print(response);
}

完整示例

import 'package:flutter/material.dart';
import 'package:prembly_flutter/prembly_flutter.dart';

void main() {
  // 初始化prembly插件
  PremblyPlugin.initialize(
    appId: "YOUR_APP_ID_FROM_PREMBLY",
    apiKey: "YOUR_API_KEY_FROM_PREMBLY",
  ).then((_) {
    return runApp(const MyApp());
  });
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // 这个widget是你的应用的根
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Prembly Example',
      theme: ThemeData(
        primarySwatch: Colors.purple,
      ),
      home: HomePage(),
    );
  }
}

class HomePage extends StatefulWidget {
  HomePage({super.key});

  @override
  State<HomePage> createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  // PremblyPlugin实例
  PremblyPlugin premblyPlugin = PremblyPlugin();

  // 加载状态控制器
  bool loading = false;

  // 字段控制器
  final TextEditingController _emailController = TextEditingController();

  final TextEditingController _plateNumberController = TextEditingController();

  final TextEditingController _bvnNumberController = TextEditingController();

  final TextEditingController _internationalPassportController = TextEditingController();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Prembly Flutter Example'),
        elevation: 0,
      ),
      body: Padding(
        padding: const EdgeInsets.all(10.0),
        child: Column(
          children: [
            // 邮箱验证
            TextFormField(
              controller: _emailController,
              decoration: InputDecoration(
                filled: true,
                fillColor: Colors.white,
                contentPadding: const EdgeInsets.all(10),
                hintText: "Verify Email",
                suffixIcon: InkWell(
                  onTap: loading
                      ? null
                      : () async {
                          setState(() => loading = true);
                          var response = await premblyPlugin
                              .emailVerifier(_emailController.text);
                          print(response);

                          setState(() => loading = false);
                        }, // 邮箱验证处理器
                  child: Container(
                    width: 80,
                    padding: const EdgeInsets.all(8.0),
                    child: Center(
                      child: loading
                          ? const SizedBox(
                              width: 20,
                              height: 20,
                              child: CircularProgressIndicator(),
                            )
                          : const Text(
                              'Send',
                              style: TextStyle(
                                color: Colors.blue,
                                fontSize: 12,
                                fontWeight: FontWeight.w500,
                              ),
                            ),
                    ),
                  ),
                ),
              ),
            ),

            // 国家
            // 尼日利亚
            // 车牌号验证
            TextFormField(
              controller: _plateNumberController,
              decoration: InputDecoration(
                filled: true,
                fillColor: Colors.white,
                contentPadding: const EdgeInsets.all(10),
                hintText: "Verify Plate Number",
                suffixIcon: InkWell(
                  onTap: loading
                      ? null
                      : () async {
                          setState(() => loading = true);
                          var response = await premblyPlugin.ngPlateNumberVerifier(
                              _plateNumberController.text);
                          print(response);

                          setState(() => loading = false);
                        }, // 车牌号验证处理器
                  child: Container(
                    width: 80,
                    padding: const EdgeInsets.all(8.0),
                    child: Center(
                      child: loading
                          ? const SizedBox(
                              width: 20,
                              height: 20,
                              child: CircularProgressIndicator(),
                            )
                          : const Text(
                              'Send',
                              style: TextStyle(
                                color: Colors.blue,
                                fontSize: 12,
                                fontWeight: FontWeight.w500,
                              ),
                            ),
                    ),
                  ),
                ),
              ),
            ),
            // 银行验证号验证
            TextFormField(
              controller: _bvnNumberController,
              decoration: InputDecoration(
                filled: true,
                fillColor: Colors.white,
                contentPadding: const EdgeInsets.all(10),
                hintText: "Verify BVN Number",
                suffixIcon: InkWell(
                  onTap: loading
                      ? null
                      : () async {
                          setState(() => loading = true);
                          var response = await premblyPlugin
                              .ngBvnNumberVerifier(_bvnNumberController.text);
                          print(response);

                          setState(() => loading = false);
                        }, // BVN验证处理器
                  child: Container(
                    width: 80,
                    padding: const EdgeInsets.all(8.0),
                    child: Center(
                      child: loading
                          ? const SizedBox(
                              width: 20,
                              height: 20,
                              child: CircularProgressIndicator(),
                            )
                          : const Text(
                              'Send',
                              style: TextStyle(
                                color: Colors.blue,
                                fontSize: 12,
                                fontWeight: FontWeight.w500,
                              ),
                            ),
                    ),
                  ),
                ),
              ),
            ),
            // 加纳
            // 国际护照验证
            TextFormField(
              controller: _internationalPassportController,
              decoration: InputDecoration(
                filled: true,
                fillColor: Colors.white,
                contentPadding: const EdgeInsets.all(10),
                hintText: "Verify International Passport Number",
                suffixIcon: InkWell(
                  onTap: loading
                      ? null
                      : () async {
                          setState(() => loading = true);
                          var response = await premblyPlugin.ghVerifyInternationalPassport(
                              number: _internationalPassportController.text);
                          print(response);

                          setState(() => loading = false);
                        }, // 国际护照验证处理器
                  child: Container(
                    width: 80,
                    padding: const EdgeInsets.all(8.0),
                    child: Center(
                      child: loading
                          ? const SizedBox(
                              width: 20,
                              height: 20,
                              child: CircularProgressIndicator(),
                            )
                          : const Text(
                              'Send',
                              style: TextStyle(
                                color: Colors.blue,
                                fontSize: 12,
                                fontWeight: FontWeight.w500,
                              ),
                            ),
                    ),
                  ),
                ),
              ),
            ),
          ],
        ),
      ),
    );
  }
}

注意:上述示例仅用于展示prembly_flutter的一些功能,您可以阅读更多文档了解更多信息。


更多关于Flutter插件prembly_flutter的特性与使用方法的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter插件prembly_flutter的特性与使用方法的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


prembly_flutter 是一个Flutter插件,它可能用于与Prembly的API进行集成,用于身份验证、KYC(Know Your Customer)或其他相关功能。由于这个插件可能不是广泛使用的插件,因此在使用之前,建议你先了解其功能、使用方法和兼容性。

以下是一些探索和使用 prembly_flutter 插件的步骤:

1. 查找插件文档

  • 首先,检查插件是否有官方文档。通常,插件的文档会提供详细的安装、配置和使用说明。
  • 你可以通过以下方式查找文档:
    • 访问插件的GitHub仓库(如果有的话)。
    • 查看插件的 pub.dev 页面,通常插件发布在 pub.dev 上时会附带文档。

2. 安装插件

  • 在你的 pubspec.yaml 文件中添加 prembly_flutter 插件的依赖项:
    dependencies:
      flutter:
        sdk: flutter
      prembly_flutter: ^<version>
    
  • 运行 flutter pub get 来安装插件。

3. 导入插件

  • 在使用插件的地方导入它:
    import 'package:prembly_flutter/prembly_flutter.dart';
    

4. 初始化插件

  • 根据插件的文档,初始化插件。可能需要在 main.dart 中调用初始化方法:
    void main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await PremblyFlutter.initialize();
      runApp(MyApp());
    }
    

5. 使用插件功能

  • 根据插件的功能,调用相应的方法。例如,如果你使用该插件进行身份验证,可能会有一个方法如下:
    var result = await PremblyFlutter.verifyIdentity(data);
    print(result);
    
  • 确保你传递正确的参数,并根据返回的结果进行处理。

6. 处理错误和异常

  • 在使用插件时,处理可能出现的错误和异常。例如:
    try {
      var result = await PremblyFlutter.verifyIdentity(data);
      print(result);
    } catch (e) {
      print('Error: $e');
    }
回到顶部