IOS
611. (ios/swift5) [간단 소스] UNAuthorizationOptions 간단 설명 및 사용 옵션 정리 - 로컬 및 원격 알림의 승인 결정 옵션
투케이2K
2024. 12. 11. 18:41
[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT5
[소스 코드]
// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------
- 언어 : Swift
- 개발 툴 : Xcode
- 기술 구분 : UNAuthorizationOptions / 로컬 및 원격 알림 사용 옵션
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[설명 정리]
// --------------------------------------------------------------------------------------
1. UNAuthorizationOptions 은 로컬 및 원격 알림의 승인을 결정하는 옵션 객체입니다.
2. UNAuthorizationOptions 은 푸시 알림을 사용하기 위해 옵션 값 지정 후 사용자에게 권한을 승인 받을 때 사용됩니다
3. UNAuthorizationOptions 사용 가능 지원 범위 :
>> iOS 10.0 이상
>> 아이패드OS 10.0+
>> 맥 카탈리스트 13.1+
>> 맥OS 10.14+
>> tvOS 10.0 이상
>> 비전OS 1.0+
>> 워치OS 3.0+
4. UNAuthorizationOptions 옵션 종류 관련 :
>> static var badge: UNAuthorizationOptions : 앱 배지를 업데이트하는 기능.
>> static var sound: UNAuthorizationOptions : 소리를 낼 수 있는 능력.
>> static var alert: UNAuthorizationOptions : 알림을 표시하는 기능.
>> static var carPlay: UNAuthorizationOptions : CarPlay 환경에서 알림을 표시하는 기능.
>> static var criticalAlert: UNAuthorizationOptions : 중요한 알림에 대해 소리를 재생하는 기능.
>> static var providesAppNotificationSettings: UNAuthorizationOptions : 앱 내 알림 설정을 위한 버튼을 시스템에 표시해야 한다는 것을 나타내는 옵션입니다.
>> static var provisional: UNAuthorizationOptions : 알림 센터에 방해받지 않는 알림을 임시로 게시하는 기능.
5. UNAuthorizationOptions 사용 예시 소스 코드 :
let authOptions: UNAuthorizationOptions = [.alert, .badge, .sound] // [푸시 알림 권한]
UNUserNotificationCenter.current().requestAuthorization(options: authOptions) { (success, error) in // [푸시 알림 권한 요청]
// [success 부분에 권한을 허락하면 true / 권한을 허락하지 않으면 false 값이 들어갑니다]
if let error = error {
print("")
print("====================================")
print("[C_Permission >> getPushAuthCheck() :: 푸시 알림 권한 확인 실시]")
print("error :: \(error.localizedDescription)")
print("====================================")
print("")
}
else {
if success {
print("")
print("====================================")
print("[C_Permission >> getPushAuthCheck() :: 푸시 알림 권한 확인 실시]")
print("상태 :: 푸시 알림 권한 허용")
print("====================================")
print("")
}
else {
print("")
print("====================================")
print("[C_Permission >> getPushAuthCheck() :: 푸시 알림 권한 확인 실시]")
print("상태 :: 푸시 알림 권한 거부")
print("====================================")
print("")
}
}
}
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------
[애플 공식 사이트]
https://developer.apple.com/documentation/usernotifications/unauthorizationoptions
[C_Permission - 모바일 퍼미션 권한 관리 클래스]
https://blog.naver.com/kkh0977/222681793409?trackingCode=blog_bloghome_searchlist
[로컬 노티피케이션 알림 발송 및 확인 실시 - UNUserNotificationCenter]
https://blog.naver.com/kkh0977/222552612515?trackingCode=blog_bloghome_searchlist
// --------------------------------------------------------------------------------------
반응형