2012-06-14 62 views
-2

我正在编写一个代码,我试图打开设备的摄像头,但是我的命令不工作,它显示编译时错误,请参阅该命令是正确的还是错误的以及如果是错误的,那么请为我提供正确的代码,这是我的代码 -安卓命令不起作用

Camera camera= Camera.open(); 
+0

尝试阅读本... http://developer.android.com /guide/topics/media/camera.html – Squonk

+0

编译时错误?那是什么? –

+0

@DheereshSingh它说open()函数是未定义的。 –

回答

2

尝试使用此 -

import android.hardware.Camera; 
+1

嘿,这真的工作。 –

+0

@ del-vil我很高兴它的工作.......... – TRonZ

2

我想你已经加入,但只是FYI

<uses-permission android:name="android.permission.CAMERA" /> 

,并请过目link ..... ..

如果不行尝试所有这些曾经

<uses-permission android:name="android.permission.CAMERA" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-feature android:name="android.hardware.camera" /> 
+0

谢谢,但我已经尝试过。 –

1

按照this它应该工作。

你可以传递一个Intent来启动相机和拍照一样

private Uri imageUri; 

public void takePhoto(View view) { 
    Intent intent = new Intent("android.media.action.IMAGE_CAPTURE"); 
    File photo = new File(Environment.getExternalStorageDirectory(), "Pic.jpg"); 
    intent.putExtra(MediaStore.EXTRA_OUTPUT, 
      Uri.fromFile(photo)); 
    imageUri = Uri.fromFile(photo); 
    startActivityForResult(intent, TAKE_PICTURE); 
} 

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    switch (requestCode) { 
    case TAKE_PICTURE: 
     if (resultCode == Activity.RESULT_OK) { 
      Uri selectedImage = imageUri; 
      getContentResolver().notifyChange(selectedImage, null); 
      ImageView imageView = (ImageView) findViewById(R.id.ImageView); 
      ContentResolver cr = getContentResolver(); 
      Bitmap bitmap; 
      try { 
       bitmap = android.provider.MediaStore.Images.Media 
       .getBitmap(cr, selectedImage); 

       imageView.setImageBitmap(bitmap); 
       Toast.makeText(this, selectedImage.toString(), 
         Toast.LENGTH_LONG).show(); 
      } catch (Exception e) { 
       Toast.makeText(this, "Failed to load", Toast.LENGTH_SHORT) 
         .show(); 
       Log.e("Camera", e.toString()); 
      } 
     } 
    } 
}