如何在应用程序处于后台时使用解析接收推送通知和更新数据

时间:2015-02-28 08:26:57

标签: objective-c background parse-platform apple-push-notifications

我需要在使用parse接收推送通知后启动一些进程。如果应用程序在前台它工作正常,如果应用程序在后台我也没有收到通知也&需要开始一些过程。这里我的代码是:

 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{ 
 if([[userInfo  objectForKey:@"operation"] isEqualToString:@"Start"])
    {
      [[NSUserDefaults standardUserDefaults]setObject:userInfo   forKey:@"startNotification"];[start process];//this method i need to call after receive notification
    }else if ([[userInfo objectForKey:@"operation"]isEqualToString:@"Update"])
    {
        NSLog(@"update notification called");
        [database updateDatabase:[userInfo objectForKey:@"Id"]];
        [[NSNotificationCenter defaultCenter] postNotificationName:@"reloadTableView" object:nil]; }}

我的环境:iOS8,Xcode 6.3,Mac10.10。 感谢

1 个答案:

答案 0 :(得分:0)

您需要执行以下步骤: -

  1. 首先将appleId注册到Apple Developer,然后您需要通过此链接注册您的申请ID: -
  2. http://docs.telerik.com/platform/appbuilder/code-signing-your-app/configuring-code-signing-for-ios-apps/register-app-id

    1. 其次,您需要创建如下所示的CertificateSigningRequest: - 打开Keychain Access -> Certificate Assistant -> Request a Certificate From Certificate Authority然后它会提示输入您注册的电子邮件地址的证书助理窗口,然后选择单选按钮保存为磁盘并单击继续。
    2. 创建后,请转到此https://developer.apple.com/account/ios/certificate/certificateCreate.action

      选择iOS开发并点击继续然后你需要上传你的CSR,然后点击生成它将下载一个你必须下载的.CER文件(带有公钥和私钥),然后双击它将会在Keychain Access中打开,您必须右键单击.CER文件并导出到.p12文件

      1. 第三步,从此链接下载应与您的应用程序ID相关联的配置文件https://developer.apple.com/account/ios/profile/profileList.action

      2. 第四,您需要下载推送配置文件证书,以便接收应用程序ID与您的应用程序ID相关联的推送通知。请点击此链接: - https://developer.apple.com/account/ios/certificate/certificateList.action

      3. 下载推送配置文件证书后,双击.CER文件,然后导出到.p12文件,然后将相同的文件放到服务器上以接收Apple推送通知。

        注意: - 你的.cer文件应该有关联的私钥,否则它将无效。

        希望这有帮助!