【iOS15】 통지 허가 다이얼로그의 「시간 지정 요약으로 허가」의 상태를 취득한다
소개
iOS15부터 Notification Summary라는 기능이 추가된다.
이에 따라, 설정 어플리케이션의 통지 설정 화면에 「시간 지정 요약」이라는 항목이 추가되었다.
「시간 지정 요약」을 ON으로 한 경우, ↓과 같이 통지 허가 다이얼로그에 「시간 지정 요약으로 허가」라는 항목이 표시된다.
시간 지정 요약 ON
시간 지정 요약 OFF
사용자가 「시간 지정 요약으로 허가」를 탭했는지의 여부로 처리를 분기하는 경우도 있기 때문에, 그 판정 방법을 기재한다.
판정 방법
UNNotificationSettings
에 iOS15에서 추가된 scheduledDeliverySetting
를 사용합니다.
let notificationCenter = UNUserNotificationCenter.current()
notificationCenter.requestAuthorization(options: [.alert, .badge, .sound]) { granted, error in
if error != nil {
// エラー
}
if granted {
// 通知許可
}
notificationCenter.getNotificationSettings { settings in
switch settings.scheduledDeliverySetting {
case .enabled:
print("許可")
case .disabled:
print("許可されてない")
case .notSupported:
print("サポートされてない")
}
}
}
주의점
UNNotificationSettings
에 iOS15에서 추가된 scheduledDeliverySetting
를 사용합니다.let notificationCenter = UNUserNotificationCenter.current()
notificationCenter.requestAuthorization(options: [.alert, .badge, .sound]) { granted, error in
if error != nil {
// エラー
}
if granted {
// 通知許可
}
notificationCenter.getNotificationSettings { settings in
switch settings.scheduledDeliverySetting {
case .enabled:
print("許可")
case .disabled:
print("許可されてない")
case .notSupported:
print("サポートされてない")
}
}
}
주의점
.enabled
가 되지 않고, 통상의 「허가」를 탭했을 경우는 .disabled
가 된다. 끝에
사용자가 실수로 "시간 지정 요약으로 허가"를 누르면 통지에 따라 즉시 도착하지 않기 때문에 통지 허가 대화 상자를 표시 할 때 뭔가를 고려하는 것이 좋습니다.
또, 「시간 지정 요약으로 허가」를 선택한 상태에서 UNNotificationSettings.authorizationStatus
가 .authorized
(default의 level)의 통지라면 항상 즉시 통지되지 않게 되어 버린다. 따라서 필요에 따라 Interruption levels
를 Active
이상으로 하는 대응도 필요하다.
참고
Reference
이 문제에 관하여(【iOS15】 통지 허가 다이얼로그의 「시간 지정 요약으로 허가」의 상태를 취득한다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yamakentoc/items/d1623f9b9c21fadb91cd
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(【iOS15】 통지 허가 다이얼로그의 「시간 지정 요약으로 허가」의 상태를 취득한다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yamakentoc/items/d1623f9b9c21fadb91cd텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)