1

我看到this question,但不明白是否有明確的答案。我如何知道用戶是否允許推送通知

如果用戶通過設置標誌,按下「不允許」的第二次發射的應用程序,我可以告訴:

BOOL didRequest = [[NSUserDefaults standardUserDefaults] boolForKey:@"DidRequestPushNotifications"]; 
    UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes]; 
    if (types == UIRemoteNotificationTypeNone && didRequest) 
    { 
     [self showAlertToUserToEnableRemoteNotificationsOnDeviceInSettings]; 
    } 
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"DidRequestPushNotifications"]; 
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)]; 

但對於首批推出的應用程序 - 成功的兩個委託方法失敗並沒有被調用,這意味着沒有辦法知道肯定。

任何解決方法?

回答

0

除了你有聯繫的回答,周圍的工作我能想到的是,一旦用戶成功註冊了推,你可以存儲在NSUserDefaults裝置憑證。

這樣您可以檢查用戶設置的值是否爲nil

相關問題