whycxzp
2024-07-19 339df2d21fc3c2784300db90eeb2299e0f89dc84
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.whyc;
 
import android.Manifest;
import android.app.Activity;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.ActivityCompat;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
 
import com.whyc.widget.Camera2TextureView2;
 
public class Camera2TextureViewActivity extends Activity {
    private static final String TAG = Camera2TextureViewActivity.class.getSimpleName();
    private Button camera2Recording;
    private Camera2TextureView2 camera2TextureView;
 
    private boolean isRecording = false;
 
    private String[] permissionArray = {Manifest.permission.CAMERA, Manifest.permission.RECORD_AUDIO, Manifest.permission.WRITE_EXTERNAL_STORAGE};
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_camera2_texture_view);
        //禁止屏幕超时
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
        //获取权限
        ActivityCompat.requestPermissions(this, permissionArray, 1);
        camera2Recording = findViewById(R.id.camera2_recording);
        camera2TextureView = findViewById(R.id.camera2_texture_view);
        LinearLayout llUpText = findViewById(R.id.ll_up_text);
        TextView tvDevice = findViewById(R.id.tv_device);
        camera2TextureView.init(llUpText,tvDevice);
        camera2Recording.setOnClickListener(v -> {
            if (!isRecording) {
                try {
                    camera2TextureView.createRecorderSession();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }else{
                camera2TextureView.stopRecording();
            }
//            camera2Recording.setText(isRecording ? "启动巡检" : "结束巡检");
            camera2Recording.setText(isRecording ? "启动录像" : "结束录像");
            isRecording = !isRecording;
        });
        //显示二维码识别的对应设备的实时工作状态
 
    }
 
}