我知道这个问题已经被提出但是我没有找到一个可靠的解决方案,我在很多例子上工作,但没有一个正常工作。我在this post找到了一个例子。
我使用了commonsware源代码。它工作正常,但当我使用代码时,我的相机在水平布局而不是垂直布局中打开。
我知道有两种方法可以做到这一点。一个通过Camera API和另一个通过意图的事情。为了捕获单个快照,我使用了intent部分,它工作得非常好。
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
intent.setType("image/*");
startActivityForResult(Intent.createChooser(intent,"Select Picture"), RESULT_LOAD_IMAGE);
但这仍然是点击图片,我的要求是我需要它来停止点击5张照片后的图像。
我对如何实现这一点没有任何线索。
答案 0 :(得分:0)
@Chris Hutchinson在How to take multiple photos before dismissing camera intent?
发布了这个答案我通过SDK文档发现,设备相机有一个替代的意图动作,它以静止图像模式启动相机,并且在用户完成活动之前不会退出:
Intent intent = new Intent(
MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);
this.startActivity(intent);
与ContentObserver结合,这正是我需要完成的。
答案 1 :(得分:-1)
但这会继续点击图片
任何第三方应用程序对此Intent
操作和额外操作的行为取决于该应用程序的实现者。
我的要求是我需要它才能在5张照片后停止点击图片。
你无法强迫全世界的相机应用程序开发人员在五点后停止拍摄图像,或强迫用户拍摄五张照片。
我对如何实现这一点没有任何线索。
使用Camera
API。请注意,编写适用于所有设备的相机应用程序非常困难。