added notification for tracking function and button to reset map position to current location
time
This commit is contained in:
45
lib/services/notification_service.dart
Normal file
45
lib/services/notification_service.dart
Normal 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);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user