这更像是一个关于如何在客户端应用程序中设计/实现 POST
操作的一般性问题,尤其是当它是移动应用程序时。
无论您要POST
什么东西到服务器,例如,如果您正在构建博客,则为博文;如果是聊天应用,则为聊天消息;如果是 Twitter,则为推文,您想知道操作是否成功。
让我们举一个 Twitter 的例子。
基本要求如下:
- 当您发布推文时,该推文在操作结束之前会在时间线中显示为
正在发送
状态。显示为 View 的最常见方法是使推文模糊。 - 操作成功后,假设推文已发布并且所有关注者都可以看到,推文会变成纯色,让用户知道推文是实时的。
- 如果操作不成功,推文会显示一个红色的
!
标记,并告诉用户这条推文发布失败,他们可以稍后重试。
这很容易通过 3 种不同的状态来完成,POSTING
& SUCCESS
& FAIL
,并通过检查状态代码来回切换服务器。
我的问题是,当用户在发推后立即关闭应用程序(在后台)时,我们如何处理这种情况?在简单的实现中,我们将无法从服务器获取状态代码并保持状态 POSTING
。
是否有任何最佳实践可以使此操作变得易于处理?
最佳答案
您可以执行以下几项操作:
1) 发送帖子已完成的推送通知。这将唤醒接收器并允许您更新状态。
或
2)当您的应用程序启动时,向服务器查询那些处于 POSTING 状态的项目并查看它们是否完成。
这些实际上并不相互排斥,因为 2 对于不知何故丢失的推送消息来说是一个故障保护。
关于android - 在客户端处理发布状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52157189/