1 | initial version |
To implement flutterlocalnotifications on iOS, follow these steps:
import UserNotifications
class NotificationHelper {
static func requestAuthorization() {
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { (granted, error) in
if granted {
print("Notification permission granted")
} else {
print("Notification permission denied")
}
}
}
static func showNotification(title: String, body: String, timeInSeconds: TimeInterval) {
let content = UNMutableNotificationContent()
content.title = title
content.body = body
content.sound = UNNotificationSound.default
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: timeInSeconds, repeats: false)
let request = UNNotificationRequest(identifier: "notification", content: content, trigger: trigger)
UNUserNotificationCenter.current().add(request) { (error) in
if error != nil {
print("Error showing notification: \(error!.localizedDescription)")
}
}
}
}
This code defines a helper class with two static methods: requestAuthorization()
and showNotification()
. The first method requests permission to show notifications, while the second method creates and shows a notification with a given title, body, and time to trigger.
pubspec.yaml
file, add the following dependency:flutter_local_notifications: ^5.0.0+1
main.dart
file, add the following code:import 'package:flutter_local_notifications/flutter_local_notifications.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await FlutterLocalNotificationsPlugin().initialize(
InitializationSettings(
iOS: IOSInitializationSettings(
requestAlertPermission: false,
requestBadgePermission: false,
requestSoundPermission: false,
),
),
);
runApp(MyApp());
}
This code initializes the flutterlocalnotifications plugin and sets up the required permissions for iOS.
NotificationHelper.showNotification()
:NotificationHelper.showNotification('Title', 'Body', 10);
This code shows a notification with the title 'Title', body 'Body', and triggers after 10 seconds.
That's it! Your Flutter app can now show local notifications on iOS.