flutter_y_ble 1.0.15
flutter_y_ble: ^1.0.15 copied to clipboard
A new Flutter Bluetooth plugin.
example/lib/main.dart
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:flutter_y_ble/ble_manager.dart';
// import 'package:flutter_y_permission/permission.dart';
// import 'package:flutter_y_permission/permission_request_type.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String _platformVersion = 'Unknown';
@override
void initState() {
super.initState();
initPlatformState();
}
// Platform messages are asynchronous, so we initialize in an async method.
Future<void> initPlatformState() async {
String platformVersion;
// Platform messages may fail, so we use a try/catch PlatformException.
// We also handle the message potentially returning null.
// If the widget was removed from the tree while the asynchronous platform
// message was in flight, we want to discard the reply rather than calling
// setState to update our non-existent appearance.
if (!mounted) return;
}
void _connect() async{
// //android
// var result= await BleManager.getInstance().connectDevice("A0:B7:65:FE:45:96");
//ios
var result= await BleManager.getInstance().connectDevice("E1D34126-A195-120C-24C6-FDB2E655DF14");
print(result);
var result1=await BleManager.getInstance().getServices();
for(var item in result1!){
print("serviceUuid:");
print(item.serviceUuid);
print("characteristicsUuid:");
print(item.characteristicsUuid);
}
//ios
var result2=await BleManager.getInstance().readByWait("712EEFE8-CAFC-4BFB-AD34-BA1A079EC7B1","00001100-317B-4B94-9513-FD87BE4801D3");
print(result2.data);
BleManager.getInstance().readNotifyMessage("712EEFE8-CAFC-4BFB-AD34-BA1A079EC7B1", "00001105-317B-4B94-9513-FD87BE4801D3", (bleMessage){
print("来到这里:${bleMessage.data}");
// if(Utils.isIPAddress(bleMessage.data)){
// print("连接成功");
// }else{
// print("连接失败");
// }
},false);
var writeRes=await BleManager.getInstance().writeByWait("yang", "712EEFE8-CAFC-4BFB-AD34-BA1A079EC7B1", "00001101-317B-4B94-9513-FD87BE4801D3");
print("成功1:${writeRes.isSuccess}");
var writeRes1=await BleManager.getInstance().writeByWait("123", "712EEFE8-CAFC-4BFB-AD34-BA1A079EC7B1", "00001102-317B-4B94-9513-FD87BE4801D3");
print("成功2:${writeRes1.isSuccess}");
var writeRes2=await BleManager.getInstance().writeByWait("e0b0ab51581d5b202a8188c8dbd3da49", "712EEFE8-CAFC-4BFB-AD34-BA1A079EC7B1", "00001103-317B-4B94-9513-FD87BE4801D3",isHex: true);
print("成功3:${writeRes2.isSuccess}");
var writeRes3=await BleManager.getInstance().writeByWait("e0b0ab51581d5b202a8188c8dbd3da49", "712EEFE8-CAFC-4BFB-AD34-BA1A079EC7B1", "00001104-317B-4B94-9513-FD87BE4801D3",isHex: true);
print("成功4:${writeRes3.isSuccess}");
var writeRes4=await BleManager.getInstance().writeByWait("http//test.service", "712EEFE8-CAFC-4BFB-AD34-BA1A079EC7B1", "00001106-317B-4B94-9513-FD87BE4801D3");
print("成功5:${writeRes4.isSuccess}");
// var result2=await BleManager.getInstance().readByWait("712eefe8-cafc-4bfb-ad34-ba1a079ec7b1","00001100-317b-4b94-9513-fd87be4801d3");
// print(result2.data);
// BleManager.getInstance().readNotifyMessage("712eefe8-cafc-4bfb-ad34-ba1a079ec7b1", "00001105-317b-4b94-9513-fd87be4801d3", (bleMessage){
// // if(Util.isIPAddress(bleMessage.data)){
// // print("连接成功");
// // }else{
// // print("连接失败");
// // }
//
// print("来到这里:${bleMessage.data}");
// },false);
// //
// //
// var writeRes=await BleManager.getInstance().writeByWait("yang", "712eefe8-cafc-4bfb-ad34-ba1a079ec7b1", "00001101-317b-4b94-9513-fd87be4801d3");
// print("成功1:${writeRes.isSuccess}");
// var writeRes1=await BleManager.getInstance().writeByWait("123", "712eefe8-cafc-4bfb-ad34-ba1a079ec7b1", "00001102-317b-4b94-9513-fd87be4801d3");
// print("成功2:${writeRes1.isSuccess}");
// var writeRes2=await BleManager.getInstance().writeByWait("e0b0ab51581d5b202a8188c8dbd3da49", "712eefe8-cafc-4bfb-ad34-ba1a079ec7b1", "00001103-317b-4b94-9513-fd87be4801d3",isHex: true);
// print("成功3:${writeRes2.isSuccess}");
// var writeRes3=await BleManager.getInstance().writeByWait("e0b0ab51581d5b202a8188c8dbd3da49", "712eefe8-cafc-4bfb-ad34-ba1a079ec7b1", "00001104-317b-4b94-9513-fd87be4801d3",isHex: true);
// print("成功4:${writeRes3.isSuccess}");
// var writeRes4=await BleManager.getInstance().writeByWait("http//test.service", "712eefe8-cafc-4bfb-ad34-ba1a079ec7b1", "00001106-317b-4b94-9513-fd87be4801d3");
// print("成功5:${writeRes4.isSuccess}");
}
void _start() async{
// var value=await Permission.request(PermissionRequestType.bluetooth);
// print(value);
BleManager.getInstance().startScan((bleBeans){
for(var item in bleBeans){
print(item.name);
print(item.localName);
print(item.id);
}
},scanTime: 5,onScanDone:(){
print("搜索完成");
_connect();
} );
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Plugin example app'),
),
body: ElevatedButton(onPressed: () {
_start();
}, child: Text("大姐夫对哦甲方代付"),
),
),
);
}
}