public viod onPreviewFrame( byte[] data, Camera camera)
{
if (data == null) {
logger.error("Null data received on callback, " +
" invalid buffer size ?");
return;
}
try{
File dir = new File( Environment.getExternalStorageDirectory().getPath());
if(!dir.exists() && dir.isDirectory()) //判断文件目录是否存在
{
dir.mkdirs();
}
File savefile = new File( Environment.getExternalStorageDirectory().getPath() + "/"+ "myvideo.avi");
FileOutputStream fos = new FileOutputStream(savefile);
fos.write(data);
fos.close();
} catch( FileNotFoundException e ) {
e.printStackTrace();
} catch( IOException e) {
e.printStackTrace();
}
}
记得得在Manifest.xml配置文件中进行权限设置:
<!-- 在sdcard中创建与删除文件的权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<!-- 向sdcard中写入数据的权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>