蛋疼 这本什么代码都是支言片语的,想自己敲敲看根本没办法
各种自己写的工具类又不给出来,不想看了
什么鬼啊
App数据缓存设计
数据缓存策略
访问api,主要慢在一来一回的传输速度上,可以:
1.减少api的调用次数,比如对于一个app页面,需要分别从3个api接口获取数据,那么可以做一个新的api接口,将这3个部分都获取到后一次性返回
2.App调用一次api后,在一个时间段内都不再调用,仍然使用上次获取的数据,数据保存在app上,我们称之为app缓存,这个时间段我们称之为app缓存时间.
3.App缓存只针对get请求,post不适用,因为get是获取数据,post是修改数据
4.由于缓存数据比较大,我们将其存在SD卡上,而不是内存中
用户登陆
用户登陆是考察一个app开发人员是否合格的衡量标准
登陆后的各种情形:
1.点击登陆按钮后直接打开mainactivity
2.在页面A,想跳转到页面B,需要携带一些参数,却发现没有登陆,于是先到Login页面,也跳到B
if(User.isLogin()){
}else{
Intent intent=new Intent(LoginMainAcitivity,this,LoginAcitivity.class);
intent.putExtra(AppConstants.NeedCallback.true);
startAcitivity(intent,LOGIN_REDIRECT_OUTSIDE)
}
3.A,执行某一个操作,发现没有登陆,跳转到登陆页面,登陆成功后回来A继续执行操作
if(User.isLogin()){
}else{
Intent intent=new Intent(LoginMainAcitivity,this,LoginAcitivity.class);
intent.putExtra(AppConstants.NeedCallback.true);
startAcitivity(intent,LOGIN_REDIRECT_INSIDE)
}
自动登陆
所谓自动登陆,就是登陆成功后,重启App依然是登陆状态
最直接的方法是:保存到本地,模拟用户登陆操作
1.有风险
2.会有登陆页面一闪而过
Cookie机制
1.app登陆成功有会有的cookie存放在Response的header中,我们需要将其取出存放到本地
2.取出cookis
addCookie();
response=httpClient.execute(request);
3.