Android开发实现查询远程服务器的工具类QueryUtils完整实例
作者:LovooGod 时间:2021-11-06 14:57:10
本文实例讲述了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程序设计有所帮助。
来源:http://blog.csdn.net/lovoo/article/details/51386855
标签:Android,服务器,工具类
0
投稿
猜你喜欢
springboot整合企微webhook机器人发送消息提醒
2023-10-10 01:29:08
Android应用内悬浮窗的实现方案示例
2022-05-07 20:29:24
基于android实现五子棋开发
2022-05-22 14:21:43
JAVA IO API使用详解
2021-07-27 14:45:48
C#实现获取Excel中图片所在坐标位置
2021-10-14 23:36:18
Java中synchronized的几种使用方法
2023-06-19 16:33:28
java中的基础运算符
2022-06-23 04:19:38
SpringMVC使用ResponseEntity实现文件上传下载
2023-08-20 02:10:58
Android实现GPS定位代码实例
2022-07-14 17:26:21
Android仿微信之界面导航篇(1)
2022-07-06 06:59:50
Visual Studio 2019 清理空行问题(非正则表达式)
2023-10-27 16:05:22
IDEA2022版本创建maven web项目的两种方式详解
2022-04-24 19:34:54
.NET C#利用ZXing生成、识别二维码/条形码
2022-03-25 12:20:45
详解Kotlin:forEach也能break和continue
2022-05-03 01:24:10
C#装箱和拆箱原理详解
2021-12-29 16:07:26
WinForm项目开发中Excel用法实例解析
2022-07-11 10:23:03
C# 常用日期时间函数(老用不熟)
2021-08-21 10:12:18
mybatis注解与xml常用语句汇总
2022-05-17 18:39:47
Java多线程下解决数据安全问题
2022-05-16 04:48:45
Android实现简单旋转动画
2023-11-07 09:50:58