विस्तार फ़ाइलों (http://developer.android.com/guide/market/expansion-files.html#ZipLib) पर Google की देव मार्गदर्शिका में अनुभाग के निचले हिस्से में निम्न पाठ है।नमूनाZipfileProvider वर्ग कहां है?
APEZProvider - अधिकांश अनुप्रयोगों को इस कक्षा का उपयोग करने की आवश्यकता नहीं है। यह क्लास एक सामग्री प्रदाता को परिभाषित करता है जो सामग्री प्रदाता उरी के माध्यम से ज़िप फ़ाइलों से डेटा को मार्शल करता है ताकि कुछ एंड्रॉइड एपीआई के लिए फ़ाइल एक्सेस प्रदान किया जा सके जो मीडिया फ़ाइलों तक उरी पहुंच की अपेक्षा करते हैं। एपीके विस्तार पैकेज में उपलब्ध नमूना आवेदन एक परिदृश्य दर्शाता है जिसमें यह वर्ग VideoView.setVideoURI() के साथ एक वीडियो निर्दिष्ट करने के लिए उपयोगी है। इस एप्लिकेशन को पर अपने एप्लिकेशन में उपयोग करने के तरीके के उदाहरण के लिए नमूना ऐप की कक्षा नमूनाज़िपफाइलप्रोवाइडर देखें।
प्रश्न में नमूना आवेदन में इस वर्ग में शामिल नहीं है। लेकिन इसमें AndroidManifest.xml में .SampleVideoPlayerActivity फ़ाइल का संदर्भ शामिल है, जो कि प्रोजेक्ट में मौजूद नहीं है।
क्या किसी ने APEZProvider
पर आधारित एक ठोस वर्ग को लागू करने का प्रयास किया है और इसे VideoView.setVideoURI()
के साथ उपयोग किया है?
मैं कक्षा को लागू किया है:
public class ZipFileContentProvider extends APEZProvider {
@Override
public String getAuthority() {
return "com.myCompany.myAppName.provider.ZipFileContentProvider";
}
}
लेकिन मैं कैसे VideoView.setVideoURI()
कॉल के साथ इसका इस्तेमाल करने की जानकारी नहीं है। क्या कोई मदद कर सकता है?
मैं या तो SampleZipfileProvider नहीं पा सके। मुझे नहीं पता कि आपका उत्तर कैसे काम करता है, लेकिन यह करता है; धन्यवाद! – Blundell
मैं यह जोड़ना चाहता हूं कि यदि आपकी फ़ाइलें ज़िप के अंदर एक फ़ोल्डर में हैं (जैसे मेरी थीं), तो आपको पथ में शामिल करने की आवश्यकता होगी। उदाहरण के लिए Uri.parse (CONTENT_URI + "/ MyFolder /" + VideoFileName + ".mp4") – dnorcott
आप मेरे नायक हैं! ब्लंडेल की तरह, मुझे नहीं पता कि यह कैसे काम करता है, लेकिन यह करता है और मैं इसे ले जाऊंगा: डी धन्यवाद! +1 –