android - 当我根据用户类型有两种类型的活动时,我可以使用共享首选项在 android studio 中创建登录会话吗?
问题描述
我希望用户在他/她注销之前一直登录应用程序。我知道我们可以使用共享偏好来创建此类会话。但我有两种类型的用户,这取决于类型,哪个活动将意图。在这种情况下如何使用共享首选项?而且我正在使用intent.putExtras(),所以如果应用程序直接打开mainactivity类,数据将如何传递给其他活动。
public void loginHandler(View view){
userId = useridTIET.getText().toString();
password = passwordTIET.getText().toString();
if(userId.isEmpty()||password.isEmpty()){
Toast.makeText(this, "Empty fields!", Toast.LENGTH_SHORT).show();
}
else {
Log.i("User Type",userType);
if(userType.equals("resident")){
residentLogin();
}
else {
guardLogin();
}
}
}
public void residentLogin(){
if(condition){
Intent intent = new Intent(getApplicationContext(),NavigationActivity.class);
intent.putExtra("currentResident",currentResident);
startActivity(intent);
}
}
public void guardLogin(){
if(condition){
Intent intent = new Intent(getApplicationContext(),NavigationActivity2.class);
intent.putExtra("userId",userId);
startActivity(intent);
}
}
我应该如何继续创建会话?谢谢你的时间 :)
解决方案
你可以这样使用
getSharedPreferences("guard",0)
getSharedPreferences("resident",0)
推荐阅读
- amazon-web-services - 使用 JQ 将 AWS 输出转换为 CSV
- twitter-bootstrap - Bootstrap input-group-sm 和 input-group-append 不起作用
- maven - 缺少驱动程序类 com.ibm.db2.jcc.DB2Driver 的依赖项
- regex - 将 url 与数字 1-50 匹配并忽略任何更大的内容
- android - UniMag 读卡器 API 在 Xamarin 上设置期间不接受 xml 配置文件
- php - php curl 在我解析文件时删除了一个会话
- php - 如何在 SQL 查询中跳过一行?
- sql - PostgreSQL 当前服务器名称
- c# - 使用 C# 从 Google 翻译中得到错误的翻译
- android - 在 ViewPager 中以编程方式更改语言