Sto utilizzando l'intento predefinito della videocamera per ottenere l'immagine nella mia app. Il problema è che la fotocamera restituisce null su onActivityResult()
. Il ResultCode
e RequestCode
restituiscono come previsto.L'intento Android Inbuild (ActionImageCapture) restituisce l'intento null. Non viene restituito risultato {who = null}
Il mio invito intento è:
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 è:
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
}
Come ho messo Log ho ottenuto il resultCode e responseCode non sono nulli
resultCode = -1
requestCode = 1224
Dove sto facendo sbaglio?
Ma la foto scattata è memorizzato nel percorso (imageUri) come ho specificato
C'è un altro modo per ottenere l'immagine utilizzando la fotocamera.
Grazie Shadowtech questo è quello che ho fatto ... E 'di lavoro. :) Sai perché l'intento è nullo? –
Se si rimuove intent.putExtra (MediaStore.EXTRA_OUTPUT, imageUri); in questo modo si otterrà l'immagine nell'intento altrimenti l'Intento sarà nullo e l'immagine verrà memorizzata nell'URI ... –