Php 检查移动应用程序中的用户是否在线
我正在开发一个iOS应用程序,我想检查一个特定的用户是否在线。 我的第一个想法是以5秒的间隔周期性地将异步连接从应用程序发送到php页面,该页面通过插入当前日期和时间来更新数据库中的字段。然后,为了查看特定用户是否在线,应用程序每5秒从数据库中获取一次数据,并将其与当前时间进行比较:如果当前时间大于收集的数据(大于5秒),则表示该用户处于脱机状态,否则为在线状态。这是可行的,但即时消息应用程序肯定不会使用这种方法,因为它太昂贵了。应该采用哪种方法Php 检查移动应用程序中的用户是否在线,php,ios,mobile,mobile-application,Php,Ios,Mobile,Mobile Application,我正在开发一个iOS应用程序,我想检查一个特定的用户是否在线。 我的第一个想法是以5秒的间隔周期性地将异步连接从应用程序发送到php页面,该页面通过插入当前日期和时间来更新数据库中的字段。然后,为了查看特定用户是否在线,应用程序每5秒从数据库中获取一次数据,并将其与当前时间进行比较:如果当前时间大于收集的数据(大于5秒),则表示该用户处于脱机状态,否则为在线状态。这是可行的,但即时消息应用程序肯定不会使用这种方法,因为它太昂贵了。应该采用哪种方法 我希望我自己解释一下,谢谢 以下是我如何解决这个
我希望我自己解释一下,谢谢 以下是我如何解决这个问题:
编辑:刚刚看到你关于即时通讯的最新信息。根据我的经验,如果你在移动设备上,它并不总是即时的(在我看来,当我通过Facebook在手机上与某人展开聊天时,他们的在线状态直到我发送消息/每一设定时间才会更新)。有时我会在手机到达电脑30秒到一分钟后收到信息。但这似乎是优先考虑的(即:如果我正在与一个人进行一次有大量信息来回传递的大型对话,沟通是非常即时的)-我只是想分享一下。好的,你的解决方案似乎很棒。我已经实现了一些关于这个的东西。我可以查看用户是否在线,将BOOL读入数据库。此BOOL每分钟从用户应用程序更新两次,并设置为TRUE,如果用户关闭应用程序,则设置为FALSE。现在,如果用户关闭应用程序时出现错误,我的BOOL不可能永远为真,所以我必须在服务器上执行这个循环。正如您所说,我的服务器应该这样做:如果BOOL为TRUE,并且在最后一分钟内没有更新,我必须将其标记为FALSE,这是一种超时。如何在数据库服务器端完成?抱歉,这花费了这么长时间。好的,我不能帮你的服务器方面的事情对不起:(我上了一些课程,但我不太自信给你编译的代码(已经有一段时间了)。如果你愿意,我可以解释我是如何攻击这一个的,但我没有代码给你。也许可以问一个更直接针对sql和服务器交互的新问题。祝你好运!