From 7c3d23232c5c0328131d2b560e6224dd0d566f01 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 24 十一月 2022 14:27:22 +0800 Subject: [PATCH] Merge branch 'wxr-sdk-test' into SDK --- AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java | 94 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 94 insertions(+), 0 deletions(-) diff --git a/AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java b/AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java new file mode 100644 index 0000000..05bef9f --- /dev/null +++ b/AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java @@ -0,0 +1,94 @@ +package com.utils; + +import android.content.Intent; +import android.os.Bundle; +import android.widget.Toast; + +import com.common.openapi.ClassInstanceManager; +import com.common.openapi.DeviceSubAccountListService; +import com.common.openapi.IGetDeviceInfoCallBack; +import com.common.openapi.MethodConst; +import com.common.openapi.entity.DeviceDetailListData; +import com.lechange.demo.ui.DeviceDetailActivity; +import com.lechange.demo.ui.DeviceListActivity; +import com.lechange.demo.ui.DeviceOnlineMediaPlayActivity; +import com.mm.android.deviceaddmodule.openapi.HDLMD5Utils; + + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +/** + * Created by hxb on 2022/11/22. + */ +public class DeviceUtils implements IGetDeviceInfoCallBack.ISubAccountDevice< DeviceDetailListData.Response> { + + private String deviceId; + public DeviceUtils(String deviceId){ + this.deviceId=deviceId; + } + private static List<DeviceDetailListData.ResponseData.DeviceListBean> datas = new ArrayList<>(); + + private void getDeviceList() { + DeviceSubAccountListService deviceSubAccountListService = ClassInstanceManager.newInstance().getDeviceSubAccountListService(); + deviceSubAccountListService.getSubAccountDeviceList(1,this); + } + + public void play() { + for (DeviceDetailListData.ResponseData.DeviceListBean deviceListBean : datas) { + if (deviceListBean.deviceId.equals(deviceId)) { + if (!deviceListBean.status.equals("online")) { + return; + } + Bundle bundle = new Bundle(); + bundle.putSerializable(MethodConst.ParamConst.deviceDetail, deviceListBean); + Intent intent = new Intent(HdlToLcUtils.getInstance().getActivity(), DeviceOnlineMediaPlayActivity.class); + intent.putExtras(bundle); + HdlToLcUtils.getInstance().getActivity().startActivity(intent); + + return; + } + } + getDeviceList(); + } + @Override + public void DeviceList(DeviceDetailListData.Response responseData) { + + if (responseData.data != null && responseData.data.deviceList != null && responseData.data.deviceList.size() != 0) { + Iterator<DeviceDetailListData.ResponseData.DeviceListBean> iterator = responseData.data.deviceList.iterator(); + while (iterator.hasNext()) { + DeviceDetailListData.ResponseData.DeviceListBean next = iterator.next(); + if (next.channels != null && next.channels.size() == 0 && !next.catalog.contains("NVR")) { + // 浣跨敤杩唬鍣ㄤ腑鐨剅emove()鏂规硶,鍙互鍒犻櫎鍏冪礌. + iterator.remove(); + } + } + } + + if ((responseData.data == null || responseData.data.deviceList == null || responseData.data.deviceList.size() == 0)) { + return; + } + + datas.addAll(responseData.data.deviceList); + + for (DeviceDetailListData.ResponseData.DeviceListBean deviceListBean : datas) { + if (deviceListBean.deviceId.equals(deviceId)) { + if (!deviceListBean.status.equals("online")) { + return; + } + Bundle bundle = new Bundle(); + bundle.putSerializable(MethodConst.ParamConst.deviceDetail, deviceListBean); + Intent intent = new Intent(HdlToLcUtils.getInstance().getActivity(), DeviceOnlineMediaPlayActivity.class); + intent.putExtras(bundle); + HdlToLcUtils.getInstance().getActivity().startActivity(intent); + + return; + } + } + } + @Override + public void onError(Throwable throwable) { + Toast.makeText(HdlToLcUtils.getInstance().getActivity(), throwable.getMessage(), Toast.LENGTH_SHORT).show(); + } +} -- Gitblit v1.8.0