2016-03-06 62 views
0

我註冊的通知設置在我AppDelegate.didFinishLaunchingWithOptions事件是這樣的:如何防止兩次註冊通知設置?

let notificationType = UIUserNotificationType.Alert | UIUserNotificationType.Badge | UIUserNotificationType.Sound 
let acceptAction = UIMutableUserNotificationAction() 
acceptAction.identifier = "Accept" 
acceptAction.title = "Accept" 
acceptAction.activationMode = UIUserNotificationActivationMode.Background 
acceptAction.destructive = false 
acceptAction.authenticationRequired = false 

let declineAction = UIMutableUserNotificationAction() 
declineAction.identifier = "Decline" 
declineAction.title = "Decline" 
declineAction.activationMode = UIUserNotificationActivationMode.Background 
declineAction.destructive = false 
declineAction.authenticationRequired = false 

let category = UIMutableUserNotificationCategory() 
category.identifier = "invite" 
category.setActions([acceptAction, declineAction], forContext: UIUserNotificationActionContext.Default) 
let categories = NSSet(array: [category]) 
let settings = UIUserNotificationSettings(forTypes: notificationType, categories: categories) 
application.registerUserNotificationSettings(settings) 

如何阻止我的應用程序的情況下登錄本次用戶退出應用程序並返回後,或者是無害的重新註冊多次?

回答

0

一旦用戶被提示一次通知,他們將不會再被詢問。你可以在模擬器中驗證這一點。因此,這裏的代碼很好。

+0

嗯,我有一個教程,所以我在教程完成後註冊通知。我有幾個地方正在註冊通知,以防他們跳過教程。所以我想知道在我的全部問題中多次調用此代碼是一個問題? – TruMan1

+0

iOS只會提示一次。您可以根據需要多次調用它。 – sschale