【发布时间】:2012-09-17 12:10:48
【问题描述】:
09-17 14:06:18.128: A/libc(27454): Fatal signal 11 (SIGSEGV) at 0x00000010 (code=1)
每当我的应用程序似乎识别出人脸时,就会弹出这个可爱的错误。
代码:
private void startFaceDetection() {
// Try starting Face Detection
Camera.Parameters params = mCamera.getParameters();
// start face detection only *after* preview has started
if (params.getMaxNumDetectedFaces() > 0) {
// camera supports face detection, so can start it:
mCamera.startFaceDetection();
}
}
@Override
public void onResume() {
super.onResume();
mCamera = Camera.open();
mCamera.setFaceDetectionListener(this);
mCamera.setDisplayOrientation(90);
}
在surfaceCreated、surfaceChanged中我开始人脸检测。
有人知道为什么会这样吗?我做错了吗?
打开摄像头,设置检测监听器,将摄像头旋转90°使我处于纵向,然后在创建用于预览的surfaceview后开始检测。
【问题讨论】:
-
对我来说,这看起来像是 Android 中的一个错误:错误发生在 C 库中:如果你做错了什么,你应该会收到一个很好的异常或错误代码。也许它是由你做错了什么触发的,但系统仍然应该以更好的方式报告这一点
-
是的,我就是这么想的。我正在运行 Sense 4.1 的 HTC Sensation 上测试应用程序,这是另一部 HTC 手机的“移植 rom”,可能有一些损坏的 c 库。我将降级到非“实验性”的较低版本,以看看它是否有效..