मैं अपने नए एंड्रॉइड प्रोजेक्ट में जेसीआईएफएस का उपयोग कर रहा हूं। किसी भी तरह से मैंने फ़ाइल पथ को सामान्यीकृत करने के लिए यूआरएल क्लास का उपयोग करने का निर्णय लिया है (इसलिए मैं बाद में अधिक प्रोटोकॉल जोड़ सकता हूं)। मैंने जो किया वहAndroid पर जेसीआईएफएस लाइब्रेरी का उपयोग करते समय यूआरएल में एसएमबी प्रोटोकॉल का उपयोग करते हुए
URL url = new URL("smb://192.168.1.1/filepath");
और फिर java.net.MalformedURLException अपवाद फेंक दिया गया है।
Exception in thread "main" java.net.MalformedURLException: unknown protocol: smb
at java.net.URL.<init>(URL.java:184)
at java.net.URL.<init>(URL.java:127)
परामर्श JCIFS FAQ का पता चलता है मैं कक्षा उपयोग करने से पहले प्रोटोकॉल रजिस्टर करने के लिए है। हालांकि मुझे वास्तव में एंड्रॉइड में ऐसा करने का तरीका नहीं पता है। मुझे लगता है कि पुस्तकालय पहले से ही ऐसा करता है, लेकिन यह एंड्रॉइड पर नहीं है।
तो मुझे क्या करना चाहिए?
आपने jcifs jar फ़ाइल कहां रखा? हैंडलर लोड होने के लिए यह उचित कक्षा में होना चाहिए। – medopal
मैंने जार फ़ाइल को प्रोजेक्ट की/libs निर्देशिका में रखा है, जो मुझे लगता है कि यह क्लासपाथ में नहीं है। और मुझे लगता है कि एंड्रॉइड सामान्य जावा एप्लिकेशन की तुलना में क्लासपाथ को अलग-अलग संभालता है। –