C# PushSharp-APNS-内部缓存

C# PushSharp-APNS-内部缓存,c#,push-notification,apple-push-notifications,pushsharp,C#,Push Notification,Apple Push Notifications,Pushsharp,我有一个windows服务,为我们的应用发送推送通知。在该服务中,我维护了一个推送通知列表,大约60秒,因此如果我没有收到任何反馈,我可以尝试重试 我知道夏普必须使用某种集合来管理这一点。我在重复工作吗?我是否保证每次发送通知都会收到回拨 对于APNS服务器成功接受的消息,苹果不会返回响应,即使消息被服务器接受,也不能保证发送到设备。因此,无论您从PushSharp获得什么反馈,都不是您可以依赖的。PushSharp能做的最好的事情就是尝试从Apple读取错误响应,并且每当它收到错误响应(包含消

我有一个windows服务,为我们的应用发送推送通知。在该服务中,我维护了一个推送通知列表,大约60秒,因此如果我没有收到任何反馈,我可以尝试重试


我知道夏普必须使用某种集合来管理这一点。我在重复工作吗?我是否保证每次发送通知都会收到回拨

对于APNS服务器成功接受的消息,苹果不会返回响应,即使消息被服务器接受,也不能保证发送到设备。因此,无论您从PushSharp获得什么反馈,都不是您可以依赖的。PushSharp能做的最好的事情就是尝试从Apple读取错误响应,并且每当它收到错误响应(包含消息ID)时,它可以假设在失败消息之前发送的所有消息都被接受,而在失败消息之后发送的所有消息都被拒绝,需要重新发送


要知道APN是否向设备发送了消息,唯一的方法是设备在用户点击通知后向服务器发送确认。如果用户没有点击通知,即使这种确认也是不可能的(可能除了在iOS7中,它允许在用户点击通知之前对通知进行一些后台处理)。

苹果不会对APNS服务器成功接受的消息返回响应,即使他们的服务器接受了消息,也不能保证发送到设备。因此,无论您从PushSharp获得什么反馈,都不是您可以依赖的。PushSharp能做的最好的事情就是尝试从Apple读取错误响应,并且每当它收到错误响应(包含消息ID)时,它可以假设在失败消息之前发送的所有消息都被接受,而在失败消息之后发送的所有消息都被拒绝,需要重新发送


要知道APN是否向设备发送了消息,唯一的方法是设备在用户点击通知后向服务器发送确认。如果用户没有点击通知,甚至这种确认都是不可能的(也许除了在iOS7中,它允许在用户点击通知之前对通知进行一些后台处理)。

我仍然在挖掘PushSharp代码。当它从苹果收到一个错误时,它是在id之后自动重新发送消息,还是那些消息是提供给Requeue代理的消息?我仍然在挖掘PushSharp代码。当它收到来自苹果的错误时,它是在id之后自动重新发送消息,还是那些消息是提供给Requeue代理的?