UNMutableNotificationContent

Panther·2021년 8월 17일
0
post-custom-banner

https://developer.apple.com/documentation/usernotifications/unmutablenotificationcontent

"The editable content for a notification."

노티피케이션에 대한 편집 가능한 컨텐트입니다.

Declaration

class UNMutableNotificationContent : UNNotificationContent

Overview

로컬 노티피케이션에 대해 페이로드를 구체화하려면 UNMutableNotificationContent 객체를 생성해야 합니다. 구체적으로 알림, 소리 재생, 앱 badge에 값 할당을 구체화하려면 이 객체를 사용하시기 바랍니다. 시스템이 노티피케이션을 어떻게 처리할지에 대한 세부사항도 제공할 수 있습니다. 예를 들어 관련 노티피케이션을 시각적으로 그룹화시키는 것을 위해 커스텀 launch 이미지 및 스레드 아이덴티파이어를 구체화할 수 있습니다.

컨텐트 객체를 생성한 후 UNNotificationRequest에 할당하고 발생 조건을 추가한 뒤 노티피케이션을 스케줄링해야 합니다. 발생 조건은 시스템이 사용자에게 언제 노티피케이션을 전달할지를 정의합니다. Listing 1은 5초의 지연 후 알림 표시 및 소리 재생을 하는 로컬 노티피케이션의 스케줄링을 보여줍니다. 앱의 Localizable.strings 파일에서 알림의 제목 및 바디를 위한 스트링을 저장하시기 바랍니다.

Listing 1 Creating the content for a local notification

// Configure the notification's payload.
let content = UNMutableNotificationContent()
content.title = NSString.localizedUserNotificationStringForKey("Hello!", arguments: nil)
content.body = NSString.localizedUserNotificationStringForKey("Hello_message_body", arguments: nil)
content.sound = UNNotificationSound.default()
 
// Deliver the notification in five seconds.
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 5, repeats: false)
let request = UNNotificationRequest(identifier: "FiveSecond", content: content, trigger: trigger) // Schedule the notification.
let center = UNUserNotificationCenter.current()
center.add(request) { (error : Error?) in
     if let theError = error {
         // Handle any errors
     }
}

Note
로컬 노티피케이션은 항상 사용자 상호작용 결과를 가져오며, 시스템은 앱에서 권한이 없는 모든 상호작용은 무시합니다. 사용자 상호작용에 대한 권한 요청의 더 많은 정보는 Asking Permission to Use Notifications를 보시기 바랍니다.

Asking Permission to Use Notifications
https://developer.apple.com/documentation/usernotifications/asking_permission_to_use_notifications
https://velog.io/@panther222128/Asking-Permission-to-Use-Notifications

Localizing the Alert Strings

현재 사용자를 위해 노티피케이션에서 표시하고자 하는 스트링을 로컬라이즈하시기 바랍니다. 앱 리소스 파일로부터 스트링을 로드하기 위해 NSLocalizedString 매크로를 사용할 수 있지만 NSStringlocalizedUserNotificationString(forKey:arguments:) 메소드를 사용하는 것이 더 나은 옵션입니다. localizedUserNotificationString(forKey:arguments:) 메소드는 시스템이 노티피케이션을 전달할 때까지 지역화된 스트링의 로딩을 지연시킵니다. 시스템이 노티피케이션을 전달하기 전에 사용자가 언어 설정을 변경하면, 시스템은 시스템이 노티피케이션을 스케줄링했을 때 사용한 언어 대신 사용자의 현재 언어로 알림 텍스트를 업데이트합니다.

See Also


Notification Content

UNNotificationActionIcon

액션과 관련이 있는 아이콘입니다.

https://developer.apple.com/documentation/usernotifications/unnotificationactionicon
https://velog.io/@panther222128/UNNotificationActionIcon

UNNotificationContent

노티피케이션의 편집 불가능한 컨텐트입니다.

https://developer.apple.com/documentation/usernotifications/unnotificationcontent
https://velog.io/@panther222128/UNNotificationContent

UNNotificationAttachment

노티피케이션과 관련이 있는 미디어 파일입니다.

https://developer.apple.com/documentation/usernotifications/unnotificationattachment
https://velog.io/@panther222128/UNNotificationAttachment

UNNotificationSound

노티피케이션의 전달에서 재생되는 소리입니다.

https://developer.apple.com/documentation/usernotifications/unnotificationsound
https://velog.io/@panther222128/UNNotificationSound


post-custom-banner

0개의 댓글