获取Android设备上的详细的摄像头信息
(null, null, new TakePictureCallback()); /* 拍完照后回到预览状态,继续取景 -- 错误的方式 */ // camera.startPreview();必须写在 onPictureTaken 方法内部,因为 takePicture 内部是另开了一条线程异步的完成保存照片等操作。 // 虽然 takePicture 方法完成了,但是并不代表其内部的工作全部完成,也不代表摄像头以及从上一次“拍照”任务中工作完毕 break; default: break; } return true; } return super.onKeyDown(keyCode, event); } /** * 处理照片被拍摄之后的事件 */ private final class TakePictureCallback implements PictureCallback { @Override public void onPictureTaken(byte[] data, Camera camera) { Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length); /* 照片将被保存到 SD 卡跟目录下,文件名为系统时间,后缀名为.jpg */ File file = new File(Environment.getExternalStorageState(), System.currentTimeMillis() + .jpg); try { FileOutputStream fos = new FileOutputStream(file); /* 位图格式为JPEG * 参数二位 0-100 的数值,100为最大值,表示无损压缩 * 参数三传入一个输出流对象,将图片数据输出到流中 */ bitmap.compress(CompressFormat.JPEG, 100, fos); fos.close(); /* 拍完照后回到预览状态,继续取景 */ camera.startPreview(); } catch (IOException e) { e.printStackTrace(); } } } }
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)
