title: autoFocus throwing exception
body: <p>I have tried everything but I'm still unable to solve this issue.</p>
  
  <p>I am implementing a camera feature in an app and everything works fine except the autofocus. When I call autoFocus(), it throws an exception, and I can't understand why. I am running the code on a Desire HD.</p>
  
  <p>Code:</p>
  
  <pre><code>@Override
  protected void onStart() {
       super.onStart();
  
       //grab seurface view and callback
       cameraView = (CameraSurfaceView) findViewById(R.id.cameraView);
       try{
          camera = Camera.open();
          cameraView.setCamera(camera);
          //release previous autofocus and assign new one
          camera.cancelAutoFocus();
          camera.autoFocus(new Camera.AutoFocusCallback() {
  
                  public void onAutoFocus(boolean success, Camera camera) {
                  // TODO Auto-generated method stub
  
                  }});
      }
      catch (Exception e) {
          //had an issue accessing the camera prompt user
          //TODO create user prompt
          e.printStackTrace();
      }
  }
  </code></pre>
  
  <p>Stack trace:</p>
  
  <pre><code>01-11 16:09:38.456: W/System.err(26546): java.lang.RuntimeException: autoFocus failed
  01-11 16:09:38.456: W/System.err(26546):    at android.hardware.Camera.native_autoFocus(Native Method)
  01-11 16:09:38.456: W/System.err(26546):    at android.hardware.Camera.autoFocus(Camera.java:680)
  01-11 16:09:38.456: W/System.err(26546):    at com.myapp.MyActivity.onStart(BarcodeScannerActivity.java:57)
  01-11 16:09:38.466: W/System.err(26546):    at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1201)
  01-11 16:09:38.466: W/System.err(26546):    at android.app.Activity.performStart(Activity.java:3955)
  01-11 16:09:38.466: W/System.err(26546):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1845)
  01-11 16:09:38.466: W/System.err(26546):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1893)
  01-11 16:09:38.466: W/System.err(26546):    at android.app.ActivityThread.access$1500(ActivityThread.java:135)
  01-11 16:09:38.466: W/System.err(26546):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1054)
  01-11 16:09:38.466: W/System.err(26546):    at android.os.Handler.dispatchMessage(Handler.java:99)
  01-11 16:09:38.466: W/System.err(26546):    at android.os.Looper.loop(Looper.java:150)
  01-11 16:09:38.476: W/System.err(26546):    at android.app.ActivityThread.main(ActivityThread.java:4385)
  01-11 16:09:38.476: W/System.err(26546):    at java.lang.reflect.Method.invokeNative(Native Method)
  01-11 16:09:38.476: W/System.err(26546):    at java.lang.reflect.Method.invoke(Method.java:507)
  01-11 16:09:38.476: W/System.err(26546):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
  01-11 16:09:38.476: W/System.err(26546):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
  01-11 16:09:38.476: W/System.err(26546):    at dalvik.system.NativeStart.main(Native Method)
  </code></pre>