您好,登錄后才能下訂單哦!
本文實例講述了Android開發實現查詢遠程服務器的工具類QueryUtils。分享給大家供大家參考,具體如下:
/** * 查詢遠程服務器的工具 * @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; } }
更多關于Android相關內容感興趣的讀者可查看本站專題:《Android開發入門與進階教程》、《Android視圖View技巧總結》、《Android編程之activity操作技巧總結》、《Android操作SQLite數據庫技巧總結》、《Android操作json格式數據技巧總結》、《Android數據庫操作技巧總結》、《Android文件操作技巧匯總》、《Android編程開發之SD卡操作方法匯總》、《Android資源操作技巧匯總》及《Android控件用法總結》
希望本文所述對大家Android程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。