如何找到Android相机的焦距?

时间:2013-08-30 11:33:33

标签: android android-camera

我使用stackoverflow和google进行了大量的处理。我需要计算相机与指定对象之间的距离。

为此我需要找到我的相机的焦距。我也创建了示例项目,但它创建了Null指针异常。请帮助..

代码如下。

    public class MainActivity extends Activity {

    Camera mcamera;
    int focul_length;
    Parameters params;
    File mFile;

    public int PICTURE_ACTIVITY_CODE = 1;
    public String FILENAME = "sdcard/photo.jpg";
    Camera.Parameters cameraParameters;


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


       launchTakePhoto();

    }

    private void launchTakePhoto()
    {
    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
          cameraParameters = mcamera.getParameters();
         CameraInfo myinfo = new CameraInfo();
     float l=cameraParameters.getFocalLength(); // Here its creating Null Pointer Exception      
     mFile = new File(FILENAME);
            System.out.println("My Focul Length:--"+l);
    Uri outputFileUri = Uri.fromFile(mFile);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
    startActivityForResult(intent, PICTURE_ACTIVITY_CODE);
    }


    Also If possible please provide the code to get angle of Elevation.If possible.I need this very badly.I need your help guys!!



    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) 
        {
            if (requestCode == PICTURE_ACTIVITY_CODE)
            {
            if (resultCode == RESULT_OK)
            {

            ImageView myimageView = (ImageView) findViewById(R.id.imageView1);
            Uri inputFileUri = Uri.fromFile(mFile);
            myimageView.setImageURI(inputFileUri);
            }
            }
            }






    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

1 个答案:

答案 0 :(得分:1)

您是否正在初始化Camera对象?在onCreate()

中尝试这样的方法
mcamera = Camera.open();