added notification for tracking function and button to reset map position to current location

time
This commit is contained in:
Nico
2025-05-17 17:43:03 +02:00
parent 895bcf1d5c
commit 94aebeafd0
10 changed files with 169 additions and 19 deletions

View File

@@ -0,0 +1,45 @@
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
class NotificationService {
final notifiactionPlugin = FlutterLocalNotificationsPlugin();
bool _isInitialized = false;
bool get isInitialized => _isInitialized;
Future<void> initNotification() async {
if (_isInitialized) return;
await notifiactionPlugin.resolvePlatformSpecificImplementation<AndroidFlutterLocalNotificationsPlugin>()!.requestNotificationsPermission();
const initSettingsAndroid = AndroidInitializationSettings(
'@mipmap/ic_launcher',
);
const initSettings = InitializationSettings(android: initSettingsAndroid);
await notifiactionPlugin.initialize(initSettings);
_isInitialized = true;
}
NotificationDetails notificationDetails() {
return const NotificationDetails(
android: AndroidNotificationDetails(
"tracking0",
"tracking ongoing",
importance: Importance.low,
priority: Priority.low,
ongoing: true,
),
);
}
Future<void> showNotification({int id = 0, String? title}) async {
return notifiactionPlugin.show(id, title, "", notificationDetails());
}
Future<void> deleteNotification({id = 0}) async {
await notifiactionPlugin.cancel(id);
}
}