android Camera问题记录
[1]在使用源码中提供的camera2basic示例项目时,发现生成的图片无法在手机的相册内显示,即使已将照片的保存路径指定到了sdcard/Pictures目录仍未显示,保存代码如下:
String picName = new SimpleDateFormat("yyyyMMddHHmmss'_pic.jpg'").format(new Date());
File mFile = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),picName);
这是因为生成的照片未通知系统media更新系统保存的多媒体Uri,
解决方案如下:
Uri picUri = Uri.fromFile(mFile);
Intent updateIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, picUri);
Utils.getLsApplicationContext().sendBroadcast(updateIntent);
[2]当通过Intent调用系统默认camera时,在拍照后都会停留在确定或重拍的界面中,如果你想在拍照后直接自动保存照片,而不是每次拍照后都停在保存与取消的界面,可通过添加属性:
android.intent.extra.quickCapture
具体代码如下
Intent intentPhoto = new Intent(MediaStore.ACTION_IMAGE_CAPTURE, null);
intentPhoto .putExtra("android.intent.extra.quickCapture",true); //启用快捷拍照
startActivity(intentPhoto );
评论