UserNofitication.swift 1.82キロバイト
import Foundation
//
//  UNNofitication.swift
//  ko-seigen
//
//  Created by USER on 2017/10/04.
//  Copyright © 2017年 ドラッサル 亜嵐. All rights reserved.
//

import Foundation
import UserNotifications

class UserNofitication:NSObject{
    static let sharedInstance = UserNofitication()
    @available(iOS 10.0, *)
    public func easyNofitication(
        identifier         : String,
        title              : String,
        body               : String,
        actions            : [UNNotificationAction],
        completionHandler  :((Error?) -> Void)?,
        response           :UNResponseManager
        ){
        
        
        
        let category = UNNotificationCategory(identifier: identifier,
                                              actions: actions ,
                                              intentIdentifiers: [],
                                              options: [])
        
        UNUserNotificationCenter.current().setNotificationCategories([category])
        
        
        let content = UNMutableNotificationContent()
        content.title = title
        content.body =  body
        content.sound = UNNotificationSound.default()
        content.categoryIdentifier = identifier
        
        
        let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 1, repeats: false)
        let request = UNNotificationRequest(identifier: identifier,
                                            content: content,
                                            trigger: trigger)
        let center = UNUserNotificationCenter.current()
        
        center.requestAuthorization(options: [.alert, .badge, .sound]) { (val,err)  in

        }
        
        center.delegate = UNResponseManager.sharedInstance
        center.add(request, withCompletionHandler:completionHandler)
        
    }
}