Поместите кнопку в xml-файл, где вы хотите открыть камеру для записи видео.
здесь я поместил код кодирования видео.
это создаст папку на вашей SD-карте/или если никакая SD-карта не будет вставлена, она будет использовать память inbult sytem. надеюсь, вы знаете. Мне не нужно много объяснять об этом.
затем карту ниже на клик слушателя к кнопке вы разработан в вашем XML
Button recordButton =
(Button) findViewById(R.id.CaptureVid);
recordButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
String timestamp="1";
String timestamp = new SimpleDateFormat("MM-dd-yyyy_HH-mm-ss aa").format(Calendar.getInstance().getTime());
File filepath = Environment.getExternalStorageDirectory();
File dir = new File(filepath.getAbsolutePath()+ "/samplevideofolder/");
dir.mkdirs();
File mediaFile = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/samplevideofolder/Video_"+timestamp+".avi");
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
Uri fileUri = Uri.fromFile(mediaFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 30);
startActivityForResult(intent, VIDEO_CAPTURE);
}
});
поместить этот код где-то внизу, как функция внутри основного класса
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == VIDEO_CAPTURE) {
if (resultCode == RESULT_OK) {
Toast.makeText(this, "Video saved to:\n" +data.getData(), Toast.LENGTH_LONG).show();
} else if (resultCode == RESULT_CANCELED) {
Toast.makeText(this, "Video recording cancelled.", Toast.LENGTH_LONG).show();
} else {
//Toast.makeText(this, "Failed to record video", Toast.LENGTH_LONG).show();
}
}
}
thats it, вы сделали запись видео.
в вышеуказанном коде вы можете найти такую строку.
intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 30);
это автоматически останавливает видео через 30 секунд ,,, если вы хотите записать видео для более того, unlimietd время .. просто комментарий, что линия .. хорошо
Код хорошо обсуждается здесь: http://stackoverflow.com/questions/5382212/capture-video-of-androids-screen/23037887#23037887 http://stackoverflow.com/questions/1817742/how- может-я-захватное-а-видео-запись-на-андроида –