Skip to content

Commit e0d8cbd

Browse files
KapdroidKapdroid
authored andcommitted
feat(network-checker): single utils in client
Signed-off-by: Kapdroid <kapdroid@Kapdroids-MacBook-Pro.local>
1 parent 24a6abf commit e0d8cbd

2 files changed

Lines changed: 25 additions & 0 deletions

File tree

lib/fa_flutter_api_client.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,4 @@ export 'src/api_options/api_options.dart';
1111
export 'src/interceptors/cache_interceptor.dart';
1212
export 'src/interceptors/cancel_token_interceptor.dart';
1313
export 'src/interceptors/refresh_token_interceptor.dart';
14+
export 'src/utils/network_checker.dart';

lib/src/utils/network_checker.dart

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import 'package:internet_connection_checker/internet_connection_checker.dart';
2+
3+
class NetworkConnectivityService {
4+
NetworkConnectivityService._internal()
5+
: connectionChecker = InternetConnectionChecker.createInstance(
6+
addresses: [
7+
AddressCheckOption(uri: Uri.parse('https://www.google.com')),
8+
AddressCheckOption(uri: Uri.parse('https://www.bing.com')),
9+
AddressCheckOption(uri: Uri.parse('https://www.amazon.com')),
10+
AddressCheckOption(uri: Uri.parse('https://www.cloudflare.com')),
11+
],
12+
);
13+
14+
static NetworkConnectivityService? _instance;
15+
16+
static NetworkConnectivityService get instance {
17+
_instance ??= NetworkConnectivityService._internal();
18+
return _instance!;
19+
}
20+
21+
final InternetConnectionChecker connectionChecker;
22+
23+
Future<bool> get isConnected => connectionChecker.hasConnection;
24+
}

0 commit comments

Comments
 (0)