ios - Azure 通知中心与 APNS

标签 ios azure notifications push-notification azure-mobile-services

在将列插入表中时,我必须从 azure 数据库列表向特定用户发送推送通知。我不确定应该使用哪种方式直接使用 APNS 还是通知中心?

1) 如果我使用来自 azure 的直接 APNS(在插入查询下方),则在表 TODOITEM 中插入列时,我会收到推送通知,但是我应该如何将其从表发送给特定用户 我发现 null 应该替换为 token ,我在哪里可以获得特定的用户 token

 function insert(item, user, request) {
request.execute();

setTimeout(function() {
    push.apns.send(null, {
        alert: "Alert: " + item.text,
        payload: {
            inAppMessage: "Hey, a new item arrived: '" + item.text + "'"
        }
    });
}, 2500);}

2)如果我使用通知中心,我什至无法使用在第一种情况下发生的表中插入列时的推送通知。 在 IOS 端,我使用通知中心代码:

SBNotificationHub* hub = [[SBNotificationHub alloc] initWithConnectionString:
                          @"..
[hub registerNativeWithDeviceToken:deviceToken tags:nil completion:^(NSError* error) {
    if (error != nil) {
        NSLog(@"Error registering for notifications: %@", error);
    }
}];

在情况 1 中发生时,如何发送有关表插入的通知以及如何发送给表的特定用户(有什么方法可以查询表并发送)

请您回答这两种情况。

最佳答案

您需要使用标签。标签可以唯一标识一个设备(唯一 ID)或一组设备(例如:国家/地区、团队等)。

在您的 iOS 代码中,您当前将 nil 传递给 Tags 参数。将其更改为唯一 ID,但不使用设备 token 。我花了一整天的时间才发现它太长了,但如果用作标签则不会产生任何错误。去搞清楚!我使用的是每次启动应用程序时生成的 GUID,并将其存储在后端。

在 JS 代码中,将 null 替换为唯一 ID。您可以使用字符串(而不是数组)指定多个标签,这些标签之间用逗号分隔且不包含空格。

在门户中,您可以打开服务中心页面并使用调试选项卡通过标签发送测试通知。

关于ios - Azure 通知中心与 APNS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29419786/

相关文章:

azure - 将 FCM 服务器 key 添加到 Azure 通知中心时出现 "Error updating notification hub"

java - 如何使用 sse android 发布通知

ios - 如何从字典格式的 NSArray 中提取对象

ios - 在html中更改默认字体颜色创建NSAttributedString

azure - Azure 云 shell 中缺少 New-AzureADPolicy

azure - Kudu Zip 上传到 wwwroot

objective-c - 有什么方法可以监控 Mac 上的新应用程序安装事件吗?

ios - viewDidLoad 在 iOS 8 和 iOS 7 中的调用方式不同?

ios - Xcode5 : Cannot preview SpriteKit particle emitter in xcode

azure - 从 Windows Azure 平台上的第三方 Web 服务异步提取数据