Azure 通知中心跨平台推送

3
我需要向已注册到我的通知中心的移动设备发送推送通知。该中心已设置为允许Windows Phone、Apple和Android设备进行注册,并且我已经按照文档准备好了相应的密钥和证书。我正在使用最新版本的Microsoft.Azure.NotificationHubs命名空间,即2.16版本,这是NuGet软件包管理器所建议的。
我想一次向所有注册设备发送一条消息,并向特定设备发送消息。我可以看到这些设备都已正确地注册到中心,并且具有标签,使我能够向它们发送通知。
我尝试使用SendDirectNotificationAsync()方法,该方法需要一个字典和一个字符串标记作为参数。我还尝试了SendNotificationAsync()方法,该方法需要一个通知对象作为参数。但无论哪种方法,都不能使用我提供的参数在我的Windows Phone上触发通知,因此如果没有示例或来自帮助文件的更多信息,我就陷入了困境。
我找不到任何当前使用这些方法和类的示例。我找到的示例都早于发布日期,而且没有展示如何向通知中心发送跨平台通知的信息。我知道这些方法和类才刚刚发布,但任何帮助/指导都将不胜感激,因为我已经完全陷入了死胡同。
1个回答

0

简单更新一下...

虽然我没有像上面描述的那样想要让它正常工作,但最终我采用了以下各平台原生通知;

var result1 = await hub.SendMpnsNativeNotificationAsync(windowstoast, mobileDeviceId);

var result2 = await hub.SendGcmNativeNotificationAsync(androidToast, mobileDeviceId);

var result3 = await hub.SendAppleNativeNotificationAsync(iOStoast, mobileDeviceId);

根据文档,'toast'已按照各个平台的要求进行了格式化。

'mobileDeviceId'是每个设备在通知中心注册的标签。

所以,虽然有些笨拙,但它可靠地实现了相同的目的。

我仍然希望能够找到跨平台的解决方案。等我有时间时会再深入研究。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接