You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Dart
		
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Dart
		
	
| import 'dart:io';
 | |
| 
 | |
| import 'package:flutter/cupertino.dart';
 | |
| import 'package:mohem_flutter_app/app_state/app_state.dart';
 | |
| import 'package:wifi_iot/wifi_iot.dart';
 | |
| 
 | |
| class HmgConnectionProvider extends ChangeNotifier {
 | |
|   bool isConnectedToHMG = false;
 | |
| 
 | |
|   Future<bool> checkHmgNetworkConnectivity() async {
 | |
|     if (await WiFiForIoTPlugin.getSSID() == AppState().getMohemmWifiSSID) {
 | |
|       isConnectedToHMG = true;
 | |
|     } else {
 | |
|       isConnectedToHMG = false;
 | |
|     }
 | |
|     AppState().isConnectedToHMG = isConnectedToHMG;
 | |
|     return isConnectedToHMG;
 | |
|   }
 | |
| 
 | |
|   void connectWithHmgNetwork() async {
 | |
|     try {
 | |
|       bool isConnected = await WiFiForIoTPlugin.connect("MOHEMM-CONNECT", password: "0987654321", joinOnce: Platform.isIOS ? false : true, security: NetworkSecurity.WPA, withInternet: false);
 | |
| 
 | |
|       if (isConnected) {
 | |
|         await WiFiForIoTPlugin.forceWifiUsage(true);
 | |
|         await Future.delayed(const Duration(seconds: 2));
 | |
|         isConnectedToHMG=true;
 | |
| 
 | |
|       }
 | |
|     } catch (e) {
 | |
|       isConnectedToHMG = false;
 | |
|       AppState().isConnectedToHMG = isConnectedToHMG;
 | |
|       print("----------------o----");
 | |
|       print(e);
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   Future<bool> closeWifiRequest() async {
 | |
|     if (Platform.isAndroid) {
 | |
|       await WiFiForIoTPlugin.forceWifiUsage(false);
 | |
|     }
 | |
|     isConnectedToHMG = false;
 | |
|     AppState().isConnectedToHMG = isConnectedToHMG;
 | |
|     return await WiFiForIoTPlugin.disconnect();
 | |
|   }
 | |
| }
 |