package ren.solid.ganhuoio.utils; import android.content.Context; import com.sina.weibo.sdk.auth.Oauth2AccessToken; import ren.solid.ganhuoio.GanHuoIOApplication; import ren.solid.ganhuoio.bean.Weibo; import ren.solid.library.utils.PrefUtils; /** * Created by _SOLID * Date:2016/5/19 * Time:14:49 */ public class AuthorityUtils { private static Context getContext() { return GanHuoIOApplication.getInstance(); } public static boolean isLogin() { return PrefUtils.getBoolean(GanHuoIOApplication.getInstance(), "isLogin", false); } public static void login(Weibo result) { setUserName(result.getScreen_name()); setDescription(result.getDescription()); setAvatar(result.getAvatar_large()); setIsLogin(true); } public static void logout() { setUserName(""); setDescription(""); setAvatar(""); setIsLogin(false); } private static void setIsLogin(boolean isLogin) { PrefUtils.putBoolean(GanHuoIOApplication.getInstance(), "isLogin", isLogin); } public static void setUserName(String userName) { PrefUtils.putString(getContext(), "UserName", userName); } public static String getUserName() { return PrefUtils.getString(getContext(), "UserName", ""); } public static void setDescription(String desc) { PrefUtils.putString(getContext(), "Description", desc); } public static String getDescription() { return PrefUtils.getString(getContext(), "Description", "未填写"); } public static void setAvatar(String avatar) { PrefUtils.putString(getContext(), "Avatar", avatar); } public static String getAvatar() { return PrefUtils.getString(getContext(), "Avatar", ""); } //新浪微博相关 public static void setAccessToken(String access_token) { PrefUtils.putString(getContext(), "access_token", access_token); } public static String getAccessToken() { return PrefUtils.getString(getContext(), "access_token", ""); } public static void setUid(String uid) { PrefUtils.putString(getContext(), "uid", uid); } public static String getUid() { return PrefUtils.getString(getContext(), "uid", ""); } public static void setRefreshToken(String refresh_token) { PrefUtils.putString(getContext(), "refresh_token", refresh_token); } public static String getRefreshToken() { return PrefUtils.getString(getContext(), "refresh_token", ""); } public static void setExpiresIn(long expires_in) { PrefUtils.putLong(getContext(), "expires_in", expires_in); } public static long getExpiresIn() { return PrefUtils.getLong(getContext(), "expires_in", 0); } /** * 从 SharedPreferences 读取 Token 信息。 * * @return 返回 Token 对象 */ public static Oauth2AccessToken readOauth2AccessToken() { Oauth2AccessToken token = new Oauth2AccessToken(); token.setUid(getUid()); token.setToken(getAccessToken()); token.setRefreshToken(getRefreshToken()); token.setExpiresTime(getExpiresIn()); return token; } /** * 保存 Token 对象到 SharedPreferences。 * * @param token Token 对象 */ public static void writeAccessToken(Oauth2AccessToken token) { setUid(token.getUid()); setAccessToken(token.getToken()); setRefreshToken(token.getRefreshToken()); setExpiresIn(token.getExpiresTime()); } }