UserManager.java
3.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
package com.chudiangameplay.android.manager;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.text.TextUtils;
import com.chudiangameplay.android.MyApplication;
import com.chudiangameplay.android.bean.UserInfo;
import com.chudiangameplay.android.constant.SPConstants;
import com.chudiangameplay.android.event.Event_LoginStateChange;
import com.chudiangameplay.android.interface_.CommCallBack;
import com.chudiangameplay.android.module_im.manager.IM_Manager;
import com.chudiangameplay.android.tool.Log;
import com.chudiangameplay.android.tool.SPUtil;
import com.chudiangameplay.android.ui.activity.LoginActivity;
import com.chudiangameplay.android.ui.activity.MainActivity;
import org.greenrobot.eventbus.EventBus;
/**
* Created by Administrator on 2018/8/29.
*/
public class UserManager {
private static UserInfo userInfo;
public static void saveUserInfo(Context context) {
SPUtil.putObjectValue(MyApplication.context, SPConstants.UserInfo, userInfo);
}
//保存用户信息
public static void saveUserInfo(Context context, UserInfo info) {
SPUtil.putObjectValue(MyApplication.context, SPConstants.UserInfo, info);
userInfo = info;
}
//获取用户信息
public static UserInfo getUserInfo(Context context) {
if (userInfo == null) {
userInfo = (UserInfo) SPUtil.getObjectValue(MyApplication.context, UserInfo.class, SPConstants.UserInfo);
}
return userInfo;
}
public static int getUserNobleCode() {
if (userInfo == null) {
userInfo = (UserInfo) SPUtil.getObjectValue(MyApplication.context, UserInfo.class, SPConstants.UserInfo);
}
return userInfo.nobleRankCode;
}
//是否登陆
public static boolean isLogin(Context context) {
return !TextUtils.isEmpty(getToken(context));
}
//保存登录token
public static void saveToken(Context context, String token) {
SPUtil.putValue(MyApplication.context, SPConstants.Token, token);
Log.i("保存token:" + token);
}
//获取登录token
public static String getToken(Context context) {
return SPUtil.getStringValue(MyApplication.context, SPConstants.Token, null);
}
//退出登录
public static void logout(final Context context) {
if (ChatRoomManager.getInstance().roomInfo != null) {
ChatRoomManager.getInstance().closeRoom(new CommCallBack() {
@Override
public void onResult(Object obj) {
logout1(context);
}
});
} else {
logout1(context);
}
}
public static void logout1(Context context) {
SPUtil.putObjectValue(MyApplication.context, SPConstants.QiangDan_Info, null);
userInfo = null;
saveUserInfo(MyApplication.context);
saveToken(MyApplication.context, "");
IM_Manager.loginout();
EventBus.getDefault().post(new Event_LoginStateChange());
//跳首页
if (context instanceof Activity && !(context instanceof MainActivity)) {
Intent intent = new Intent(MyApplication.context, MainActivity.class);
context.startActivity(intent);
}
}
//跳登录页
public static void showLogin(Context context) {
Intent intent = new Intent(context, LoginActivity.class);
context.startActivity(intent);
}
//uid是否是自己
public static boolean isSelf(Context context, String uid) {
if (getUserInfo(context) != null && !TextUtils.isEmpty(uid)) {
return uid.equals(getUserInfo(context).id);
} else {
return false;
}
}
}