Android Kamera : veri niyet döndürür null
Birden fazla etkinliği içeren bir android uygulaması var.
Bunlardan biri cihazın kamera arayacak olan bir düğme kullanıyorum :
public void onClick(View view) {
Intent photoIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(photoIntent, IMAGE_CAPTURE);
}
Aynı etkinlikte resim sonuç için OnActivityResult
yöntemi :
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == IMAGE_CAPTURE) {
if (resultCode == RESULT_OK) {
Bitmap image = (Bitmap) data.getExtras().get("data");
ImageView imageview = (ImageView) findViewById(R.id.pic);
imageview.setImageBitmap(image);}
else if (resultCode == RESULT_CANCELED)
{Toast.makeText(this, "CANCELED ", Toast.LENGTH_LONG).show();}
}
}
Sorun data
null niyet ve OnActivityResult
yöntem doğrudan (resultCode == RESULT_CANCELED)
döner ve uygulama önceki avtivity geri döner.
Bu sorunu nasıl düzeltebilirim ve kamera çağrıldıktan sonra, uygulama ImageView
içeren geçerli etkinlik için döndüren resim çekildikten içerir?
Teşekkürler
CEVAP
Varsayılan Android kamera uygulama iade Niyet bir küçük resim geçen sadece boş olmayan bir niyet verir. Eğer yazmak için bir URI ile EXTRA_OUTPUT
geçirirseniz, null
bir niyet döner ve resimde geçirilen URI.
GitHub kod: kamera uygulaması kaynak bakarak bunu doğrulayabilirsiniz
-
Bundle newExtras = new Bundle(); if (mCropValue.equals("circle")) { newExtras.putString("circleCrop", "true"); } if (mSaveUri != null) { newExtras.putParcelable(MediaStore.EXTRA_OUTPUT, mSaveUri); } else { newExtras.putBoolean("return-data", true); }
Ya EXTRA_OUTPUT
bir şekilde geçirilmesi olduğunu tahmin ediyorum, ya telefonunuzda kamera uygulaması farklı çalışır.
Android. Parça getActivity() bir ara n...
Niyet Android kamera...
neden görüntü android kamera niyet alı...
Android: () getSupportActionBar her za...
Nasıl benim Android uygulaması crash-v...