【问题标题】:how to send push notification to a specific device without creating channels using parse.com?如何在不使用 parse.com 创建频道的情况下向特定设备发送推送通知?
【发布时间】:2013-07-06 10:17:05
【问题描述】:

在我的 ios 应用程序中,我正在使用 Parse.com api 有两个视图控制器,视图控制器 1 显示我的朋友 fb 个人资料照片。 视图控制器 2 显示好友个人资料。现在我想向我选择的朋友发送推送通知,我有他的 FB id。 我可以在不创建频道的情况下定位具有 fb id 的朋友吗?

我正在尝试以下代码,

//View Controller 1

//Register current user after login

-(void)registerUserForPushNotification
{
PFUser *user = [PFUser currentUser];
PFInstallation *currentInstallation = [PFInstallation currentInstallation];
[currentInstallation setObject:user forKey:@"Owner"];
[[PFUser currentUser] setObject:CurrentUserFacebookId forKey:@"fbId"];
[currentInstallation saveInBackground];
}


//View controller 2
//Send Push notification to  friend
-(void)sendPushNotification
{

// get the PFUser object for current user
PFQuery *userQuery=[PFUser query];
[userQuery whereKey:@"fbId" equalTo:ClientFBId];//ClientFBId is my friend's FB id

// send push notification to the user
PFQuery *pushQuery = [PFInstallation query];
[pushQuery whereKey:@"Owner" matchesQuery:userQuery];
PFPush *push = [PFPush new];
[push setQuery: pushQuery];
NSString *message=[[CurrentUserName stringByAppendingString:@" "]stringByAppendingString:@"sent you ilu"];    
[push setData: @{ @"alert":message}]; 
[push sendPush: nil];
}

我已经搜索了文档。一切安好。它甚至在 parse.com 上显示我的推送通知。但它显示“您将此推送通知发送给 0 个收件人”。在 parse.com 上的推送通知选项卡顶部。

你猜怎么了?

请注意:- 我不是一次向所有朋友发送推送通知,而是一次只向一位朋友发送推送通知。所以我想,我不必创建频道。

【问题讨论】:

    标签: ios push-notification apple-push-notifications parse-platform


    【解决方案1】:

    发现我的问题中提到的每一步都是正确的。两个代码都没有问题。 我注意到我的应用程序没有在解析控制台上接收设备令牌。所以我认为我的证书可能有问题。

    重新生成证书并配置推送通知并再次创建配置文件。

    这让它工作了。现在在解析控制台上接收设备令牌并获得推送通知。 这是link 的分步说明。 不要错过任何一个。希望对大家有帮助!!!

    【讨论】:

      【解决方案2】:

      Parse 允许您通过任一渠道发送推送消息,或直接发送到安装(设备)。

      重要的是要意识到一个用户可能有多个与之关联的安装 - 例如,他们可能拥有 iPhone 和 iPad。您将希望将推送消息发送给两者。

      很难从您发布的内容中看出发生了什么,因为您将两个视图控制器合并在一起。我假设在您的第二个视图控制器user 中是您尝试向其发送推送通知的用户?你如何获得代表朋友的PFUser 对象?也许分享该代码,您可能会获得更多帮助。

      【讨论】:

      • 是的,你是对的,第二个视图控制器中的“用户”指的是我的朋友。我的问题是如何为我的朋友获取 PFUser 对象
      • ...再次分享您的更多代码。如果不是PFUseruser 是什么类型的对象?您是如何获得 user 变量的?
      • 是的,用户是一个 PFUser 对象。我的问题是如何为我的朋友获取该用户变量?
      • ...嗯,大概你有一个PFUser 指针数组,代表每个用户的朋友?还是 Parse 中的其他一些数据结构?听起来好像问题不在于推送消息,而在于需要审查 Parse 如何存储数据。我建议您查看 Parse 的文档和教程,因为它们非常详细地介绍了很多此类内容。
      • 这不是答案。我想我的问题已经足够清楚了
      猜你喜欢
      • 1970-01-01
      • 2015-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-28
      • 2015-09-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多