我正在设法让一个定时器在android中启动录像机。我打开它的意图,但它提出了红色开始录音按钮。有什么方法可以控制停止并开始用代码记录(用计时器)吗?
提前感谢您的帮助。
发布于 2015-12-26 23:15:08
您可以使用mediaRecorder API。这里有一个简单的例子:
公共类扩展活动实现了OnClickListener,SurfaceHolder.Callback { MediaRecorder记录器;SurfaceHolder持有者;布尔记录= false;@Override void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);SurfaceHolder.Callback getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN;setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);记录器=新MediaRecorder();initRecorder();setContentView(R.layout.main);SurfaceView cameraView = (SurfaceView) findViewById(R.id.CameraView);holder = cameraView.getHolder();holder.addCallback(this);holder.addCallback cameraView.setClickable(真);cameraView.setOnClickListener(this);{ recorder.setAudioSource(MediaRecorder.AudioSource.DEFAULT);recorder.setVideoSource(MediaRecorder.VideoSource.DEFAULT);CamcorderProfile cpHigh = CamcorderProfile .get(CamcorderProfile.QUALITY_HIGH);recorder.setProfile(cpHigh);recorder.setOutputFile("/sdcard/videocapture_example.mp4");recorder.setMaxDuration(50000);// 50秒recorder.setMaxFileSize(5000000);//大约5兆字节}私有prepareRecorder() { recorder.prepare();}recorder.prepare();} catch (IllegalStateException e) { e.printStackTrace();}onClick(视图v) { if (记录){ recorder.stop();initRecorder = false;//让我们重新记录initRecorder();prepareRecorder();}initRecorder= true;recorder.start();}公共空洞surfaceCreated(SurfaceHolder holder) { prepareRecorder();}公共空洞surfaceChanged(SurfaceHolder holder,int格式,int宽度,int高度){}公共空(SurfaceHolder holder) { if ( recording ) { recorder.stop();SurfaceHolder= false;} recorder.release();完成();}
https://stackoverflow.com/questions/34476091
复制相似问题