小编Ian*_*Low的帖子

相机自动对焦回调未发生

我在Android上使用Camera API,并使我的代码可以在包括Samsung Galaxies和HTC Desire在内的多个平台上运行.到目前为止,我只是在HTC Desire Z上遇到问题,这是间歇性的.

在我的代码中,我正在调用以下指令

camera.startPreview();
camera.autoFocus(autoFocusCallback);
Run Code Online (Sandbox Code Playgroud)

我已经创建了所需的autoFocusCallback类.我想再次强调一下,这段代码适用于手机,包括我遇到问题的手机,所以不要仔细检查代码.:)在调用回调之后,我的代码继续拍摄照片,但那部分现在无关紧要.

间歇性问题是对于某个随机图片(在20-100次中发生一次),回调不会发生.我已经用我自己的Log.i()验证了这是执行的最后一个命令(即代码没有进入回调).调试还显示没有报告错误.

为了让您放心,我的回调看起来像这样

AutoFocusCallback autoFocusCallback = new AutoFocusCallback() {
  @Override
  public void onAutoFocus(boolean success, Camera camera) {
    Log.i("tag","this ran"); 
    ...
    ...
  }
};
Run Code Online (Sandbox Code Playgroud)

成功运行的Logcat结果看起来像这样

07-12 10:17:50.564: DEBUG/QualcommCameraHardware(1223): startPreview X
07-12 10:17:50.564: DEBUG/QualcommCameraHardware(1223): autoFocus E
07-12 10:17:50.564: DEBUG/QualcommCameraHardware(1223): autoFocus X
07-12 10:17:50.564: DEBUG/QualcommCameraHardware(1223): runAutoFocus E
07-12 10:17:50.564: DEBUG/QualcommCameraHardware(1223): af start (fd 49)
07-12 10:17:51.184: DEBUG/QualcommCameraHardware(1223): native_set_afmode: ctrlCmd.status == 0
07-12 10:17:51.184: DEBUG/QualcommCameraHardware(1223): af done: 1
07-12 10:17:51.184: DEBUG/QualcommCameraHardware(1223): runAutoFocus X
07-12 10:17:51.184: …
Run Code Online (Sandbox Code Playgroud)

camera android htc-android

11
推荐指数
2
解决办法
8127
查看次数

标签 统计

android ×1

camera ×1

htc-android ×1