Developer.Android的Camera Intent在多次取消后崩溃

时间:2015-10-01 16:28:09

标签: android

所以,我来找到启动相机意图的方法: http://developer.android.com/training/camera/photobasics.html

如果你拍照,最终会失败,然后多次点击取消。我在其他应用程序上尝试过它而不是我构建的应用程序,果然,应用程序也会在拍摄并取消几张照片后崩溃。我认为这是因为每张照片都保留在内存中,直到返回另一个活动。结合使用取消按钮不会产生处理先前拍摄的照片的活动结果这一事实,这似乎是相机应用程序本身的限制。

我的问题是:有没有办法解决这个问题,同时仍然通过意图使用内置的相机应用程序?有没有我可以调用的方法来阻止它将已取消的图像缓存到内存中?

2 个答案:

答案 0 :(得分:0)

  

这似乎是相机应用程序本身的限制

请记住,有数百个预安装的相机应用程序(数千个设备型号和超过10亿活跃的Android用户),以及Play商店和其他地方的无数此类应用程序可能会响应{ {1}}。虽然许多人都有错误,但错误各不相同,因此您所看到的行为与您正在调用的特定相机应用程序相关联。

  

我认为这是因为每张照片都会留在内存中,直到返回另一个活动

我当然不会假设这一点,但如果其他应用程序崩溃了,那么你或我可以做的很少。

  

有没有办法解决这个问题,同时仍然通过意图使用内置的相机应用程序?

您无法在所有正在使用的设备上修复所有相机应用中的所有错误。

  

我可以调用一种方法来阻止它将已取消的图像缓存到内存中吗?

Android SDK中没有任何内容可以让您告诉另一个应用它有错误并应该停止破解。

答案 1 :(得分:0)

根据Eric Ahn(Android - How to stop camera intent from saving on the phone)的说法,解决这个问题的唯一方法是创建自己的相机活动并通过相机的API自行处理回调。我可能会稍后再研究一下,但我怀疑埃里克是对的。