title: Authenticating user across multiple devices and multiple requests using auth tokens
body: <p>I implemented a simple token based authentication for my android application. When first login it generate Access Token, Refresh Token, saves them in database and returns to user request as response data. User saves those tokens and use in next requests. When tokens expires server creates a new token and update old token in database and returns new tokens to user.This implementation is working fine until user use only one device. </p>
  
  <p>My fist problem is, if I login in multiple devices each time I login it creates new tokens and that makes other devices unauthorised as they have older tokens which are no longer exists in server database. So I am thinking of maintaining different tokens for each device. So is it a proper way to do or is there a better implementation?</p>
  
  <p>And the second problem is, in the same device, lets say I sent a request with expired tokens. So server sent back new tokens, but before the response has come I sent an another request with expired tokens. Now First request updated expired tokens with new tokens the second request becomes unauthorised so it is forcing me to logout. How to handle this situation if I don't want wait till first request finishes?</p>