简体   繁体   English

拍照后关闭android相机意图

[英]Close android camera intent after take a picture

I have this simple code to take a single picture and return to caller activity: 我有以下简单代码可以拍摄一张照片并返回到呼叫者活动:

Intent camera_intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
Uri uriSavedImage = Uri.fromFile(new File(Environment
    .getExternalStorageDirectory()
    + directory_path
    + "/"
    + Calendar.getInstance().get(Calendar.MILLISECOND)
    + ".jpg"));
camera_intent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);
startActivityForResult(camera_intent, 1);

MainActivity.this.startActivityForResult(camera_intent, 0);

But the camera intent closes itself only after two pictures. 但是,只有两张照片后,相机意图才会关闭。 So, after I take one picture, the camera intent is still active. 因此,在我拍摄一张照片后,相机意图仍然有效。 After I take another picture, only now, camera intent get closed and onActivityResult gets called. 我拍完另一张照片后,直到现在,相机意图已关闭, onActivityResult被调用。

What's wrong? 怎么了?

EDIT: I've try to print a Log message into onActivityResult, and i've noticed that onActivityResult is call twice, but only after the second picture (and after camera intent close itself) 编辑:我尝试将日志消息打印到onActivityResult中,并且我注意到onActivityResult被调用了两次,但是仅在第二张图片之后(并且在相机意图关闭之后)

you are calling twice startActivityForResult 您两次调用startActivityForResult

startActivityForResult(camera_intent, 1);

//MainActivity.this.startActivityForResult(camera_intent, 0);

remove one of them. 删除其中之一。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM