title: Use `SharedPreferences` to store authentication token
body: <p>I use token based authenticated mechanism on my server. When user logins through Android app the server returns token which needs to be sent with each subsequent request. I need to store that value on the devices. Since token is a simple string, I thought I'd use <code>SharedPreferences</code> to hold that value. When application starts inside <code>MyApplication extends Application</code> I query <code>SharedPreferences</code> for this token and hold it inside <code>MyApplication</code> as a global state so that every activity could access it when it sends request to the server.</p>
  
  <p>Is this approach viable? If not, what critical drawbacks does it have? And if it's a bad idea, what's the alternative approach?</p>
  
  <p>PS. This is not a subjective question - I'm not asking for <code>the best</code> approach, I'm validating my assumptions.</p>