From 9e5babf9db52e64bdae60137be7696e56241fca6 Mon Sep 17 00:00:00 2001 From: xingzilong <xingzilong@454eff88-639b-444f-9e54-f578c98de674> Date: 星期五, 18 八月 2017 18:12:17 +0800 Subject: [PATCH] H264 NALU解析 并在RTSPServer判断 --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java | 132 ++++++++++++++++++++++++++------------------ 1 files changed, 78 insertions(+), 54 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java index d02dafa..353dec7 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java @@ -2,30 +2,47 @@ import android.content.Context; import android.content.SharedPreferences; +import android.view.View; +import android.view.inputmethod.InputMethodManager; import android.widget.Toast; + +import com.bsk.zhangbo.demoforbsk.R; +import com.lidroid.xutils.view.annotation.event.OnClick; import cn.com.basic.face.base.BaseApplication; import cn.com.basic.face.base.MainActivity; import cn.com.basic.face.discern.common.CommonVariables; +import cn.com.basic.face.discern.common.SqliteSqlBean; +import cn.com.basic.face.discern.query.item.CheckInQueryItem; +import cn.com.basic.face.discern.query.item.DeviceQueryItem; +import cn.com.basic.face.fragment.CheckInFragment; import cn.com.basic.face.fragment.DeviceFragment; +import cn.com.basic.face.fragment.VisitorRegisterFragment; import cn.com.basic.face.service.sqlite.DeviceDao; +import cn.com.basic.face.service.sync.DeleteLastMonthRecordAndPictureThread; +import cn.com.basic.face.service.sync.SyncDownThread; import cn.com.basic.face.util.AppApi; import org.xutils.http.RequestParams; import org.xutils.x; +import java.io.File; import java.util.List; import java.util.Map; import cn.com.basic.face.discern.common.BaseCommonCallBack; import cn.com.basic.face.discern.entity.Device; import cn.com.basic.face.util.SharedPreferencesUtils; -import cn.com.basic.face.service.sync.SyncUpAndDownThread; +import cn.com.basic.face.service.sync.SyncUpThread; +import cn.com.basic.face.util.SqliteSqlUtil; +import cn.com.basic.face.util.ToastUtil; public class DeviceMng { public static DeviceMng instance = new DeviceMng(); - private SyncUpAndDownThread syncUpAndDownThread = null; + private SyncUpThread syncUpThread = null; + private SyncDownThread syncDownThread = null; + private DeleteLastMonthRecordAndPictureThread deleteLastMonthRecordAndPictureThread = null; public static String authorationId = "101"; @@ -107,9 +124,9 @@ params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId()); x.http().post(params, new BaseCommonCallBack() { public void success() { - List<Device> devices = resultBean.getList(Device.class); + List<DeviceQueryItem> devices = resultBean.getList(DeviceQueryItem.class); if (devices.size() > 0) { - final Device camera1 = devices.get(0); + final DeviceQueryItem camera1 = devices.get(0); BaseApplication.getInstance().setCamera1(camera1); DeviceFragment.getInstance().setCamera1(camera1); } @@ -122,24 +139,24 @@ params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId()); x.http().post(params, new BaseCommonCallBack() { public void success() { - List<Device> devices = resultBean.getList(Device.class); + List<DeviceQueryItem> devices = resultBean.getList(DeviceQueryItem.class); if (devices.size() > 0) { - final Device camera2 = devices.get(0); + final DeviceQueryItem camera2 = devices.get(0); BaseApplication.getInstance().setCamera2(camera2); DeviceFragment.getInstance().setCamera2(camera2); } } }); } else { - List<Device> camera1List = DeviceDao.getInstance().loadCamera(CommonVariables.DeviceType.CAMERA1, device.getBelongId()); + List<DeviceQueryItem> camera1List = DeviceDao.getInstance().loadCamera(CommonVariables.DeviceType.CAMERA1, device.getBelongId()); if (camera1List != null && camera1List.size() > 0) { - final Device camera1 = camera1List.get(0); + final DeviceQueryItem camera1 = camera1List.get(0); BaseApplication.getInstance().setCamera1(camera1); DeviceFragment.getInstance().setCamera1(camera1); } - List<Device> camera2List = DeviceDao.getInstance().loadCamera(CommonVariables.DeviceType.CAMERA2, device.getBelongId()); + List<DeviceQueryItem> camera2List = DeviceDao.getInstance().loadCamera(CommonVariables.DeviceType.CAMERA2, device.getBelongId()); if (camera2List != null && camera2List.size() > 0) { - final Device camera2 = camera2List.get(0); + final DeviceQueryItem camera2 = camera2List.get(0); BaseApplication.getInstance().setCamera2(camera2); DeviceFragment.getInstance().setCamera2(camera2); } @@ -147,13 +164,21 @@ } }); synchronized (this) { - if (syncUpAndDownThread == null) { - syncUpAndDownThread = new SyncUpAndDownThread(); - syncUpAndDownThread.start(); - } + if (syncUpThread == null) { + syncUpThread = new SyncUpThread(); + syncUpThread.start(); + } + if (syncDownThread == null) { + syncDownThread = new SyncDownThread(); + syncDownThread.start(); + } + if (deleteLastMonthRecordAndPictureThread == null) { + deleteLastMonthRecordAndPictureThread = new DeleteLastMonthRecordAndPictureThread(); + deleteLastMonthRecordAndPictureThread.start(); + } } } else { - Toast.makeText(BaseApplication.getInstance(), "鏁版嵁搴撲腑鎵句笉鍒拌璁惧", Toast.LENGTH_SHORT).show(); + ToastUtil.show("鏁版嵁搴撲腑鎵句笉鍒拌璁惧"); } } @@ -214,26 +239,11 @@ String password = "admin12345"; String ip = "192.168.1.70"; String port = "554"; - -// SharedPreferences camera1 = DeviceMng.getInstance().loadSharedPreferences(CommonVariables.DeviceSharedPreferences.CAMERA1); -// if (!"".equals(camera1.getString("fragment_device_right_camera1_username", ""))) { -// username = camera1.getString("fragment_device_right_camera1_username", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_password", ""))) { -// password = camera1.getString("fragment_device_right_camera1_password", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_ip", ""))) { -// ip = camera1.getString("fragment_device_right_camera1_ip", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_port", ""))) { -// port = camera1.getString("fragment_device_right_camera1_port", ""); -// } - -// return "rtsp://"+username+":"+password+"@"+ip+":"+port+"/h264/ch1/sub/av_stream"; -// return "rtsp://Admin:1234@192.168.1.22/h264"; -// return "rtsp://admin:a1234567@192.168.1.132:554/h264/ch1/sub/av_stream"; + DeviceQueryItem camera2 = DeviceFragment.getInstance().getCamera2(); + if (camera2 != null) { + return "rtsp://admin:admin12345@"+camera2.getIp()+":554/h264/ch1/main/av_stream"; + } return "rtsp://admin:admin12345@192.168.1.202:554/h264/ch1/main/av_stream"; -// return "rtsp://admin:a1234567@192.168.1.132:554/h264/ch1/main/av_stream"; } public String getCamera1Address() { @@ -241,28 +251,42 @@ String password = "a1234567"; String ip = "192.168.1.68"; String port = "554"; - -// SharedPreferences camera1 = DeviceMng.getInstance().loadSharedPreferences(CommonVariables.DeviceSharedPreferences.CAMERA2); -// if (!"".equals(camera1.getString("fragment_device_right_camera1_username", ""))) { -// username = camera1.getString("fragment_device_right_camera1_username", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_password", ""))) { -// password = camera1.getString("fragment_device_right_camera1_password", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_ip", ""))) { -// ip = camera1.getString("fragment_device_right_camera1_ip", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_port", ? -// ""))) { -// port = camera1.getString("fragment_device_right_camera1_port", ""); -// } - - //return "rtsp://"+username+":"+password+"@"+ip+":"+port+"/h264/ch1/sub/av_stream"; -// return "rtsp://admin:a1234567@192.168.1.68:554/h264/ch1/main/av_stream"; -// return "rtsp://admin:a1234567@192.168.1.69:554/h264/ch1/sub/av_stream"; -// return "rtsp://Admin:1234@192.168.1.22/h264"; + DeviceQueryItem camera1 = DeviceFragment.getInstance().getCamera1(); + if (camera1 != null) { + return "rtsp://admin:a1234567@"+camera1.getIp()+":554/h264/ch1/main/av_stream"; + } return "rtsp://admin:a1234567@192.168.1.201:554/h264/ch1/main/av_stream"; } + public void updateCamera(RequestParams params, Device camera) { + if (BaseApplication.getInstance().networkAvailable()) { + params.setUri(AppApi.BASE_URL +AppApi.CAMERA_UPDATE); + x.http().post(params, new BaseCommonCallBack() { + @Override + public void success() { + SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class)); + Toast.makeText(BaseApplication.getInstance(),"淇敼鎴愬姛", Toast.LENGTH_SHORT).show(); + } + }); + } else { + DeviceDao.getInstance().updateCamera(camera); + } + } + + public void updateAndroidDevice(RequestParams params, Device androidDevice) { + if (BaseApplication.getInstance().networkAvailable()) { + params.setUri(AppApi.BASE_URL +AppApi.ANDROID_DEVICE_UPDATE); + x.http().post(params, new BaseCommonCallBack() { + @Override + public void success() { + SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class)); + Toast.makeText(BaseApplication.getInstance(),"淇敼鎴愬姛", Toast.LENGTH_SHORT).show(); + } + }); + } else { + DeviceDao.getInstance().updateAndroidDevice(androidDevice); + } + } + } -- Gitblit v1.8.0