@Override public int call(Object result) { CxTabloid tabloidData = null; CxLog.e(TAG, result.toString()); try { tabloidData = new TabloidParse().parseTabloid(result); } catch (Exception e) { e.printStackTrace(); } if (tabloidData == null || tabloidData.getRc() == 408) { showResponseToast( CxApplication.getInstance().getString(R.string.cx_fa_net_response_code_null), 0); return -2; } // 请求成功 if (tabloidData.getRc() == 0) { // 将数据插入到库中 TabloidDao dao = new TabloidDao(CxTabloidActivity.this); dao.insertTabloidBatch(tabloidData.getDataList()); } else { if (TextUtils.isEmpty(tabloidData.getMsg())) { showResponseToast( CxApplication.getInstance().getString(R.string.cx_fa_net_response_code_fail), 0); } else { showResponseToast(tabloidData.getMsg(), 0); } } return 0; }
@Override public int call(Object result) { CxTabloidCateConf cateConf = null; CxLog.e(TAG, result.toString()); try { cateConf = new TabloidParse().parseCateConf(result); } catch (Exception e) { e.printStackTrace(); } if (cateConf == null || cateConf.getRc() == 408) { showResponseToast( CxApplication.getInstance().getString(R.string.cx_fa_net_response_code_null), 0); return -2; } // 请求成功 if (cateConf.getRc() == 0) { // 更新DB (跟库中的版本进行对比,只有版本更新了,才需要更新里面的配置数据) TabloidDao dao = new TabloidDao(CxTabloidActivity.this); String v2 = dao.getVersion(); CxLog.e(TAG, "v2" + v2); if (!cateConf.getData().getVersion().equals(v2)) { // 更新全局配置(先删除,再更新) dao.delPubConfig(); dao.insertPubConfig(cateConf.getData()); // 先删除所有的配置,然后再添加新获取的数据 dao.delAllCateConf(); dao.insertCateConfBatch(cateConf.getData().getConfig()); } if (v2.equals("0")) { // 如果缓存中没数据,需要把网络中返回的数据重绘到UI上 Message msg = new Message(); msg.obj = cateConf.getData(); new Handler(Looper.getMainLooper()) { public void handleMessage(Message msg) { buildView((TabloidCateConfData) msg.obj); // 重绘显示页面 }; }.sendMessage(msg); // 库中没有小报数据,则需要从服务器取一次(用户第一次进入会有这种情况) getTabloidDataFromServer(); } } else { if (TextUtils.isEmpty(cateConf.getMsg())) { showResponseToast( CxApplication.getInstance().getString(R.string.cx_fa_net_response_code_fail), 0); } else { showResponseToast(cateConf.getMsg(), 0); } } return 0; }