检查每个活动的用户身份验证

时间:2019-10-07 03:50:00

标签: android performance api

在每个活动中检查用户对服务器api的身份验证是否合适(我假设在简历上使用基本活动)?这是为了防止用户使用同一帐户在多台设备上登录。还是有更好的方法呢?

2 个答案:

答案 0 :(得分:0)

有几种方法可以解决这个问题。

  1. 推送通知-当同一用户登录另一台设备时,您需要向第一台登录设备发送推送通知。当第一个登录设备收到通知时,您可以在其中放置逻辑。
  2. 在每个api上放置注销状态-您需要在每个api响应中检查注销状态代码。当您获得注销状态代码时,就可以将逻辑放在这里。

注意:对于第二种方法,您需要制作一个通用的api调用类。因此,您无需将此状态代码放在每个api调用代码中。

答案 1 :(得分:0)

因此,我假设每次成功登录后,服务器都会向您返回一个唯一的身份验证令牌,该令牌应会使以前分配的任何令牌无效。

我的方法通常是允许用户继续使用应用程序中已存在的所有缓存数据,直到遇到需要执行API调用的情况为止。如果由于身份验证令牌无效而收到诸如HTTP 401或403之类的错误代码,则应将我发送回登录屏幕。

在onResume()中进行显式的API调用似乎很浪费,并且基本上是客户端轮询。只有在保持auth信息新鲜的要求非常严格的情况下,我才会这样做,因为屏幕上的信息很敏感。