Не уверен, почему я не подумал об этом раньше. Если вы просто хотите снять видео, чтобы взять это видео и загрузить его на сервер (или сделать что-то подобное), вы можете очень легко использовать собственное приложение камеры, используя намерения.
Запустите намерение, запишите видео, затем вернитесь к своей деятельности и получите доступ к видео через onActivityResult.
// Setup a result flag for your video capture
int ACTION_TAKE_VIDEO = 100;
// Launch an intent to capture video from MediaStore
Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
startActivityForResult(takeVideoIntent, ACTION_TAKE_VIDEO);
// Obtain the file path to the video in onActivityResult
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == ACTION_TAKE_VIDEO) {
Uri videoUri = data.getData();
String filePath = getPath(videoUri);
Log.d("LOGCAT", "Video path is: " + filePath);
}
}
Больше на http://developer.android.com/training/camera/videobasics.html