packet_android_sdk 1.2.2 copy "packet_android_sdk: ^1.2.2" to clipboard
packet_android_sdk: ^1.2.2 copied to clipboard

PlatformAndroid

A new Flutter Android packet sdk.

example/lib/main.dart

import 'dart:async';

import 'package:flutter/material.dart';
import 'package:packet_android_sdk/packet_sdk.dart';

void main() {
  runApp(const MyApp());
}

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Packet Sdk',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const StopwatchPage(),
    );
  }
}

class StopwatchPage extends StatefulWidget {
  const StopwatchPage({super.key});

  @override
  State<StopwatchPage> createState() => _StopwatchPageState();
}

class _StopwatchPageState extends State<StopwatchPage> {
  final packetSdkPlugin = PacketSdk();

  @override
  void initState() {
    super.initState();
    packetSdkPlugin.initialize("app-key");
    packetSdkPlugin.setEnableLogging(true);
  }

  String _content = "";

  Future<void> _start() async {
    packetSdkPlugin.setStatusListener((code, msg) {
      setState(() {
        _content = "code: $code, msg: $msg";
      });
    });
    packetSdkPlugin.start();
  }

  void _stop() {
    packetSdkPlugin.stop();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Flutter Packet Sdk'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Text(
              _content,
              style: const TextStyle(fontSize: 16),
            ),
            const SizedBox(height: 20),
            Row(
              mainAxisAlignment: MainAxisAlignment.spaceEvenly,
              children: [
                ElevatedButton(
                  onPressed: _start,
                  child: const Text('Start'),
                ),
                ElevatedButton(
                  onPressed: _stop,
                  child: const Text('Stop'),
                ),
              ],
            ),
          ],
        ),
      ),
    );
  }
}