Для создания нескольких локальных уведомлений на Swift вы можете использовать класс UNUserNotificationCenter из фреймворка UserNotifications. Вот подробное руководство по созданию нескольких локальных уведомлений на Swift:
1. Импортирование фреймворка UserNotifications:
import UserNotifications
2. Запросите разрешение пользователя на отправку уведомлений, обычно это делается в методе didFinishLaunchingWithOptions в AppDelegate или при первом запуске приложения:
func requestNotificationAuthorization() { UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { success, error in if let error = error { print("Ошибка при запросе разрешения на уведомления: (error.localizedDescription)") } } } // Вызов метода requestNotificationAuthorization() requestNotificationAuthorization()
3. Создайте функцию для создания уведомлений:
func scheduleNotification(at date: Date, withTitle title: String, andBody body: String) { // Создание контента уведомления let content = UNMutableNotificationContent() content.title = title content.body = body content.sound = UNNotificationSound.default // Настройка времени выполнения уведомления let calendar = Calendar(identifier: .gregorian) let components = calendar.dateComponents([.year, .month, .day, .hour, .minute], from: date) let trigger = UNCalendarNotificationTrigger(dateMatching: components, repeats: false) // Создание и назначение идентификатора уведомления let identifier = UUID().uuidString let request = UNNotificationRequest(identifier: identifier, content: content, trigger: trigger) // Запланировать уведомление UNUserNotificationCenter.current().add(request) { (error) in if let error = error { print("Ошибка при планировании уведомления: (error.localizedDescription)") } } }
4. Вызовите функцию scheduleNotification() для каждого уведомления, которое вы хотите запланировать:
// Пример использования функции scheduleNotification() let title = "Напоминание" let body = "Напоминаю вам о встрече в 15:00" let date = Calendar.current.date(bySettingHour: 15, minute: 0, second: 0, of: Date())! scheduleNotification(at: date, withTitle: title, andBody: body)
Теперь вы можете создавать несколько локальных уведомлений на Swift. Каждое уведомление будет содержать заголовок, текст и время выполнения.