From 4d7ec9cdcff156df9210595b919cda4b021e0f17 Mon Sep 17 00:00:00 2001 From: Guy Luz Date: Sat, 17 Feb 2024 14:51:50 +0200 Subject: [PATCH] Working on iOS support --- android/app/build.gradle | 3 ++- android/app/src/debug/AndroidManifest.xml | 1 + android/app/src/main/AndroidManifest.xml | 2 ++ android/app/src/profile/AndroidManifest.xml | 1 + lib/domain/cbj_comp/cbj_comp_value_objects.dart | 1 + lib/domain/home_user/home_user_value_objects.dart | 1 + .../connection_service/hub_connection_service.dart | 2 +- lib/infrastructure/network_utilities_flutter.dart | 11 +++++++---- .../security_bear_connection_repository.dart | 4 ++-- pubspec.yaml | 2 -- windows/flutter/generated_plugin_registrant.cc | 3 +++ windows/flutter/generated_plugins.cmake | 1 + 12 files changed, 22 insertions(+), 10 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index fe36f8a3..a6fe8ddd 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -34,7 +34,8 @@ if (keystorePropertiesFile.exists()) { android { namespace "com.cybearjinni.app" - compileSdkVersion flutter.compileSdkVersion + // compileSdkVersion flutter.compileSdkVersion + compileSdkVersion 34 ndkVersion flutter.ndkVersion compileOptions { diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml index c2b0ccf3..e2840fa8 100644 --- a/android/app/src/debug/AndroidManifest.xml +++ b/android/app/src/debug/AndroidManifest.xml @@ -21,4 +21,5 @@ + diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 020e5df0..05450e91 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -21,6 +21,8 @@ + + + diff --git a/lib/domain/cbj_comp/cbj_comp_value_objects.dart b/lib/domain/cbj_comp/cbj_comp_value_objects.dart index 51d5680d..bf4e491f 100644 --- a/lib/domain/cbj_comp/cbj_comp_value_objects.dart +++ b/lib/domain/cbj_comp/cbj_comp_value_objects.dart @@ -5,6 +5,7 @@ import 'package:cybearjinni/domain/cbj_comp/cbj_comp_validators.dart'; import 'package:dartz/dartz.dart'; import 'package:flutter/foundation.dart'; import 'package:kt_dart/collection.dart'; +// ignore: depend_on_referenced_packages import 'package:uuid/uuid.dart'; @immutable diff --git a/lib/domain/home_user/home_user_value_objects.dart b/lib/domain/home_user/home_user_value_objects.dart index a4ca35da..7e36a112 100644 --- a/lib/domain/home_user/home_user_value_objects.dart +++ b/lib/domain/home_user/home_user_value_objects.dart @@ -3,6 +3,7 @@ import 'package:cybearjinni/domain/home_user/home_user_failures.dart'; import 'package:cybearjinni/domain/home_user/home_user_validators.dart'; import 'package:dartz/dartz.dart'; import 'package:flutter/foundation.dart'; +// ignore: depend_on_referenced_packages import 'package:uuid/uuid.dart'; @immutable diff --git a/lib/infrastructure/connection_service/hub_connection_service.dart b/lib/infrastructure/connection_service/hub_connection_service.dart index 6b115813..0717f2ed 100644 --- a/lib/infrastructure/connection_service/hub_connection_service.dart +++ b/lib/infrastructure/connection_service/hub_connection_service.dart @@ -198,7 +198,7 @@ class _HubConnectionService implements ConnectionsService { // TODO: Search for hub final Stream devicesWithPort = - HostScanner.scanDevicesForSinglePort( + HostScannerService.instance.scanDevicesForSinglePort( subnet, hubPort, diff --git a/lib/infrastructure/network_utilities_flutter.dart b/lib/infrastructure/network_utilities_flutter.dart index a83079c0..552177b4 100644 --- a/lib/infrastructure/network_utilities_flutter.dart +++ b/lib/infrastructure/network_utilities_flutter.dart @@ -12,10 +12,10 @@ class NetworkUtilitiesFlutter extends NetworkUtilities { int? firstHostId, int? lastHostId, }) => - network_flutter.HostScannerFlutter.getAllPingableDevices( + network_flutter.HostScannerService.instance.getAllPingableDevices( subnet, - firstHostId: firstHostId ?? HostScanner.defaultFirstHostId, - lastHostId: lastHostId ?? HostScanner.defaultLastHostId, + firstHostId: firstHostId ?? HostScannerService.defaultFirstHostId, + lastHostId: lastHostId ?? HostScannerService.defaultLastHostId, ); @override @@ -24,13 +24,16 @@ class NetworkUtilitiesFlutter extends NetworkUtilities { required int port, required Duration timeout, }) => - network_flutter.PortScannerFlutter.connectToPort( + network_flutter.PortScannerService.instance.connectToPort( address: address, port: port, timeout: timeout, activeHostsController: StreamController(), ); + @override + Future configureNetworkTools(String dbDirectory) async => + configureNetworkToolsFlutter(dbDirectory); // TODO: Add support for mdns using for ios // mdnsSearch(){ diff --git a/lib/infrastructure/security_bear_client/security_bear_connection_repository.dart b/lib/infrastructure/security_bear_client/security_bear_connection_repository.dart index 67904fa2..0dc0fc2c 100644 --- a/lib/infrastructure/security_bear_client/security_bear_connection_repository.dart +++ b/lib/infrastructure/security_bear_client/security_bear_connection_repository.dart @@ -169,7 +169,7 @@ class _SecurityBearConnectionRepository logger.i('Security Bear subnet IP $subnet'); final Stream devicesWithPort = - HostScanner.scanDevicesForSinglePort( + HostScannerService.instance.scanDevicesForSinglePort( subnet, securityBearPort, resultsInAddressAscendingOrder: false, @@ -291,7 +291,7 @@ class _SecurityBearConnectionRepository logger.i('Security Bear subnet IP search $subnet'); final Stream devicesWithPort = - HostScanner.scanDevicesForSinglePort( + HostScannerService.instance.scanDevicesForSinglePort( subnet, securityBearPort, resultsInAddressAscendingOrder: false, diff --git a/pubspec.yaml b/pubspec.yaml index 0af31b92..1a5be47a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -144,8 +144,6 @@ dependencies: # Plugin for launching a URL timezone: ^0.9.2 url_launcher: ^6.2.1 - # Simple, fast generation of RFC4122 UUIDs. - uuid: ^4.2.1 # Get available wifi ssid list, user can connect to wifi with ssid and password, and create hotspot wifi_iot: ^0.3.18+1 # Scan for nearby visible WiFi access points. diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index aa29811a..8d2b1448 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -10,6 +10,7 @@ #include #include #include +#include #include #include @@ -22,6 +23,8 @@ void RegisterPlugins(flutter::PluginRegistry* registry) { registry->GetRegistrarForPlugin("FileSelectorWindows")); IsarFlutterLibsPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("IsarFlutterLibsPlugin")); + NsdWindowsPluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("NsdWindowsPluginCApi")); PermissionHandlerWindowsPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin")); UrlLauncherWindowsRegisterWithRegistrar( diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index acec95e5..e6dcb934 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -7,6 +7,7 @@ list(APPEND FLUTTER_PLUGIN_LIST connectivity_plus file_selector_windows isar_flutter_libs + nsd_windows permission_handler_windows url_launcher_windows )