Google फ़ोटो ऐप के साथ, मैं एक वीडियो चुनने की कोशिश कर रहा हूं, जो डिवाइस पर कैश नहीं किया गया है।Google फ़ोटो ऐप से वीडियो (गैर-स्थानीय) प्राप्त करना
मैं विकल्प संवाद लॉन्च करने के लिए ACTION_GET_CONTENT मंशा का उपयोग कर रहा हूं, और वहां से मैं Google फ़ोटो ऐप चुनता हूं।
स्थानीय वीडियो चुनते समय, यह इस रूप में उरी लौटाता है।
सामग्री: // मीडिया/बाहरी/वीडियो/मीडिया/6708
और उस से, मैं वास्तविक फ़ाइल स्थान प्राप्त है, और वहाँ से आगे बढ़ने के लिए सामग्री प्रदाता क्वेरी। फ़ाइल स्थान इस तरह दिखता है। पर एक वीडियो उपलब्ध नहीं:
/भंडारण// 0/WhatsApp/मीडिया/WhatsApp वीडियो/VID-20,131,102-WA0000.mp4
अब, जब मैं एक ऑनलाइन वीडियो चुनते हैं, यानी नकल करते मेरे डिवाइस अभी तक है, और जो इस्तेमाल किया जा करने के लिए डाउनलोड करने की आवश्यकता है, वापस आ उरी इस तरह दिखता है:
सामग्री: //com.google.android.apps.photos.content/1/ https://lh6.googleusercontent.com/_RD-QTO_SK5jlaPldTe2n5GANqMc3h-ukcbNoFlF1NLy=s0-d
अब, इसके साथ, कोई दस्तावेज ContentProvider नहीं है जो मुझे इस वीडियो के वास्तविक लिंक प्राप्त करने में मदद करेगा। यहां तक कि यदि मैं कोई प्रश्न करता हूं, तो यह DISPLAY_NAME और SIZE कॉलम से अलग कुछ भी नहीं देता है।
DISPLAY_NAME video.mpeg (अलग वीडियो के लिए एक ही प्रदर्शन नाम)
आकार शायद मुझे वास्तविक फ़ाइल का आकार बताता है शामिल हैं।
मैं विभिन्न पदों जाँच की, और सोचा कि मैं, सामग्री प्रदाता के माध्यम से वीडियो के लिए एक InputStream प्राप्त करने के लिए फ़ाइल सहेजें, और फ़ाइल के साथ काम करेगा। एक छवि फ़ाइल चुनना ठीक काम करता है, लेकिन वीडियो के साथ यह नहीं करता है।
तो, स्ट्रीम को एक फ़ाइल में कॉपी करने के लिए, मेरे पास यह कोड है।
InputStream inputStream = context.getContentResolver().openInputStream(Uri.parse(path));
और अंत में एक अस्थायी फ़ाइल को लिखें। फ़ाइल बनाई गई है, लेकिन ऐसा लगता है कि यह सही ढंग से स्वरूपित नहीं है। वीएलसी फ़ाइल चलाता है, लेकिन पूरे समय केवल पहला फ्रेम दिखाता है।
यदि मैं ऊपर दिए गए यूआरआई के अंतिम भाग से यूआरएल लेता हूं, और ब्राउज़र पर इसे देखने का प्रयास करता हूं, तो यह एक जीआईएफ फाइल डाउनलोड करता है। मुझे लगता है कि यह समस्या है। लेकिन मुझे नहीं पता कि MPEG वीडियो का प्रारूप कैसे प्राप्त करें।
किसी ने भी अनुभव किया है?
इसके लिए बहुत धन्यवाद, इससे बहुत मदद मिली है! यहां एक संबंधित प्रश्न है और उत्तर स्वीकार किया गया है: http://stackoverflow.com/q/30572261/3309883 –