xuxiuxi
2017-05-15 1253adf41438d647ba092cce42499faa035d310c
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SurveillanceFragment.java
@@ -4,6 +4,7 @@
import android.net.wifi.WifiManager;
import android.os.Build;
import android.os.Bundle;
import android.os.SystemClock;
import android.text.format.Formatter;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
@@ -60,10 +61,6 @@
    private TextView fragment_surveillance_enter_timer;
    @ViewInject(R.id.fragment_surveillance_exit_timer)
    private TextView fragment_surveillance_exit_timer;
    @ViewInject(R.id.fragment_supervisory_enter_progress_bar)
    private ProgressBar fragment_supervisory_enter_progress_bar;
    @ViewInject(R.id.fragment_supervisory_exit_progress_bar)
    private ProgressBar fragment_supervisory_exit_progress_bar;
    static boolean useNative = false;
@@ -84,6 +81,7 @@
        } else {
            useNative = true;
        }
        useNative = false;
        if (useNative) {
            System.loadLibrary("cvface_api");
            System.loadLibrary("opencv_java3");
@@ -124,106 +122,33 @@
    @Override
    protected void initViews(View view, Bundle savedInstanceState) {
        fragment_supervisory_enter_camera.getHolder().addCallback(new SurfaceHolder.Callback() {
            @Override
            public void surfaceCreated(SurfaceHolder holder) {
                fragment_supervisory_enter_progress_bar.setVisibility(View.INVISIBLE);
                RtspFaceNative.setSurface(Integer.parseInt(CommonVariables.Camera.IN), fragment_supervisory_enter_camera.getHolder().getSurface());
                RtspFaceNative.createPlayer(Integer.parseInt(CommonVariables.Camera.IN), DeviceMng.getInstance().getCamera1Address());
                RtspFaceNative.setFaceCallback(Integer.parseInt(CommonVariables.Camera.IN), "cn/com/basic/face/util/RtspFaceNative", "faceCallBack");
                if (useNative) {
                    RtspFaceNative.setSurface(Integer.parseInt(CommonVariables.Camera.IN), fragment_supervisory_enter_camera.getHolder().getSurface());
                    RtspFaceNative.createPlayer(Integer.parseInt(CommonVariables.Camera.IN), DeviceMng.getInstance().getCamera1Address());
                    RtspFaceNative.setFaceCallback(Integer.parseInt(CommonVariables.Camera.IN), "cn/com/basic/face/util/RtspFaceNative", "faceCallBack");
                }
            }
            @Override
            public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
            }
            @Override
            public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {}
            public void surfaceDestroyed(SurfaceHolder holder) {
                //fragment_supervisory_enter_progress_bar.setVisibility(View.VISIBLE);
                System.out.println("surfaceDestroyed");
            }
        });
        fragment_supervisory_exit_camera.getHolder().addCallback(new SurfaceHolder.Callback() {
            @Override
            public void surfaceCreated(SurfaceHolder holder) {
                fragment_supervisory_exit_progress_bar.setVisibility(View.INVISIBLE);
                RtspFaceNative.setSurface(Integer.parseInt(CommonVariables.Camera.OUT), fragment_supervisory_exit_camera.getHolder().getSurface());
                RtspFaceNative.createPlayer(Integer.parseInt(CommonVariables.Camera.OUT), DeviceMng.getInstance().getCamera2Address());
                RtspFaceNative.setFaceCallback(Integer.parseInt(CommonVariables.Camera.OUT), "cn/com/basic/face/util/RtspFaceNative", "faceCallBack");
                if (useNative) {
                    RtspFaceNative.setSurface(Integer.parseInt(CommonVariables.Camera.OUT), fragment_supervisory_exit_camera.getHolder().getSurface());
                    RtspFaceNative.createPlayer(Integer.parseInt(CommonVariables.Camera.OUT), DeviceMng.getInstance().getCamera2Address());
                    RtspFaceNative.setFaceCallback(Integer.parseInt(CommonVariables.Camera.OUT), "cn/com/basic/face/util/RtspFaceNative", "faceCallBack");
                }
            }
            @Override
            public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
            }
            @Override
            public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {}
            public void surfaceDestroyed(SurfaceHolder holder) {
                //fragment_supervisory_exit_progress_bar.setVisibility(View.VISIBLE);
                System.out.println("surfaceDestroyed");
            }
        });
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    if (useNative) {
                        MainActivity.getInstance().runOnUiThread(new Runnable() {
                            public void run() {
                                try {
//                                    File file2 = MainActivity.getInstance().getExternalFilesDir(null);
//                                    File[] files = file2.listFiles();
//                                    for (File file : files) {
//                                        System.out.println(file.getAbsolutePath());
//                                    }
//                                    String s1 = getStringFromFile("/sdcard/license.lic");
//                                    String str = convertStreamToString(MainActivity.getInstance().getAssets().open("license.lic"));
//                                    RtspFaceNative.dbgSetStfaceLicense(str);
                                } catch (Exception e) {
                                    e.printStackTrace();
                                }
                            }
                            public String convertStreamToString(InputStream is) throws Exception {
                                BufferedReader reader = new BufferedReader(new InputStreamReader(is));
                                StringBuilder sb = new StringBuilder();
                                String line = null;
                                while ((line = reader.readLine()) != null) {
                                    sb.append(line).append("\n");
                                }
                                reader.close();
                                return sb.toString();
                            }
                            public String getStringFromFile (String filePath) throws Exception {
                                File fl = new File(filePath);
                                FileInputStream fin = new FileInputStream(fl);
                                String ret = convertStreamToString(fin);
                                //Make sure you close all streams.
                                fin.close();
                                return ret;
                            }
                        });
                    } else {
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
                try {
                    final SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日  HH:mm:ss分");
//                    while (true) {
//                        Thread.sleep(1000);
//                        MainActivity.getInstance().runOnUiThread(new Runnable() {
//                            @Override
//                            public void run() {
//                                fragment_surveillance_enter_timer.setText(sdf.format(new Date()));
//                                fragment_surveillance_exit_timer.setText(sdf.format(new Date()));
//                            }
//                        });
//                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }).start();
        new SurveillanceMng.SurveillanceListThread().start();
    }