এক্সকোড 10 সুইফট 4.2
আপনার অ্যাপ্লিকেশনটি অগ্রভাগে থাকা অবস্থায় পুশ নোটিফিকেশন দেখাতে -
পদক্ষেপ 1: অ্যাপডেলিগেট ক্লাসে প্রতিনিধি UNUserNotificationsCenterDelegate যুক্ত করুন।
class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterDelegate {
পদক্ষেপ 2: UNUserNotificationsCenter প্রতিনিধি সেট করুন
let notificationCenter = UNUserNotificationCenter.current()
notificationCenter.delegate = self
পদক্ষেপ 3: এই পদক্ষেপটি আপনার অ্যাপ্লিকেশনটির সম্মুখভাগে থাকা অবস্থায়ও আপনার অ্যাপ্লিকেশনটিকে পুশ বিজ্ঞপ্তি দেখানোর অনুমতি দেবে
func userNotificationCenter(_ center: UNUserNotificationCenter,
willPresent notification: UNNotification,
withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
completionHandler([.alert, .sound])
}
পদক্ষেপ 4: এই পদক্ষেপটি .চ্ছিক । আপনার অ্যাপটি অগ্রভাগে রয়েছে কিনা এবং তা যদি অগ্রভাগে হয় তা পরীক্ষা করুন তবে স্থানীয় পুশনোটিকেশনটি দেখান।
func application(_ application: UIApplication,didReceiveRemoteNotification userInfo: [AnyHashable: Any],fetchCompletionHandler completionHandler:@escaping (UIBackgroundFetchResult) -> Void) {
let state : UIApplicationState = application.applicationState
if (state == .inactive || state == .background) {
// go to screen relevant to Notification content
print("background")
} else {
// App is in UIApplicationStateActive (running in foreground)
print("foreground")
showLocalNotification()
}
}
স্থানীয় বিজ্ঞপ্তি ফাংশন -
fileprivate func showLocalNotification() {
//creating the notification content
let content = UNMutableNotificationContent()
//adding title, subtitle, body and badge
content.title = "App Update"
//content.subtitle = "local notification"
content.body = "New version of app update is available."
//content.badge = 1
content.sound = UNNotificationSound.default()
//getting the notification trigger
//it will be called after 5 seconds
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 1, repeats: false)
//getting the notification request
let request = UNNotificationRequest(identifier: "SimplifiedIOSNotification", content: content, trigger: trigger)
//adding the notification to notification center
notificationCenter.add(request, withCompletionHandler: nil)
}