相机实例

时间:2014-06-15 11:34:23

标签: android android-camera

我试图通过camera = getCameraInstance()获取相机实例; ,但getCameraInstance()得到红色下划线并表示create方法getCameraInstance()。我不知道问题是什么:

import android.app.Activity;
import android.hardware.Camera;
import android.hardware.Camera.PictureCallback;
import android.os.Bundle;  
import android.view.Menu;
import android.view.MenuItem;

public class CameraActivty extends Activity implements PictureCallback{

private Camera camera;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    camera = getCameraInstance();

}

@Override
public void onPictureTaken(byte[] data, Camera camera) {
    // TODO Auto-generated method stub

}
}

我已经在清单中声明了相机许可。

3 个答案:

答案 0 :(得分:2)

添加此功能:

protected Camera getCameraInstance(){
    Camera c = null;
    try {
        c = Camera.open();
    } catch (Exception e){
    }
    return c;
}

答案 1 :(得分:1)

名为Activity的{​​{1}}上没有方法。您需要自己编写该方法,或者需要重写该行以避免引用不存在的方法。

答案 2 :(得分:0)

我在我的应用程序中使用它来获取相机。

private static Camera getCameraInstance()
    {
        Camera camera1;
        try
        {
            if (android.os.Build.VERSION.SDK_INT >= 9) 
            {
                return Camera.open(cameraId); 
            }
            camera1 = Camera.open();
        }
        catch (Exception exception)
        {
            return null;
        }
        return camera1;
    }