【问题标题】:"push notifications at least one user should be subscribed for APNS" Quickblox“推送通知至少应为一名用户订阅 APNS” Quickblox
【发布时间】:2014-02-28 11:57:24
【问题描述】:

您好,我有一个关于从我的应用程序发送推送通知的问题。我可以从管理面板发送它们,它们会被设备接收,但不能从设备接收到设备。我现在已经多次重新上传了开发和生产证书。此外,推送通知只能从沙盒环境中的管理面板发送(无错误)而不是生产环境(无收件人。至少一个用户应订阅 APNS(Apple Push)(通过 SDK 或 REST API)。可以有人帮忙吗?

//

    NSString *message = @"Testing APNS!";
    NSMutableDictionary *payload = [NSMutableDictionary dictionary];
    NSMutableDictionary *aps = [NSMutableDictionary dictionary];
    [aps setObject:@"default" forKey:QBMPushMessageSoundKey];
    [aps setObject:message forKey:QBMPushMessageAlertKey];
    [payload setObject:aps forKey:QBMPushMessageApsKey];

    QBMPushMessage *pushMessage = [[QBMPushMessage alloc] initWithPayload:payload];

    // Send push to user
    [QBMessages TSendPush:pushMessage toUsers:self.opponent.login delegate:self];

//

【问题讨论】:

  • 能否提供发送推送通知的代码,请更新问题
  • 我已经用我正在使用的代码更新了我的问题。谢谢伊戈尔。

标签: apple-push-notifications quickblox


【解决方案1】:
 [QBMessages TSendPush:pushMessage toUsers:self.opponent.login delegate:self];

你可以发送推送通知到用户的登录,你必须使用用户的 ID

例如:

 [QBMessages TSendPush:pushMessage toUsers:@"22,33,77" delegate:self];

【讨论】:

  • 感谢 Igor 我现在正在使用:[QBMessages TSendPush:pushMessage toUsers:[NSString stringWithFormat:@"%d",self.opponent.ID] delegate:self];这可行,但是, pushDidReceive 不会被调用。在这里再次感谢您的帮助。
  • 您是否将正确的 APNS 证书上传到管理控制台?
  • 是的,我将开发和生产证书都上传到了管理面板。我可以从管理面板发送推送和丰富的推送通知,我可以从收到的 fileID 触发音频。现在可以从应用程序发送推送通知,但我注意到 pushDidReceive 没有被调用。 - (void(viewWillAppear: (BOOL) 动画{ [[NSNotificationCenter defaultCenter] addObserver:self 选择器:@selector (pushDidReceive:) name:kPushDidReceive object:nil];}
  • 你在哪里发布通知 kPushDidReceive ?
  • KPushNotification 在 ChatView 的 viewDidLoad 方法中设置,在 ChatView 中实现
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 2015-06-19
  • 2021-10-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多