我正在使用一个库,每次我都想先使用它i have to login
。这需要一些时间才能登录object
并且这样做并不好。
我不想每次打开我的应用程序都等。
有没有办法保持这个登录对象? (关闭应用程序后)我可以将此对象保留在内存或磁盘中,还是保存在SharedPreferences
中作为字符串?
目标类有这些文件:
protected String deviceId;
private String username;
private String password;
protected boolean isLoggedIn;
private String uuid;
protected String rankToken;
private long userId;
protected Response lastResponse;
protected OkHttpClient client;
private final Set<Cookie> cookieStore = new HashSet();
如果您有解决方案,请同时编写示例代码。
我尝试了这个沙发并且无法正常工作:
String json = gson.toJson(insta,Target.class);
Target myTarget = gson.fromJson(json, Target.class);
且json
为空。
答案 0 :(得分:0)
您使用的是哪个库? 如果图书馆提供季票令牌,您可以存储季票令牌。 此外,为什么不将数据存储在数据库(本地)中,当用户启动应用程序时,您首先从数据库获取数据,同时在后台执行登录请求。一旦登录,只需更新数据如果需要更新。
答案 1 :(得分:0)
您可以通过多种方式在Android中保留信息。
但请记住,如果您可以轻松地保留简单类型(boolean
,long
,String
),则必须确定哪些信息对于其他类型的序列化非常重要。
例如,OkHttpClient
不应该保留,因为它只是一个Web客户端,并且不包含任何有价值的数据。
说过你可以使用下面的一种可能性:
Response
,OkHttpClient
和Cookie
类(要求您将序列化信息与其他类别分离)。