private List<String> parseResponse(String Response) {
        // 返回的数据的格式一般为
        // status = '', code => '', 'msg' => , 'data' => ''
        // 如果返回的数据没有包含 status:ok, 则整个数据返回空
        // {"status":"error","code":"200","msg":"invial password","data":[]}
        ResponseStatus = this.parseResponseStatus(Response);
        Log.d("parseResponse", "get response status " + ResponseStatus.get("status"));
        ArrayList<String> result = new ArrayList<String>();
        if (ResponseStatus.containsKey("status")) {
            if (!ResponseStatus.get("status").equals("ok")) {
                Log.e("parseResponse", "parseResponseStatus not ok, " + Response);
                return null;
            }
            try {
                JSONObject jsonObj = new JSONObject(Response);
                if (jsonObj.has("data")) {
                    String data = jsonObj.getString("data");
                    if (data != null) {
                        result.add(data);
                    } else {
                        org.json.JSONArray jArray = jsonObj.getJSONArray("data");
                        if (jArray == null || jArray.length() < 1) {
                            return null;
                        }
                        for (int i = 0; i < jArray.length(); i++) {
                            result.add(jArray.getString(i));
                        }
                    }
                } else {
                    Log.e("parseResponse", "parseResponse do not has data key");
                }
            } catch (Exception e) {
                Log.e("parseResponse", "parseResponse exception " + e.toString());
            }
        }
        return result;
    }