wxr
2023-02-21 84396f60e368a5f5261ba21121d013ef8bfbf523
AndroidOpenDemo/DeviceAddModule/src/main/java/com/mm/android/deviceaddmodule/openapi/HttpSend.java
@@ -1,5 +1,6 @@
package com.mm.android.deviceaddmodule.openapi;
import android.content.Intent;
import android.text.TextUtils;
import com.google.gson.Gson;
@@ -35,7 +36,11 @@
        Map<String, Object> map = paramsInit(paramsMap);
        JsonObject jsonResult = null;
        if (CONST.isHdlServer()) {
            jsonResult = doPost(CONST.HOST + "/home-wisdom/imou/openapi/" + method, map, timeOut);
            if (method.equals("bindDevice")) {
                jsonResult = doPost(CONST.HOST + "/home-wisdom/app/device/independentRegister", map, timeOut);
            } else {
                jsonResult = doPost(CONST.HOST + "/home-wisdom/imou/openapi/" + method, map, timeOut);
            }
        } else {
            jsonResult = doPost(CONST.HOST + "/openapi/" + method, map, timeOut);
            if (jsonResult == null) {
@@ -49,29 +54,49 @@
        }
        String code = jsonResult.get("code").getAsString();
        if (!"0".equals(code)) {
            String msg = jsonResult.get("msg").getAsString();
            throw new BusinessException(code + msg);
            try {
                String msg = jsonResult.get("msg").getAsString();
                if (method.equals("bindDevice")) {
                    Intent intent = new Intent();
                    intent.setAction("hdlUserDeviceBind");
                    intent.putExtra("data", jsonResult.toString());
                    LCDeviceEngine.newInstance().getContext().sendBroadcast(intent);
                }
                throw new BusinessException(code + msg);
            }catch (Exception exception){
                String msg = jsonResult.get("message").getAsString();
                if (method.equals("bindDevice")) {
                    Intent intent = new Intent();
                    intent.setAction("hdlUserDeviceBind");
                    intent.putExtra("data", jsonResult.toString());
                    LCDeviceEngine.newInstance().getContext().sendBroadcast(intent);
                }
                throw new BusinessException(code + msg);
            }
        }
        JsonObject jsonData = new JsonObject();
        try {
            JsonObject jsonData = jsonResult.getAsJsonObject("data");
            jsonData = jsonResult.getAsJsonObject("data");
            if (jsonData == null) {
                jsonData = new JsonObject();
            }
            return jsonData;
        } catch (Throwable e) {
            BusinessException businessException = new BusinessException(e);
            throw businessException;
//            BusinessException businessException = new BusinessException(e);
//            throw businessException;
        }
        return jsonData;
    }
    private static JsonObject doPost(String url, Map<String, Object> map, int timeOut) throws BusinessException {
        Gson gson = new Gson();
        map.put("homeId", LCDeviceEngine.newInstance().getHomeId());
        String json;
        JsonObject jsonObject;
        if(CONST.isHdlServer()) {
            map.put("homeId", LCDeviceEngine.newInstance().getHomeId());
            if (map.containsKey("params")) {
                Map<String, Object> tempMap = (Map<String, Object>) map.get("params");
                map.remove("params");
@@ -98,7 +123,12 @@
        try {
            LogUtil.debugLog(TAG, "reqest: " + url + " data:" + json);
            String openApi = HttpClient.post(url, json, "application/json", "OpenApi",timeOut);
            jsonObject =  new JsonParser().parse(openApi).getAsJsonObject();
            LogUtil.debugLog(TAG, "返回结果: \r\n"  + openApi);
            try {
                jsonObject = new JsonParser().parse(openApi).getAsJsonObject();
            }catch (Exception exception){
                jsonObject = new Gson().fromJson(openApi,JsonObject.class);
            }
        } catch (IOException e) {
            BusinessException b = new BusinessException(e);
            if (e instanceof ConnectTimeoutException || e instanceof SocketTimeoutException