Account.class
package wjb.beans;
import android.content.Context;
import com.orhanobut.logger.Logger;
import java.io.File;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
/**
* 保存数据到本地,包括用户数据和全局数据.
*/
public class AccountInfo {
private static final String ACCOUNT = "ACCOUNT";
// 登出
public static void loginOut(Context ctx) {
File dir = ctx.getFilesDir();
String[] fileNameList = dir.list();
for (String item : fileNameList) {
File file = new File(dir, item);
if (file.exists() && !file.isDirectory()) {
file.delete();
}
}
}
public static void saveAccount(Context ctx, UserObject data) {
if (ctx == null) {
Logger.i("上下文为空");
}
File file = new File(ctx.getFilesDir(), ACCOUNT);
if (file.exists()) {
file.delete();
}
try {
ObjectOutputStream oos = new ObjectOutputStream(ctx.openFileOutput(ACCOUNT, Context.MODE_PRIVATE));
oos.writeObject(data);
oos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static UserObject loadAccount(Context ctx) {
UserObject data = null;
File file = new File(ctx.getFilesDir(), ACCOUNT);
if (file.exists()) {
try {
ObjectInputStream ois = new ObjectInputStream(ctx.openFileInput(ACCOUNT));
data = (UserObject) ois.readObject();
ois.close();
} catch (Exception e) {
e.printStackTrace();
}
}
if (data == null) {
data = new UserObject();
}
return data;
}
public static boolean isLogin(Context ctx) {
File file = new File(ctx.getFilesDir(), ACCOUNT);
return file.exists();
}
}