1

在我的 android 项目中,我使用相机实例拍照。拍照后,我将开始一项新活动。现在我在 onPause 中释放相机并在 onResume 中重新创建它。这工作正常。现在我的问题是;从其他活动返回相机活动时,将需要“很长时间”。我知道这是因为重新创建了相机。

我相信这个问题可以通过在用户实际关闭应用程序之前不释放相机来解决。

所以我的问题是:我什么时候以理智的方式释放我的相机,和/或这是如何完成的?

4

2 回答 2

1

您必须在打开相机的类的方法上释放您的Camera实例。onPause因为,举个例子:

让你开CameraActivity里面,说吧Activity1。现在你导航到其他Activity,比如说Activity2。现在由于任何原因,您的应用程序崩溃了。现在您无法释放您的Camera实例,也无法创建新实例。

或者

用户导航到Activity2并按下主页按钮,然后Force StopsSettings. 在这种情况下,也Camera无法释放实例。

Activity1在上述 2 个条件下,没有调用方法。

所以你应该释放你的Camera对象onPauseActivity1

希望我清楚。

于 2013-10-31T13:49:50.603 回答
0

根据Android相机参考

重要提示:调用 release() 以释放相机以供其他应用程序使用。应用程序应立即在 onPause() 中释放相机(并在 onResume() 中重新打开()它)。

于 2013-11-01T08:53:58.063 回答