我正在运行后台服务,它正在为我提供数据。在获取数据之前,我正在检查连接。如果没有WI-Fi或蜂窝网络覆盖,我该如何通知用户?
我想到的第一件事是POP UP A DIALOG。但是抛出错误。我不希望有状态栏通知。我希望你的脸更像是一件事。我有什么选择?
答案 0 :(得分:1)
如果我是你,我会使用Notification in the status bar。我会在通知中放置一个PendingIntent,让用户在连接后重试该操作。
答案 1 :(得分:0)
如果您的服务做了非常重要的事情并且您认为用户应该知道连接何时丢失,那么唯一可接受的解决方案(根据指南)是将通知发布到通知栏。
您不应该从服务启动任何活动或对话。为了解释原因,想象一下用户有10个这样的服务。如果每个服务都会启动Activity或Dialog,那么在连接丢失时会很麻烦,并且肯定会让用户发疯。另一种需要考虑的方案是连接丢失并每秒重新获取。同样,如果至少有一个服务决定它必须显示用户活动或对话框,它将使设备几乎无法使用。
在大多数情况下,您甚至不应在连接丢失时发布通知。用户已在通知栏中收到一些反馈:Wi-Fi图标和3G / 4G / etc图标。因此,添加另一个图标会使重复信息的通知栏混乱。