【发布时间】:2014-05-04 11:30:46
【问题描述】:
我不知道如何在我的应用中处理相机闪光灯。 我的应用程序有一个按钮可以打开和关闭相机闪光灯,一切正常,应用程序工作正常,即使按下返回按钮并返回应用程序也能正常工作。
但是当我在应用程序运行时按下 HOME 按钮,然后回到我的应用程序时,当我按下 ON 和 OFF 按钮时它会崩溃(强制关闭)。 我认为问题出在应用程序的生命周期中,但我不知道如何解决。
在 onStop() 方法中,我使用以下代码:
@Override
protected void onStop() {
super.onStop();
if (camera != null) {
camera.stopPreview();
camera.release();
}
并使用以下代码在 onCreate() 方法中打开闪存:
Parameters p = camera.getParameters();
if (!isLightOn) {
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(p);
camera.startPreview();
isLightOn = true;
}
【问题讨论】:
-
而不是
onCreate/onStop在onResume中初始化你的相机并在onPause中释放它和它的surfaceView。另外,如果您遇到类似问题,请参阅stackoverflow.com/questions/8481402 -
@kiruwka ,该链接的答案对我没有帮助,正如您所说,我在
onResume()中更改了我的代码和初始化相机并在onPause()中发布了它,但仍然无法正常工作,我不熟悉surfaceView,不知道如何发布surfaceView。 -
在 kiruwka 和 @Fox in socks 以及此链接 link 的帮助下,我的应用程序现在可以正常工作了,有关更多信息,请查看链接。
标签: android camera camera-flash