@@ -11,6 +11,7 @@ import 'package:flutter_local_notifications/flutter_local_notifications.dart';
1111import 'package:geolocator/geolocator.dart' ;
1212import 'package:logging/logging.dart' ;
1313import 'package:shared_preferences/shared_preferences.dart' ;
14+ import 'package:off_chat/src/features/profile/domain/user_model.dart' ;
1415import 'package:off_chat/src/core/notifications/notification_service.dart' ;
1516
1617Future <void > initializeBackgroundService () async {
@@ -87,8 +88,11 @@ Future<void> _startServiceLogic(
8788 BLEAdvertiser advertiser,
8889) async {
8990 final prefs = await SharedPreferences .getInstance ();
90- String currentName = prefs.getString ('advertising_name_v2' ) ?? "BLE Node" ;
91- bool advertisingOn = false ;
91+ final user = await UserModel .load ();
92+
93+ String currentName = prefs.getString ('advertising_name_v2' ) ?? user? .username ?? "BLE Node" ;
94+ bool advertisingOn = user? .isOnboarded ?? false ;
95+
9296 double currentLat = 0.0 , currentLon = 0.0 ;
9397 bool isOnline = false , isAdUpdating = false , needsTrailingUpdate = false ;
9498 DateTime lastAdStartTime = DateTime .fromMillisecondsSinceEpoch (0 );
@@ -164,6 +168,12 @@ Future<void> _startServiceLogic(
164168 // Start Discovery Engine
165169 BLEDiscoverer ().start (service, isar, myStableId);
166170
171+ // Initial Ad Start
172+ if (advertisingOn) {
173+ log.info ('Auto-starting advertising for onboarded user: $currentName ' );
174+ updateAd ();
175+ }
176+
167177 Timer .periodic (const Duration (minutes: 2 ), (_) => MessageHandler .checkExpiredMessages ());
168178
169179 service.on ('stopService' ).listen ((_) async {
0 commit comments