2017-01-30 33 views
0

当用户第一次登录我保存它是这样的:每次用户打开我的应用程序时,我是否需要验证userpreferences登录名和密码?

      SharedPreferences pref = getApplicationContext().getSharedPreferences("pref01", MODE_PRIVATE); 
          SharedPreferences.Editor editor = pref.edit(); 
          editor.putString("username", username); 
          editor.putString("password", password); 
          editor.apply(); 

下一次他打开应用程序,我在loginactivity自动获得该用户名值,自动,如果用户名是通过共享偏好设置打开的用户区域。

因此,每当用户上传图片时,在他的帐户上进行一些更改我将此用户名存储在userpreferences中存储到PHP中。

我的问题是,可以吗?或者我需要检查用户和密码,每次用户打开我的应用程序?用户可以更改共享首选项吗?因为,例如,如果用户'玛丽亚'将其更改为'乔希',她将自动登录乔希帐户...是否有可能发生?

回答

2

而不是保存登录详细信息使用令牌。当用户登录时,然后响应api调用发送从服务器本身生成的令牌&将其保存为首选项。在每个其他API中使用此标记作为身份验证密钥。所以用户也不能改变它,即使令牌被改变,服务器也会知道该令牌是inviladate作为令牌生成逻辑,然后将用户从应用重定向UI注销到登录屏幕。

相关问题