flutter_kin_sdk 0.2.1 copy "flutter_kin_sdk: ^0.2.1" to clipboard
flutter_kin_sdk: ^0.2.1 copied to clipboard

discontinued

A flutter Kin SDK plugin to create, import accounts and transferring Kin.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_kin_sdk/flutter_kin_sdk.dart';
import 'package:flutter_kin_sdk/lib_utils.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  String _platformVersion = 'Unknown';
  String firstPublicAddress;
  String secondPublicAddress;
  String recoveryString;
  int count = 0;

  @override
  void initState() {
    super.initState();
    initPlatformState();
  }

  // Platform messages are asynchronous, so we initialize in an async method.
  void initPlatformState() async {
    FlutterKinSdk.infoStream.stream.listen((data) async {
      streamReceiver(data);
    }, onError: (error){
      throw PlatformException(code: error.code, message: error.type, details: error.message);
    });

    FlutterKinSdk.balanceStream.stream.listen(
        (BalanceReport balanceReport) async {
      if (balanceReport.publicAddress == firstPublicAddress) {
        print(balanceReport.amount);
      }
    });

    FlutterKinSdk.initKinClient("wBu7");
  }

  void streamReceiver(Info info) async {
    switch (info.type) {
      case FlutterKinSDKConstans.INIT_KIN_CLIENT:
        print(info.message);
        firstPublicAddress = await FlutterKinSdk.createAccount();
        secondPublicAddress = await FlutterKinSdk.createAccount();
        break;
      case FlutterKinSDKConstans.CREATE_ACCOUNT_ON_PLAYGROUND_BLOCKCHAIN:
        print(info.type + " Wallet: " + info.value);
        count++;
        if (count > 1){
          FlutterKinSdk.sendTransaction(firstPublicAddress, secondPublicAddress, 100, "some", 1000);
        }
        break;
      case FlutterKinSDKConstans.DELETE_ACCOUNT:
        print(info.message);
        break;
      case FlutterKinSDKConstans.SEND_TRANSACTION:
        print(info.message + " Amount: " + info.value);
        FlutterKinSdk.fund(firstPublicAddress, 300);
        break;
      case FlutterKinSDKConstans.SEND_WHITELIST_TRANSACTION:
        print(info.message + " Amount: " + info.value);
        break;
      case FlutterKinSDKConstans.PAYMENT_EVENT:
        print(info.message + " Amount: " + info.value);
        print(await FlutterKinSdk.getAccountBalance(firstPublicAddress));
        print(await FlutterKinSdk.getAccountBalance(secondPublicAddress));
        break;
      case FlutterKinSDKConstans.FUND:
        print(info.message + " Amount: " + info.value);
        print(await FlutterKinSdk.getAccountBalance(firstPublicAddress));
        break;
    }
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Plugin example app'),
        ),
        body: Center(
          child: Text('Running on: $_platformVersion\n'),
        ),
      ),
    );
  }
}
0
likes
30
pub points
0%
popularity

Publisher

unverified uploader

A flutter Kin SDK plugin to create, import accounts and transferring Kin.

Homepage

License

AGPL-3.0 (LICENSE)

Dependencies

flutter

More

Packages that depend on flutter_kin_sdk