使用Parse.com发送静默推送通知

Gil*_*and 3 silent push-notification ios parse-platform

我想知道是否有一种使用parse.com服务向用户发送静默推送通知的好方法.

通过"沉默",我的意思是如果用户在应用程序中没有实际通知(如果用户不在应用程序中,我将发送正常通知),没有"警报"消息,没有任何内容.只是一个离散的函数调用.

当用户在应用程序中时,我需要这个来执行一些代码.

我在文档中读过我可以使用cloudcode但是

  1. 它最好吗?
  2. 我该怎么做?关于它没有其他解释.
  3. 是否存在另一种更有效/移动友好的方式来远程调用功能而无需用户注意.

我应该使用obj-C代码吗?云代码?你能提供一个小例子吗?(我真的只需要在我的代码中默默地调用"刷新"功能,没什么特别的)

非常感谢 :)

Smi*_*ess 7

我这样做是为了它,它的工作原理.

第一:在您的项目功能中转到"后台"并检查"远程通知"

第二:在你的appdelegate中一定要有这个处理后台(静音)推送的方法.

-(void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{

//i handle the silent push here with a test on the userinfo's param.
// if content-available = 1 do some stuff
// else 
    // [PFPush handlePush:userInfo];

}
Run Code Online (Sandbox Code Playgroud)

最后:当您在推送中设置数据时,您必须添加"content-available"= 1并删除声音

 NSDictionary *data = [NSDictionary dictionaryWithObjectsAndKeys:
                          temp, @"alert",
                          @"Increment", @"badge",
                          @"", @"sound",
                          @1, @"content-available",
                          nil];
Run Code Online (Sandbox Code Playgroud)

要么

NSDictionary *data =@{
      @"badge": @"Increment",
      @"alert": temp,
      @"sound": @"",
      @"content-available" :@1
      };
Run Code Online (Sandbox Code Playgroud)