zoukankan      html  css  js  c++  java
  • iOS8 Push Notifications

     

    本文转载至 http://blog.csdn.net/pjk1129/article/details/39551887

     

    原贴地址:https://parse.com/tutorials/ios-push-notifications

    github地址:https://github.com/ParsePlatform/PushTutorial

    iOS Push通知已经广泛应用于实际开发中,iOS8与之前注册push有所不同,这里把如何潜入代码贴一下,以作记录,详情请看上面地址链接

    Adding Code for a Push Enabled iOS Application

    We are now ready to start programming. We need to make a few modification to the app delegate in order to receive push notifications.

    To register the current device for push, call the method[application registerForRemoteNotifications] in the app delegate's-application:didFinishLaunchingWithOptions: method.

    - (BOOL)application:(UIApplication *)applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

      ...

      // Register for Push Notitications, if running iOS 8

      if ([applicationrespondsToSelector:@selector(registerUserNotificationSettings:)]) {

        UIUserNotificationType userNotificationTypes = (UIUserNotificationTypeAlert |

                                                        UIUserNotificationTypeBadge |

                                                        UIUserNotificationTypeSound);

        UIUserNotificationSettings *settings = [UIUserNotificationSettingssettingsForTypes:userNotificationTypes

                                                                                categories:nil];

        [application registerUserNotificationSettings:settings];

        [application registerForRemoteNotifications];

      else {

        // Register for Push Notifications before iOS 8

        [application registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge |

                                                         UIRemoteNotificationTypeAlert |

                                                         UIRemoteNotificationTypeSound)];

      }

      ...

    }

    If the registration is successful, the callback method-application:didRegisterForRemoteNotificationsWithDeviceToken: in the application delegate will be executed. We will need to implement this method and use it to inform Parse about this new device.

    - (void)application:(UIApplication *)applicationdidRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken {

      // Store the deviceToken in the current installation and save it to Parse.

      PFInstallation *currentInstallation = [PFInstallationcurrentInstallation];

      [currentInstallation setDeviceTokenFromData:deviceToken];

      currentInstallation.channels = @[@"global" ];

      [currentInstallation saveInBackground];

    }

    When a push notification is received while the application is not in the foreground, it is displayed in the iOS Notification Center. However, if the notification is received while the app is active, it is up to the app to handle it. To do so, we can implement the [application:didReceiveRemoteNotification] method in the app delegate. In our case, we will simply ask Parse to handle it for us. Parse will create a modal alert and display the push notification's content.

    - (void)application:(UIApplication *)applicationdidReceiveRemoteNotification:(NSDictionary *)userInfo {

      [PFPush handlePush:userInfo];

    }

    You should now run your application (on your iOS device) to make sure everything is set up correctly. If it is, the first time you run this app you should see a modal alert requesting permission from the user to send push notifications.

     

  • 相关阅读:
    常见的web漏洞
    WEB前端性能优化常见方法
    前端多终端浏览器兼容
    vue中computer与watch区别
    Vue父子组件生命周期执行顺序
    Git配置文件的妙用
    Git的基本概念和操作
    对AUC计算公式和几何意义的理解(详细版)
    如何看文献
    Python函数 range()和arange()的区分
  • 原文地址:https://www.cnblogs.com/Camier-myNiuer/p/4079409.html
Copyright © 2011-2022 走看看