Android-如何在调用摄像头时自动开始录制视频
Android开发人员有一些简单的代码,描述了如何通过Intents启动摄像机 现在,如果您只想启动相机并等待用户按下红色的“REC”按钮,这是很好的 但是我想通过Intent给摄像机打电话,告诉它开始以编程方式录制 我该怎么做? 我是否在Intent命令中传递某种start()方法 (如果做不到,请给我一个简单的代码,可以设置为自动录制视频-我一直在网上搜索,但是所有关于这个问题的代码片段都不起作用)Android-如何在调用摄像头时自动开始录制视频,android,video,camera,mediarecorder,Android,Video,Camera,Mediarecorder,Android开发人员有一些简单的代码,描述了如何通过Intents启动摄像机 现在,如果您只想启动相机并等待用户按下红色的“REC”按钮,这是很好的 但是我想通过Intent给摄像机打电话,告诉它开始以编程方式录制 我该怎么做? 我是否在Intent命令中传递某种start()方法 (如果做不到,请给我一个简单的代码,可以设置为自动录制视频-我一直在网上搜索,但是所有关于这个问题的代码片段都不起作用) 为此,应使用MediaRecorderclass 请看一下这个: 我在根设备上找到了一个解决
为此,应使用
MediaRecorder
class
请看一下这个:
我在根设备上找到了一个解决方法。首先,按照通常的方式开始录制(使用
startActivity()
,而不是startActivityForResult()
)。其次,发送带有“input keyevent 27”的摄像头钥匙代码。太神奇了!开始录音。您可能应该在录音结束后按back(代码4)
整个按键顺序是:
摄像机
:开始录制(计时器出现在屏幕上)。发送后稍晚发送
安全意图DPAD_向下
,DPAD_向右
最后是DPAD_中心
需要验证射击李>
BACK
返回您的活动我知道MediaRecorder类,并且已经阅读了它们在开发指南中提供的代码示例。但是代码示例缺乏精确性。很难理解如何使用代码。您能告诉我如何发送输入键事件吗?
private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100;
private Uri fileUri;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// create Intent to take a picture and return control to the calling application
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); // create a file to save the image
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name
// start the image capture Intent
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
}