2011-08-31 21 views
6

में कैमरे के साथ चित्र शॉट के चित्र उरी + थंबनेल प्राप्त करें I बिल्ड-इन एंड्रॉइड कैमरा के साथ एक तस्वीर के साथ एक छवि दृश्य अपडेट करना चाहता हूं। मैं निम्नलिखित कोड का उपयोग करें:एंड्रॉइड

void getPhoto() { 
     Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
     startActivityForResult(intent, TAKE_PICTURE); 
    } 

उसके बाद मैं के साथ तस्वीर का अधिग्रहण:

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     if (requestCode == TAKE_PICTURE) { 
      Bitmap photo = (Bitmap) data.getExtras().get("data"); 
      ImageView photoView = (ImageView) findViewById(R.id.photoId); 
      photoView.setImageBitmap(photo); 
      } 
     } 

लेकिन कोई बात नहीं क्या मैं मैं सिर्फ मैं बना फ़ोटो का थंबनेल मिलता है इस कोड के साथ - मेरी प्रश्न यह है कि मैं थंबनेल के साथ काम करने के लिए सिर्फ मूल छवि के साथ काम करने के लिए बनाई गई तस्वीर का उरी कैसे प्राप्त कर सकता हूं?

Ps। मुझे वास्तव में फोटो के थंबनेल की ज़रूरत है, लेकिन मुझे मूल फोटो की उरी भी चाहिए।

उत्तर

4

मैंने अपने स्वयं के यूआरआई को यह बताने के इरादे में रखा कि कहां से बचाना है, तो आप जानते हैं कि यह कहां है, सुनिश्चित नहीं है कि कोई अन्य तरीका है। अपनी फ़ाइल के लिए कुछ फ़ील्ड बनाएं।

private String imagePath = "/sdcard/Camera/test.jpg"; 
private File originalFile; 

फिर फ़ाइल को प्रारंभ करें।

originalFile = new File(imagePath); 

अब यूआरआई को अतिरिक्त के रूप में पारित करने के इरादे से कैमरा ऐप शुरू करें।

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
    Uri outputFileUri = Uri.fromFile(originalFile); 
    intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); 
    startActivityForResult(intent, RESULT_CAPTURE_IMAGE); 

onActivityResult में() निकालने यूआरआई

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
      if (requestCode == RESULT_CAPTURE_IMAGE && resultCode == Activity.RESULT_OK) { 
     mBitmap = BitmapFactory.decodeFile(originalImagePath, BitmapFactoryOptions); //set whatever bitmap options you need. 

तो अब एक बिटमैप फ़ाइल पथ जो कुछ के लिए आप

+3

की जरूरत का निर्माण createBitmap का उपयोग कर सकते हैं या का उपयोग भी यह मुश्किल कोड करना एक अच्छी आदत नहीं है uri/sdcard/के साथ यूरी, आपको पर्यावरण चर के लिए गेटर का उपयोग करना चाहिए। –

+0

लेकिन डेटा का उद्देश्य शून्य है, आप थंबनेल पुनर्प्राप्त नहीं कर सकते हैं। आप इसे पूर्ण आकार की तस्वीर से बना सकते हैं –