我想知道在用户登录后存储用户 ID 的最佳方法是什么?我刚刚开始 Android 开发,并阅读了有关共享首选项的内容,但这似乎不起作用?
这是在我的 LoginActivity
中发生的:
User user = dbHelper.findUser(email);
SharedPreferences preferences = getSharedPreferences("preferences", MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putString("user_id", user.getId());
editor.commit();
Intent mainIntent = new Intent(LoginActivity.this, MainActivity.class);
startActivity(mainIntent);
在我的 MainActivity
中,我想获取登录用户的 ID,如下所示:
SharedPreferences preferences = getSharedPreferences("preferences",
MODE_PRIVATE);
String user_id = prefs.getString("user_id", "0");
现在,我需要这个用户 ID 来构建基于用户的列表,所以我使用这个 ID 进行数据库查询。传递此 ID 的最佳方法是什么?我可以有意地传递它,但最好将它存储在中央位置。我在多项 Activity 中确实需要此 ID。
最佳答案
已解决。就像用户 CommonsWare 指出的那样 here ,该值未返回我想要的值,因此始终从我的 SharedPreferences 中选择默认值。
关于java - 登录后Android存储用户ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47002248/