/** * 查询远程服务器的工具 * @author chen.lin * */public class QueryUtils {    private static final String TAG = "CommonUtils";    private static QueryUtils instance;    private SharedPreferences sp;    private QueryUtils(Context context){        sp = context.getSharedPreferences(Constant.CONFIG, Context.MODE_PRIVATE);    }    public static QueryUtils getInstance(Context context){        if (instance == null) {            synchronized (QueryUtils.class) {                if (instance == null) {                    instance = new QueryUtils(context);                }            }        }        return instance;    }    /** * 请求服务器得到返回值 * * @param keyword * @return * @throws Exception */    public String getValue(String keyword, String reqType) throws Exception {        String returnValue = null;        // 使用Map封装请求参数        Map<String, String> map = new HashMap<String, String>();        map.put("reqType", reqType);        map.put("localIP", sp.getString(Constant.NETIP, ""));        if (keyword != null && !"".equals(keyword)) {            map.put("keyword", keyword);        }        String url = "http://" + sp.getString(Constant.NETURL, "") + "/ymerp/" + "ServiceDocumentServlet";        returnValue = HttpUtil.postRequest(url, map);        return returnValue;    }    /** * 请求服务器得到返回值 * * @param keyword * @return * @throws Exception */    public String queryServer(String keyword, String reqType, String servlet) throws Exception {        String returnValue = null;        // 使用Map封装请求参数        Map<String, String> map = new HashMap<String, String>();        map.put("reqType", reqType);        map.put("localIP", sp.getString(Constant.NETIP, ""));        if (!TextUtils.isEmpty(keyword)) {            map.put("keyword", keyword);        }        String url = "http://" + sp.getString(Constant.NETURL, "") + "/ymerp/" + servlet;        returnValue = HttpUtil.postRequest(url, map);        return returnValue;    }    /** * 将json 数组转换为Map 对象 * * @param jsonString * @return */    @SuppressLint("SimpleDateFormat")    public static HashMap<String, Object> getMap(String jsonStr, String title, String timeStr) {        SimpleDateFormat yymmdd = new SimpleDateFormat("yyyy-MM-dd");        JSONObject jsonObject = null;        String key = null;        Object value = null;        try {            jsonObject = new JSONObject(jsonStr);            Iterator<String> it = jsonObject.keys();            HashMap<String, Object> valueMap = new HashMap<String, Object>();            while (it.hasNext()) {                key = (String) it.next();                value = jsonObject.get(key);                if (key != null && title.equals(key) && value != null) {                    String valuestr = value.toString();                    if (valuestr.length() > 15) {                        valuestr = valuestr.substring(0, 13) + "...";                        value = valuestr;                    }                }                if (key != null && timeStr.equals(key)) {                    try {                        if (value != null) {                            Date date = (Date) value;                            value = yymmdd.format(date);                        } else {                            valueMap.put(key, "");                        }                    } catch (Exception e) {                    }                }                if (key != null && value != null) {                    valueMap.put(key, value);                }            }            return valueMap;        } catch (JSONException e) {            e.printStackTrace();        }        return null;    }}

更多相关文章

  1. 【Android】volley网络框架的文件下载
  2. Android(安卓)HttpGet和HttpPost设置超时
  3. 第一个Android登录页面 | HTTP 请求验证登录 | 完整代码
  4. Android(安卓)封装http请求的工具类
  5. Android(安卓)Post Get 示例
  6. android http get请求中的乱码问题
  7. Android作为HTTP服务器--NanoHTTPD源码分析
  8. 使用NanoHTTPD在android实现web迷你服务器
  9. Android(安卓)SDK Manager设置代理服务器和端口

随机推荐

  1. Android(安卓)RecyclerView和ListView的
  2. Android中的MVP笔记之四: Data Binding 库
  3. 浅析Android(安卓)Service 中 onStartCom
  4. Android多线程——线程池ThreadPoolExecu
  5. android studio中xml文件报错: URI is not
  6. MPAndroidChart中使用 LineChart 踩得坑!
  7. Mac OS X下编译Android源码
  8. 探索Android(安卓)FrameWork底层开发
  9. Android(安卓)apk文件拆解与重新打包
  10. Ubuntu下Eclipse3.6.1安装ADT插件可能遇