Push notifications are not working in iOS 9

前端 未结 5 573
死守一世寂寞
死守一世寂寞 2020-12-31 06:36

I have upgraded my devices to iOS 9 and my Xcode environment to 7.0 beta. Push notifications are not working in iOS 9?

Here is my code:

  float ver =         


        
相关标签:
5条回答
  • 2020-12-31 06:58

    write this code in didFinishLaunchingWithOptions

     UIUserNotificationType userNotificationTypes = (UIUserNotificationTypeAlert |
                                                    UIUserNotificationTypeBadge |
                                                    UIUserNotificationTypeSound);
    UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:userNotificationTypes
                                                                             categories:nil];
    [application registerUserNotificationSettings:settings];
    [application registerForRemoteNotifications];
    

    and add this method to AppDelegate as i have used for parse push notification service

     - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
      // Store the deviceToken in the current installation and save it to Parse.
    PFInstallation *currentInstallation = [PFInstallation currentInstallation];
    [currentInstallation setDeviceTokenFromData:deviceToken];
    currentInstallation.channels = @[ @"global" ];
    [currentInstallation saveInBackground];
    }
    
    0 讨论(0)
  • 2020-12-31 07:03

    Please try this code as its working for my IOS 9 application

    Write a Code in AppDelegate DidFinishLaunchWithOption

    if([[UIApplication sharedApplication] respondsToSelector:@selector(isRegisteredForRemoteNotifications)])
    {
        [[UIApplication sharedApplication] registerUserNotificationSettings:  [UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound) categories:nil]];
    
        [[UIApplication sharedApplication] registerForRemoteNotifications];
    }
    else
    {
       #if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_8_0
        [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIUserNotificationTypeAlert | UIUserNotificationTypeBadge |    UIUserNotificationTypeSound)]; #endif
    }
    

    Make sure the following items are well checked for the Push notification on the server

    1. PEM File generated with selecting the Cert & Private key from the originator
    2. Apple service enabled and pointing to Sandbox/Live correctly
    3. Push notification token is received in below function and not any Error is returned which is well send to the server (LAMP service) that is sending the APNS Push notification to device Token.
    4. Check the Apple APNS response code in the server with the Push send to the token.
    5. Enabled Push notification in the settings as if you do any goof up in the '|' symbol code you may see the sound, badge options not shown in Apple General Notification settings

      -(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
          {
              NSString *devicetokenString = [[[[deviceToken description] stringByReplacingOccurrencesOfString: @"<" withString: @""] stringByReplacingOccurrencesOfString: @">" withString: @""] stringByReplacingOccurrencesOfString: @" " withString: @""]; 
      
              DLog(@"Did Register for Remote Notifications with Device Token DATA (%@) \n STRING token (%@)", deviceToken,devicetokenString);
      
              //If Same token received again dont take any action else save in NSUserdefaults or system and send to server to register against this device to send push notification on the token specified here.
          }
      
      -(void)application:(UIApplication *)application    didFailToRegisterForRemoteNotificationsWithError:(NSError *)error 
          {
              DLog(@"Did Fail to Register for Remote Notifications");
              DLog(@"%s:%@, %@",__PRETTY_FUNCTION__,error, error.localizedDescription);
          }
      
      -(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
          {
              DLog(@"Did Receive for Remote Notifications with UserInfo:%@", userInfo);
          }
      

    Hope this is well explained if any help do post your updated code so we can help you.

    0 讨论(0)
  • 2020-12-31 07:15

    If you are using Diawi for install application than push notification not working in IOS 9..

    You install application though Xcode..

    0 讨论(0)
  • 2020-12-31 07:17

    I ran into the same problem. I solved it by creating an Ad-Hoc Profile. I noticed push is not happening when I use a development profile. And the other thing I noticed was the Device Token gets changed for every fresh install which is kind of weird as we have to update the server for every new instance.

    You can go through this article for a better understanding : iOS 9 Push Notifications

    0 讨论(0)
  • 2020-12-31 07:21

    After adding the code in your project and creating the certificate and Ad-Hoc Profile -

    *Just enable this from your X-code*

    for more details - iOS 9 Push Notification Tutoriyal

    0 讨论(0)
提交回复
热议问题