diff --git a/lib/main.dart b/lib/main.dart index f89ffb7..f8103d7 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -3,12 +3,16 @@ import 'dart:ui'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; +import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'profile_screen.dart'; import 'shared_preferences_provider.dart'; import 'status_page.dart'; -void main() { +Future main() async { + WidgetsFlutterBinding.ensureInitialized(); + // Load environment variables + await dotenv.load(); runApp( ChangeNotifierProvider( create: (_) => SharedPreferencesProvider(), diff --git a/lib/status_page.dart b/lib/status_page.dart index 01bd8ee..19e5c76 100644 --- a/lib/status_page.dart +++ b/lib/status_page.dart @@ -6,6 +6,7 @@ import 'package:provider/provider.dart'; import 'package:web_socket_channel/web_socket_channel.dart'; import 'package:fluttertoast/fluttertoast.dart'; import 'package:http/http.dart' as http; +import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'shared_preferences_provider.dart'; @@ -24,6 +25,8 @@ class StatusPageState extends State with WidgetsBindingObserver { late StreamController controller; List> messages = []; final Map _imageCache = {}; + final wsBaseUrl = dotenv.env['WS_BASE_URL']; + final restBaseUrl = dotenv.env['REST_BASE_URL']; @override void initState() { @@ -34,8 +37,7 @@ class StatusPageState extends State with WidgetsBindingObserver { void _initializeWebSocket() { channel = WebSocketChannel.connect( - Uri.parse('wss://api.pogdark.com:8889/ws'), - //Uri.parse('ws://localhost:8080/ws'), + Uri.parse('$wsBaseUrl/ws'), ); controller = StreamController.broadcast(); @@ -89,7 +91,7 @@ class StatusPageState extends State with WidgetsBindingObserver { }; //final url = Uri.parse('http://localhost:8080/set'); - final url = Uri.parse('https://api.pogdark.com:8889/set'); + final url = Uri.parse('$restBaseUrl/set'); try { final response = await http.post( url, diff --git a/pubspec.yaml b/pubspec.yaml index b391f9c..c4c8a56 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -38,6 +38,7 @@ dependencies: uuid: ^4.4.2 fluttertoast: ^8.2.8 http: ^1.2.2 + flutter_dotenv: ^5.0.3 # The following adds the Cupertino Icons font to your application.