我开发了一个应用程序,它有一个在后台拍摄快照的服务。虽然这个应用程序在我迄今为止尝试过的所有设备(不是摩托罗拉设备)上都可以正常运行,但我发现在仿生机器人上运行它会崩溃。
基本上,我正在做的是:
- 相机 = Camera.open();
- camera.setParameters(参数);
- camera.setPreviewDisplay(null);
- camera.startPreview();
- camera.takePicture(null,null,callback);
此序列适用于从 Android 2.2 运行到 Android 2.3.4 的不同 HTC 和三星设备上没有问题
Bionic 正在运行 2.3.4,并且 takePicture 方法在 android.hardware.Camera.native_takePicture(Native Method) 处引发 RuntimeException
另外,我尝试删除对 setPreviewDisplay(null) 的调用,但它仍然崩溃。Bionic 是否有任何限制,导致无法在没有表面的情况下拍摄快照?
我已按照此处描述的所有步骤操作:http: //developer.android.com/reference/android/hardware/Camera.html
我认为这是摩托罗拉设备上的一个特定错误,但如果这是一个更普遍的问题,可能有人可以对此有所了解。
提前谢谢了!