witsystem_core 0.1.7 witsystem_core: ^0.1.7 copied to clipboard
witsystem 核心包,提供核心功能
example/lib/main.dart
import 'package:flutter/material.dart';
import 'package:witsystem_core/generated/l10n.dart';
import 'package:witsystem_core/mqtt/WitsMqtt.dart';
import 'package:witsystem_core/pages/code/Scan.dart';
import 'package:witsystem_core/pages/witDialog/DialogCenterInputWidget.dart';
import 'package:witsystem_core/permission/WitsPermission.dart';
import 'package:witsystem_core/witsystem_core.dart';
import 'package:image_picker/image_picker.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return const MaterialApp(localizationsDelegates: [
S.delegate,
], home: MyApp2());
}
}
class MyApp2 extends StatefulWidget {
const MyApp2({Key? key}) : super(key: key);
@override
State<MyApp2> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp2> {
@override
void initState() {
super.initState();
initPlatformState();
}
// Platform messages are asynchronous, so we initialize in an async method.
Future<void> initPlatformState() async {
//初始化核心库
await WitsystemCore.intstance(
appId: "smartf9f18d5fb2764825b74f81cac658b195",
appSecret: "8aa03f987f6448bf931aa5284a79b26c",
token: "open6815e73b76e24f5481db36cddcc80a7d1610376044955",
rsaParseKey:
"-----BEGIN PRIVATE KEY-----MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCQeyDGDOhzQbTpkcQ1hnuILAUadO7WgHjDSZSxwb3lTuyKe5OB2+nzkW1QV72Szg777JShj787j/zaKsyt7LExJCU50FQ8Dz6FL0rVgL60PZqAm+qiP56/5mH+zFfLfy4DC/PSZoSTsXbWB8HJJW2hLJlCx+CBQ4pRKBZMJBwBSp7GSBcrWpRB8Nus+S+koN6erA94faCtpUKSaH3TNkeQvoXfSapvNt+lEQzMd7UdTPoHAji8GAScYPBq+QFATDCdtrmjvz8bTIDbu3Nr/CzJ625DQt8QirP0dA45bBd6vidG/P7qknIr+mlBvIEqNpVmzkMPfT6zsb7Cn+vvZKrTAgMBAAECggEAc2noRE0LYwaZ/frzQc6r35tKeFfwcmkuDtI4dcbOat8hFX6h1ppVyLvjFssAJMV2MshJ8sVhfbMHyT9nQYhSA29cTVKd91w2FS4yGVs++7w6L4JdbD5mEeV3YpLZjzWJC+YAX5KFVXXt+As6QfQkHxwBUddY/+l0FGBxb2Fo/Z3q0uHxA9zPQ/9DW610MHs/i/KH6BZDBEvIXEePUVoBX7Or+kZ/xk2421anaiAfq/JSBZFiCa62AVfIossOaebywTz9nICez81uiJuEL0mYABw/jrDIdCM4ZeIHS8gm3mZxrIcup6C564o8z12nHCsBaKbZZMOOVJ1KTyAFI1I0AQKBgQDGBVQyPkSOlO42eN183NcLdMhjAXVjpaX+eE+WfyNBm7+DgW3fzdmlS23SlfRqSFjYP69KQNu/p5EeSyn1NGgg2xeW2F0FOEM/cXCbgEUOz3baQcmuM0wtU7FaaBG37J+J3/2SRgCpZYcl72UTF3N3TSqePcU6B2EtfuRAdVzZrQKBgQC6yLbZKWtdxQl+k/KfiyfKXZh3ceCYSQUmfOoPQ+lO6DfpGvOa/3+oT4wOFP1MVm4yF5TFqhjoFer/17tnK91ZbAL5rBi0LF1zEVzutsII9nHDXY9MOVp5cG+MKTgDW1rv7jsRB7O7kip1lS9q+VLvD2199KDsJOdDHujzILkmfwKBgDC3QOZ3cTBOrWgTRhIg1nrICUBqLHIOX48CFDpnHspWQcBdiCVmJCRJMUR8hbvb/pd822f+GtHErKvyO+lKMk/a9quyoPfWxpyGEPkAjny9R3UceDx1/EiubVRbg/hmqz0lMOHafPEvvBb2FTykKVDxWAnEEpBbHmot7IN7HBOlAoGAO7v69gJQCuH7wlZQToOzSv2ZyAFMQYeAtSlXtWATmh+b2dm7tIMncU1XTh2aUDKH9U8jTf+zDW4NBJsanMkjdficDvrhv6U8kZMo9FLQRQuDoGYocMkazSGPGvUHq9MohvjaPP0IluEM4SO/0WdBBaEadCCq4jp/FzEocLCzZcMCgYBOLGrgg+hnYZuA/9StPC4xWbKprfDElFiXclQXRjDK5jVovxkgx9IWODn3H+FWOX39uS0EMUlo6gQrGb+OrsLjwbabUu1Gb6lk4/H2j1NqdKQ4nHPkbIclm8la8peTnCecdn55q7VhwozhN8QJ0JgcOPHBoudhCIQvG4Xm/wbzFA==-----END PRIVATE KEY-----");
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Plugin example app'),
),
body: Column(
children: [
FloatingActionButton(
onPressed: () async {
WitsPermission.blePermission();
},
child: const Center(child: Text("网络请求")),
),
MaterialButton(
onPressed: () {
const Scan().start();
},
child: Text("扫码")),
MaterialButton(
onPressed: () async {
final ImagePicker _picker = ImagePicker();
//final XFile? image = await _picker.pickImage(source: ImageSource.gallery);
final XFile? photo = await _picker.pickImage(source: ImageSource.camera);
},
child: Text("选择图片")),
MaterialButton(
onPressed: () async {
WitsMqtt().connect();
},
child: Text("mqtt连接")),
MaterialButton(
onPressed: () async {
WitsMqtt().disconnected();
},
child: Text("mqtt断开连接")),
MaterialButton(
onPressed: () {
showDialog(
context: context,
barrierDismissible: true,
builder: (BuildContext context) {
return DialogCenterInputWidget(
title: "测试",
contentHint: "测试",
outSideDismissible: true,
affirmTextColor: Colors.red,
onPressed: (bool tag, String text) {
},
);
});
},
child: Text("输出弹出框")),
],
),
);
}
}