एंड्रॉइड में, फोन पर एक फोटो से बिटमैप को डीकोड करते समय, मूल में EXIF डेटा खो जाता है। मैं इस बिटमैप को अपने सॉकेट के माध्यम से अपने सर्वर पर भेज रहा हूं और लापता EXIF डेटा को भेजे जा रहे डेटा को दोबारा जोड़ना चाहता हूं।एंड्रॉइड में एक धारावाहिक बिटमैप को EXIF मेटाडेटा कैसे संलग्न करें?
Bitmap bitmap = ...
ByteArrayOutputStream stream = new ByteArrayOutputStream(bitmap);
bitmap.compress(CompressFormat.JPEG, 70, stream);
byte[] input = stream.toByteArray();
मैं ExifInterface उपयोग करने के लिए EXIF पर प्राप्त करना चाहते हैं:
मैं कुछ कोड है कि Mediastore से एक बिटमैप वस्तु लोड करता है और तैयार करने में एक बाइट सरणी के लिए यह संपीड़ित करता है एक सॉकेट पर भेज दिया एसडी कार्ड पर मूल जेपीईजी में मेटाडेटा और किसी भी तरह से आउटगोइंग बाइट सरणी में इस तरह से जोड़ें कि मैं सर्वर पक्ष पर सभी सही EXIF के साथ एक जेपीईजी निकालने में सक्षम हूं (उम्मीद है कि सर्वर पर ऐसा किए बिना)।
String path = ... //bitmap file path
ExifInterface exif = new ExifInterface(path);
... = exif.getAttribute(...)
संपादित करें: बेहतर, मैं चाहता हूँ एक समाधान नहीं पुस्तकालयों का उपयोग करता है खोजने के लिए अब तक, मैं ExifInterface उपयोग करने के लिए सभी EXIF डेटा को पढ़ने में कामयाब रहे। अगर मैं मूल जेपीईजी के बाइट सरणी के सूचकांक प्राप्त कर सकता हूं जिसमें EXIF शामिल है और bitmap.compress(...)
द्वारा उत्पादित बाइट सरणी में इन बाइट्स को प्रीपेन्ड/संलग्न करें जो सबसे अच्छा होगा।
आप बाइट सरणी exif जानकारी जोड़ने के साथ सफल किया? – Vikas