2012-07-06 52 views
0

我正在做一个摄像头应用程序,从相机中挑选照片我正在与下面的代码工作在三星galaxy王牌,但在Android操作系统2.2 Htc欲望它不工作,请帮助我任何人解决它,在此先感谢。在HTC Desire中从相机捕捉图像Android设备不工作?

**capture button Onclick:** 
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd_HHmmss"); 
String fileName = "IMG_" + simpleDateFormat.format(new Date()) + ".jpg"; 
File myDirectory = new File(Environment.getExternalStorageDirectory() + "/DCIM/Camera/"); 
cameraImageFile = new File(myDirectory, fileName); 
Uri imageUri = Uri.fromFile(cameraImageFile); 
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri); 
startActivityForResult(intent, CAMERA_PIC_REQUEST); 

**OnActivityResult:** 
switch (requestCode) { 
case CAMERA_PIC_REQUEST: 

ImageView.setImageBitmap(decodeFile(cameraImageFile.getAbsolutePath())); 

} 
break; 

回答

0

如果传递图片的乌里开始然后相机获得的图像作为onActivityResult时:

 @Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (CAMERA_PIC_REQUEST == resultCode) { 
    ImageView iv = (ImageView) findViewById(R.id.ReturnedImageView); 

     // Decode it for real 
    BitmapFactory.Options bmpFactoryOptions = new BitmapFactory.Options(); 
        bmpFactoryOptions.inJustDecodeBounds = false; 

    //imageFilePath image path which you pass with intent 
    Bitmap bmp = BitmapFactory.decodeFile(cameraImageFile, bmpFactoryOptions); 

     // Display it 
    iv.setImageBitmap(bmp); 
    }  
    } 
} 
+0

imran如何处理这些多屏幕支持应用程序在andorid从你的任何帮助? – srinu 2012-07-06 05:38:28

+0

@srinu:对不起,亲爱的,我不知道。但如果你张贴它作为一个问题,那么我相信你会很快得到正确的答案。谢谢朋友!!! :) – 2012-07-06 05:41:33

+0

@srinu:如果这个答案帮助你,你可以标记它为他人提供帮助的答案。谢谢 – 2012-07-06 05:45:44

0

Calendar currentDate = Calendar.getInstance();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss"); String dateNow = formatter.format(currentDate.getTime());
imageName = dateNow + ".jpg";
//Create path to store image in SDCard path = Environment.getExternalStorageDirectory() + File.separator + imageName; startCameraActivity();

protected void startCameraActivity() { File file = new File(path); Uri outputFileUri = Uri.fromFile(file);
Intent intent = new Intent( android.provider.MediaStore.ACTION_IMAGE_CAPTURE); intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
startActivityForResult(intent, Globals.CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
}

@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == 100) {
switch (resultCode) {
case RESULT_CANCELED:
Log.i("MakeMachine", "User cancelled");
Toast.makeText(getBaseContext(), "User cancelled", Toast.LENGTH_LONG).show(); break;
case RESULT_OK:
BitmapFactory.Options options = new BitmapFactory.Options(); options.inSampleSize = 4;
Bitmap bitmap = BitmapFactory.decodeFile(path, options); image.setImageBitmap(bitmap); }

0

由于all.i解决这个问题,我做我的代码中的微小变化,我使用 文件mydirectory中=新的文件(Environment.getExternalStorageDirectory()+“/ DCIM创建在SD卡中的文件/相机/”);

没有命名为HTC的DCIM/Camera文件夹只是改变了线低于其做工精细

文件mydirectory中=新的文件(Environment.getExternalStorageDirectory()+ “/ DCIM /”);

相关问题