Improve example app for system connected devices (#123)
* Improve example app for system connected devices * Add print when no filter is set for system devices --------- Co-authored-by: Foti Dim <fdimanidis@gmail.com>
This commit is contained in:
@@ -293,6 +293,8 @@ private class BleCentralDarwin: NSObject, UniversalBlePlatformChannel, CBCentral
|
||||
func getSystemDevices(withServices: [String], completion: @escaping (Result<[UniversalBleScanResult], Error>) -> Void) {
|
||||
var servicesFilter = withServices
|
||||
if servicesFilter.isEmpty {
|
||||
print("No services filter was set for getting system connected devices. Using default services...")
|
||||
|
||||
// Add several generic services
|
||||
servicesFilter = ["1800", "1801", "180A", "180D", "1810", "181B", "1808", "181D", "1816", "1814", "181A", "1802", "1803", "1804", "1815", "1805", "1807", "1806", "1848", "185E", "180F", "1812", "180E", "1813"]
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:universal_ble/universal_ble.dart';
|
||||
import 'package:universal_ble_example/data/mock_universal_ble.dart';
|
||||
@@ -72,11 +73,19 @@ class _MyAppState extends State<MyApp> {
|
||||
}
|
||||
|
||||
Future<void> _getSystemDevices() async {
|
||||
// For macOS and iOS, it is recommended to set a filter to get system devices
|
||||
if (defaultTargetPlatform == TargetPlatform.macOS ||
|
||||
defaultTargetPlatform == TargetPlatform.iOS &&
|
||||
(scanFilter?.withServices ?? []).isEmpty) {
|
||||
showSnackbar(
|
||||
"No services filter was set for getting system connected devices. Using default services...");
|
||||
}
|
||||
|
||||
List<BleDevice> devices = await UniversalBle.getSystemDevices(
|
||||
withServices: scanFilter?.withServices,
|
||||
);
|
||||
if (devices.isEmpty) {
|
||||
showSnackbar("No Connected Devices Found");
|
||||
showSnackbar("No System Connected Devices Found");
|
||||
}
|
||||
setState(() {
|
||||
_bleDevices.clear();
|
||||
@@ -191,7 +200,7 @@ class _MyAppState extends State<MyApp> {
|
||||
),
|
||||
if (BleCapabilities.supportsConnectedDevicesApi)
|
||||
PlatformButton(
|
||||
text: 'Connected Devices',
|
||||
text: 'System Devices',
|
||||
onPressed: _getSystemDevices,
|
||||
),
|
||||
PlatformButton(
|
||||
|
||||
Reference in New Issue
Block a user