Receive advertisement events on web (#63)

* Fix web manufacturer discovery

* Minor Fixes

* Cleanups

* Add canWatchAdvertisements api

* Improve Cleanups

* Improve code level documentation

* Improve documentation

---------

Co-authored-by: Foti Dim <fdimanidis@gmail.com>
This commit is contained in:
Rohit Sangwan
2024-07-19 14:09:49 +05:30
committed by GitHub
parent c0c678c735
commit 0d6b612497
11 changed files with 136 additions and 67 deletions
+3 -2
View File
@@ -1,5 +1,7 @@
// ignore_for_file: use_build_context_synchronously
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:universal_ble/universal_ble.dart';
import 'package:universal_ble_example/data/capabilities.dart';
@@ -50,8 +52,7 @@ class _MyAppState extends State<MyApp> {
};
UniversalBle.onScanResult = (result) {
// debugPrint("BleDevice: ${result.name} ${result.services}");
// debugPrint("${result.name} ${result.manufacturerData}");
log(result.toString());
int index = _bleDevices.indexWhere((e) => e.deviceId == result.deviceId);
if (index == -1) {
_bleDevices.add(result);
@@ -74,6 +74,7 @@ class _ScanFilterWidgetState extends State<ScanFilterWidget> {
ScanFilter(
withServices: serviceUUids,
withNamePrefix: namePrefixes,
withManufacturerData: manufacturerDataFilters,
),
);
ScaffoldMessenger.of(context).showSnackBar(
@@ -93,16 +93,20 @@ class _PeripheralDetailPageState extends State<PeripheralDetailPage> {
}
Future<void> _discoverServices() async {
var services = await UniversalBle.discoverServices(widget.deviceId);
print('${services.length} services discovered');
discoveredServices.clear();
setState(() {
discoveredServices = services;
});
try {
var services = await UniversalBle.discoverServices(widget.deviceId);
print('${services.length} services discovered');
discoveredServices.clear();
setState(() {
discoveredServices = services;
});
if (kIsWeb) {
_addLog("DiscoverServices",
'${services.length} services discovered,\nNote: Only services added in ScanFilter will be discovered');
if (kIsWeb) {
_addLog("DiscoverServices",
'${services.length} services discovered,\nNote: Only services added in ScanFilter will be discovered');
}
} catch (e) {
_addLog("DiscoverServicesError", e);
}
}
+1 -1
View File
@@ -402,7 +402,7 @@ packages:
path: ".."
relative: true
source: path
version: "0.11.0"
version: "0.11.1"
vector_math:
dependency: transitive
description: