From 2d588d61fdee6506af81d05a59e40fdd519cd50d Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期二, 18 四月 2017 15:47:04 +0800
Subject: [PATCH]
---
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java | 31 +++++++++++----
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java | 10 +++++
VisitFace/DemoForBsk/app/src/main/jniLibs/armeabi-v7a/librtspface.so | 0
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java | 54 +++++++++++++++++++++------
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/surveilance/SurveillanceBottomListView.java | 4 ++
5 files changed, 79 insertions(+), 20 deletions(-)
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java
index 6c7c99f..564b981 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java
@@ -54,4 +54,14 @@
public static final int reachBottom = 3;
}
+ public static class Surveillance {
+ public static final int VISIT_REGISTER_ITEM_TYPE = 1;
+ public static final int VISIT_CHECK_IN_ITEM_TYPE = 2;
+ public static final int VISIT_BLANK_ITEM_TYPE = 3;
+
+ public static final int REGISTER_CELL_VIEW_INDEX = 0;
+ public static final int CHECK_IN_CELL_VIEW_INDEX = 1;
+ public static final int VISIT_BLANK_CELL_VIEW_INDEX = 2;
+ }
+
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java
index 77c53f1..96c2fad 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java
@@ -10,9 +10,11 @@
import java.util.ArrayList;
import java.util.List;
+import cn.com.basic.face.base.BaseApplication;
import cn.com.basic.face.discern.common.BaseCommonCallBack;
import cn.com.basic.face.discern.common.CommonVariables;
import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
+import cn.com.basic.face.fragment.RegisterFragment;
import cn.com.basic.face.fragment.SurveillanceFragment;
import cn.com.basic.face.util.AppApi;
import cn.com.basic.face.util.Constant;
@@ -36,9 +38,9 @@
int i = 0;
for (SurveillanceQueryItem item : list) {
if (i % 5 == 0) {
- item.setType(Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE);
+ item.setType(CommonVariables.Surveillance.VISIT_REGISTER_ITEM_TYPE);
} else {
- item.setType(Constant.Surveillance.VISIT_CHECK_IN_ITEM_TYPE);
+ item.setType(CommonVariables.Surveillance.VISIT_CHECK_IN_ITEM_TYPE);
}
i++;
}
@@ -76,17 +78,30 @@
public void addBitmap(final List<Bitmap> bitmapList, byte[] byteArray, int len) {
RequestParams params = new RequestParams(AppApi.BASE_URL +AppApi.SURVEILLANCE_UPLOAD);
params.addBodyParameter("base64Photo", Base64.encodeToString(byteArray, 0, len, Base64.DEFAULT));
+ params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getDevice().getCompanyId());
+ params.addBodyParameter("deviceId", BaseApplication.getInstance().getDevice().getDeviceId());
+ params.addBodyParameter("enterOrExit", CommonVariables.EnterOrExit.ENTER+"");
x.http().post(params, new BaseCommonCallBack() {
public void success() {
- String result = "";
- List list = new ArrayList();
- if (result.equals("visit")) {
- list.add(0, "");
- } else if (result.equals("register")) {
- list.add(0, "");
+ SurveillanceQueryItem item = getBean(SurveillanceQueryItem.class);
+ if (item.getType() == CommonVariables.Surveillance.VISIT_REGISTER_ITEM_TYPE
+ || item.getType() == CommonVariables.Surveillance.VISIT_CHECK_IN_ITEM_TYPE
+ ) {
+ List<SurveillanceQueryItem> doubleList = new ArrayList<SurveillanceQueryItem>();
+
+ List list = SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_visit_list_view().getPrevList();
+ list.add(0, item);
+
+ fillBlank(list, doubleList);
+
+ SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_visit_list_view().show(doubleList, true);
}
+
}
});
+ if (bitmapList != null && bitmapList.size() > 0) {
+ //RegisterFragment.getInstance().get_fragment_register_choose_photo().setImageBitmap(bitmapList.get(0));
+ }
}
private void fillBlank(List<SurveillanceQueryItem> list, List<SurveillanceQueryItem> doubleList) {
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
index e7601fc..ef2ddbb 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
@@ -14,6 +14,10 @@
import cn.com.basic.face.fragment.RegisterFragment;
import cn.com.basic.face.service.SurveillanceMng;
+/**
+ * Created by houxiao on 2017/3/21 0021.
+ */
+
class NativeImgIdx {
public int offset;
public int size;
@@ -25,7 +29,18 @@
class RefByteArray
{
public byte[] arr;
+ public byte[][] arr2;
}
+
+class NativeImg
+{
+ public int size;
+ public int type;
+ public int width;
+ public int height;
+ public byte[] image;
+}
+
public class RtspFaceNative {
@@ -41,7 +56,8 @@
public static native void lockFace(int cameraIdx);
public static native void releaseFace(int cameraIdx);
public static native int getFaceList(int cameraIdx, RefByteArray faceListPb);
- public static native ArrayList<NativeImgIdx> getFaceImages(int cameraIdx, RefByteArray faceImages);
+ //public static native ArrayList<NativeImgIdx> getFaceImages(int cameraIdx, RefByteArray faceImages);
+ public static native ArrayList<NativeImg> getFaceImages(int cameraIdx);
public static void faceCallBack(int cameraIdx, int count)
{
@@ -57,24 +73,38 @@
int s = getFaceList(cameraIdx, faceListPb);
Log.i("@@@", "RtspFaceNative.faceCallBack, getFaceList, cameraIdx=" + cameraIdx + ", size=" + s);
- RefByteArray faceImages = new RefByteArray();
- ArrayList<NativeImgIdx> faceImagesIdx = getFaceImages(cameraIdx, faceImages);
+ //RefByteArray faceImages = new RefByteArray();
+ //ArrayList<NativeImgIdx> faceImagesIdx = getFaceImages(cameraIdx, faceImages);
+ //int c = 0;
+ //if (faceImagesIdx != null)
+ // c = faceImagesIdx.size();
+ //Log.i("@@@", "RtspFaceNative.faceCallBack, getFaceImages, cameraIdx=" + cameraIdx + ", count=" + c);
+
+ ArrayList<NativeImg> faceImages = getFaceImages(cameraIdx);
int c = 0;
- if (faceImagesIdx != null)
- c = faceImagesIdx.size();
+ if (faceImages != null)
+ c = faceImages.size();
Log.i("@@@", "RtspFaceNative.faceCallBack, getFaceImages, cameraIdx=" + cameraIdx + ", count=" + c);
+
+ for (int i = 0; i < c; i++)
+ {
+ Log.i("@@@", "cameraIdx=" + cameraIdx +
+ ", i=" + i +
+ ", size=" + faceImages.get(i).size+
+ ", w=" + faceImages.get(i).width +
+ ", h=" + faceImages.get(i).height +
+ ", image[0]=" + faceImages.get(i).image[0] +
+ ", image[1]=" + faceImages.get(i).image[1]);
+ }
try{
List<Bitmap> bitmapList = new ArrayList();
- for (int i = 0; i < faceImagesIdx.size(); i++) {
- if (i >= 1) {
- break;
- }
- NativeImgIdx item = faceImagesIdx.get(i);
- int offset = item.offset;
+ for (int i = 0; i < faceImages.size(); i++) {
+ NativeImg item = faceImages.get(i);
+ int offset = 0;
int size = item.size;
Bitmap bitmap = Bitmap.createBitmap(item.width,item.height, Bitmap.Config.RGB_565);
- ByteBuffer byteBuffer = ByteBuffer.wrap(faceImages.arr, offset, size);
+ ByteBuffer byteBuffer = ByteBuffer.wrap(item.image, offset, size);
bitmap.copyPixelsFromBuffer(byteBuffer);
bitmapList.add(bitmap);
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/surveilance/SurveillanceBottomListView.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/surveilance/SurveillanceBottomListView.java
index 166bf85..752ed10 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/surveilance/SurveillanceBottomListView.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/surveilance/SurveillanceBottomListView.java
@@ -77,4 +77,8 @@
this.setAdapter(mAdapter);
}
+ public List getPrevList() {
+ return this.list;
+ }
+
}
diff --git a/VisitFace/DemoForBsk/app/src/main/jniLibs/armeabi-v7a/librtspface.so b/VisitFace/DemoForBsk/app/src/main/jniLibs/armeabi-v7a/librtspface.so
index c573675..3e1fa8c 100644
--- a/VisitFace/DemoForBsk/app/src/main/jniLibs/armeabi-v7a/librtspface.so
+++ b/VisitFace/DemoForBsk/app/src/main/jniLibs/armeabi-v7a/librtspface.so
Binary files differ
--
Gitblit v1.8.0