2011-03-29 13 views
17

से एचटीएमएल फाइल लोड नहीं कर सकता है मैं एसडी कार्ड से एक एचटीएमएल फाइल लोड करने की कोशिश कर रहा हूं। नोट: -> यदि मैं http://www.google.com लोड करता हूं तो यह काम करता है। -> फ़ाइल मौजूद है -> मैं इंटरनेट और WRITE_EXTERNAL_STORAGEवेबदृश्य एसडी कार्ड

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    addB = (Button) findViewById(R.id.add); 
    webComp = (WebView) findViewById(R.id.webC); 

    WebSettings webSettings = webComp.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    webSettings.setSupportZoom(false); 
    webSettings.setAllowFileAccess(true); 
    webSettings.setLoadsImagesAutomatically(true); 
    webSettings.setSavePassword(false); 
    webSettings.setSaveFormData(false); 
    webSettings.setJavaScriptEnabled(true);   

    webComp.setWebViewClient(new HelloWebViewClient());      



    webComp.loadUrl("/sdcard/FMS/1/message.html");    



} 

के लिए अनुमतियां धन्यवाद! :)

+3

क्या त्रुटि के अलावा लोड करने के लिए:

आप निम्न का उपयोग करना चाहते जब आप LogCat का उपयोग करते हैं, तो क्या आपको मिलता है? "READ_EXTERNAL_STORAGE" के बारे में क्या? मैं हमेशा sth इस्तेमाल किया। जैसे पर्यावरण .getExternalStorageDirectory()। getAbsolutePath() + "/FMS/1/message.html"। मैं सोच रहा हूं कि loadUrl विधि का उपयोग कर भंडारण से HTML फ़ाइल लोड करना संभव है या नहीं। हो सकता है कि आपको loadData (...) – Rainer

उत्तर

39

Misca,

आप चाहिए नहीं कठिन कोड इस तरह sdcard की निर्देशिका। यह आमतौर पर /mnt/sdcard/ पर है लेकिन यह कभी आश्वासन नहीं दिया जाता है। आपको यह भी जांचना चाहिए कि एसडीकार्ड मौजूद है या नहीं और पहले आरोहित किया गया है! सक्षम हो जाएगा .html फ़ाइल के लिए स्थानीय

if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ 
    Log.d(TAG, "No SDCARD"); 
} else { 
    webComp.loadUrl("file://"+Environment.getExternalStorageDirectory()+"/FMS/1/message.html"); 
} 
+0

के साथ एक वर्कअराउंड आज़माएं, यह सही और बिना किसी जांच के काम कर रहा है .. –

+0

यह केवल HTML फ़ाइलों को डाउनलोड कर रहा है। क्या होगा यदि HTML फ़ाइल में छवियों और स्क्रिप्ट लोड करने के लिए सापेक्ष पथ शामिल हैं। –

+0

आपको नोटिस करना चाहिए कि ऐप को अनुमति होनी चाहिए <उपयोग-अनुमति एंड्रॉइड: name = "android.permission.READ_EXTERNAL_STORAGE" /> – Phuong

1

मुझे लगता है कि यूआरएल फ़ाइल है: ///sdcard/FMS/1/message.html

0

आप इसे इस तरह उपयोग कर सकते हैं, किसी भी फाइल वीडियो

webView.loadUrl("file://" + Environment.getExternalStorageDirectory() + "/myapprepository/index.html"); 
संबंधित मुद्दे