2011-07-25 17 views
5

मैं वेबस्टेज व्यू के उदाहरण में स्थानीय HTML (जो प्रोजेक्ट की फ़ोल्डर संरचना में मौजूद है) लोड करने का प्रयास कर रहा हूं। हालांकि इस विंडो में ठीक काम करता है और iPad/iPhone - यह एंड्रॉयड में फ़ाइलों का पता करने में विफल रहता है (केवल 2.2 में इसे करने की कोशिश)वेबस्टेज एंड्रॉइड में स्थानीय HTML पथ देखें

File.applicationDirectory.url रिटर्न "ऐप्स:" File.applicationStorageDirectory.url रिटर्न "app- भंडारण: "

File.applicationDirectory.nativePath एक खाली स्ट्रिंग देता है, जैसा कि एडोब के दस्तावेज़ में निर्दिष्ट है।

समस्या यह है कि वेबव्यू एक "वेब पेज उपलब्ध नहीं है, ऐप: /test/index.html नहीं मिला" त्रुटि देता है। क्या पूरा पथ पाने का कोई तरीका है, या उस ऐप को समझने के लिए ब्राउजर को "मजबूर" करने के लिए: एक विशिष्ट फ़ोल्डर को संदर्भित करता है?

धन्यवाद!

+1

मैंने दस्तावेजों डायरेक्टरी का उपयोग करके उस समय "तय" किया, जो एसडी कार्ड को इंगित करता है। काफी हैक लेकिन ठीक से काम करता है (अस्थायी रूप से) – Pantelis

उत्तर

0

Adobe help states के रूप में:

एप्लिकेशन: और ऐप्स-भंडारण: योजनाओं समर्थित नहीं हैं।

आईओएस पर आपका कोड पूरी तरह से काम करता है, लेकिन एंड्रॉइड पर, आपको इसे अपने जैसे कुछ हैकी कार्यान्वयन के साथ प्राप्त करना होगा, क्योंकि उन निर्देशिकाओं से StateWebView लोडिंग यूआरएल से संबंधित सुरक्षा समस्याएं हैं। StageWebView में है कि अस्थायी फ़ाइल यूआरएल एक अस्थायी एक में फ़ाइल और लोड: या एप्लिकेशन भंडारण: एक अन्य समाधान अपने अनुप्रयोग कॉपी करने के लिए है

var htmlFile:File = File.applicationDirectory.resolvePath(url); 
var workingFile:File = File.createTempFile(); 
htmlFile.copyTo(workingFile, true); 
stageWebView.loadURL(workingFile.url); 

संपादित करें: एक अन्य समाधान अपने html सामग्री एक .as में कोडित है करने के लिए हो सकता है फ़ाइल और StageWebView.loadString() विधि का उपयोग करें। ध्यान रखें कि आपको एंड्रॉइड डिवाइसों के लिए उस स्ट्रिंग को एन्कोड करना होगा।

0

मैं इस समस्या को कुछ दिनों के लिए ठीक करता हूं। फ़ाइल: यूआरएल योजना क्लाइंट मशीन पर एक फाइल को संदर्भित करती है। फ़ाइल में कोई होस्टनाम नहीं है: योजना; आप बस फ़ाइल का मार्ग प्रदान करते हैं। तो, आपकी स्थानीय मशीन पर फ़ाइल फ़ाइल होगी: ///~User/2ndFile.html। तीन slashes पर ध्यान दें; यूआरएल का होस्टनाम हिस्सा खाली है, इसलिए पथ की शुरुआत में स्लैश यूआरएल की शुरुआत में डबल स्लैश का तुरंत पालन करता है। आपको उपयोगकर्ता के पथ का विस्तार करने की भी आवश्यकता होगी; ~ फ़ाइल में कोई विस्तार नहीं करता है: यूआरएल। तो आपको फ़ाइल की आवश्यकता होगी: ///home/User/2ndFile.html (अधिकांश यूनिक्स पर), फ़ाइल: ///Users/User/2ndFile.html (मैक ओएस एक्स पर), या फ़ाइल: /// सी:/उपयोगकर्ता/उपयोगकर्ता/2ndFile.html (विंडोज़ पर)। यह समाधान पूरी तरह से मेरे ऐप में काम करता है।