5

Uygulamamdaki görüntüyü almak için varsayılan kamera amacını kullanıyorum. Sorun kamera onActivityResult()'da null değerini döndürüyor. ResultCode ve RequestCode, beklendiği gibi geri dönüyor.Android Inbuild (ActionImageCapture) amacı null niyetini döndürür. Sonuç gönderilemez {who = null}

Benim niyet çağrısıdır: Ben Günlüğü dediği gibi

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) { 
if (resultCode == RESULT_OK) { 
    //use imageUri here to access the image 
    Uri imageuri = data.getData(); // here is getting crash 
    imageView.setImageFromUri(imageUri); 
} 
} 
} 

void setImageFromUri(Uri imgUri){ 
... TODO assign image from uri 
} 

Ben ResultCode var ve yapıyorum Nerede ResponseCode

resultCode = -1 
requestCode = 1224 

boş değildir:

private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 1224; 
.... 
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri); 
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1); 
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE); 

OnactivityResult olduğunu hata?

Ama

belirtildiği şekilde alınan resim kamerayı kullanarak görüntü elde etmek için başka bir yolu var mı yolunun (imageUri) depolanır.

cevap

10

Daha önce onActivityResult öğesindeki görüntüyü biliyorsunuzdur. Bu doğru cevap değil ama iyi çalışacak.

intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri); 

// uri sadece

kullanacağız Bu görüntü Yani

Uri imageuri = data.getData(); 

sadece bilinen uri kullanmak kullanmayın.

kod aşağıdaki gibi görünür:

if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) { 
    if (resultCode == RESULT_OK) { 
//use imageUri here to access the image 
imageView.setImageFromUri(imageUri); // imageUri should be global in the activity 
    } 
} 
+1

Teşekkür Çalışıyor ... Bu benim yaptığım budur Shadowtech. :) Niyetin null olduğunu biliyor musun? –

+0

Intent.putExtra (MediaStore.EXTRA_OUTPUT, imageUri) öğesini kaldırırsanız; Daha sonra niyetle görüntü alacaksınız. Niyet boş olacak ve görüntü URI'de saklanacak ... –