2012-02-08 14 views
7

मेरे पास एक आसान एंड्रॉइड वेबव्यू ऐप है, जो फोनगैप बिल्ड के साथ बनाया गया है। एपीके में शामिल स्थानीय एमपी 3 फ़ाइल चलाने की कोशिश करते समय, कुछ भी नहीं होता है। हालांकि, अगर मैं वेब से एक एमपी 3 खींचता हूं तो यह काम करता है।एंड्रॉइड वेबव्यू ऐप में स्थानीय ऑडियो फ़ाइल बजाना

उदा।

<audio src="www.example.com/01.mp3" > WORKS JUST FINE 

<audio src="01.mp3" > DOES NOT WORK 

मैं Android विकास के लिए नया हूँ, इसलिए मैं केवल अनुमान लगा सकता है कि फाइल Android के मीडिया प्लेयर द्वारा किसी भी तरह दुर्गम है। यहां मेरी लॉग फ़ाइल से त्रुटियों/चेतावनियों का एक लिंक दिया गया है यदि इससे समस्या पर कोई प्रकाश डालने में मदद मिलती है। यह मानते हुए कि आपके .mp3 अनुप्रयोगों संपत्ति निर्देशिका के भीतर है:

http://pastebin.com/isS542RE

उत्तर

3

आप स्थानीय फाइल सिस्टम "///android_assets/01.mp3 फ़ाइल" का उपयोग रास्ते पर फ़ाइल ओर इशारा करते हुए की कोशिश की?

+1

हां। यह वास्तव में फ़ाइल में है: ///android_assets/www/01.mp3। मुझे एक ही परिणाम मिलता है। उसी स्थान पर छवि फ़ाइलों को ठीक दिखाता है, लेकिन वे सीधे वेबदृश्य के माध्यम से प्रस्तुत किए जाते हैं। मेरा अनुमान है (और यह सिर्फ "अनुमान" है) यह है कि ऑडियो फ़ाइलों को सीधे ब्राउज़र द्वारा नहीं खेला जाता है, लेकिन एक खिलाड़ी को पास कर दिया जाता है, कि प्लेयर को उन फ़ाइलों तक पहुंच नहीं है जो ऐप का हिस्सा हैं। – Justin

+0

कुछ और ध्यान देने के लिए, एचटीएमएल 5 ऑडियो एंड्रॉइड में कुख्यात रूप से फ्लेकी है। http://www.brianhadaway.com/html5-audio-support-on-android-devices/ अगर आप फोनगैप का उपयोग कर रहे हैं तो आपको शायद इसके बजाय फोनगैप के मीडिया एपीआई का उपयोग करने पर विचार करना चाहिए। – Devgeeks

+0

मुझे फोनगैप के एपीआई के साथ एक ही समस्या थी, वेब फाइलें काम करती थीं, स्थानीय फाइलें नहीं थीं। यद्यपि लिंक के लिए धन्यवाद ... ऐसा लगता है कि ब्रायन ने फ़्लैश फ़ॉलबैक के साथ एक अच्छा सरल प्लेयर बनाया है। मुझे जो चाहिए उसके लिए अधिकांश खिलाड़ी बहुत फूले हुए हैं। उसे आज़माएं। – Justin

5

मैंने फोनगैप की मीडिया कक्षा का उपयोग करके यह काम किया है। मैं शुरुआत में कुछ गलत कर रहा होगा, लेकिन मुझे यकीन नहीं है कि क्या। मीडिया ऑब्जेक्ट के माध्यम से इसे एक्सेस करने का उचित तरीका साइमन ने पहले कहा था: myMedia = नया मीडिया ("/ android_asset/www/test.mp3");

आपको मीडिया पथ को सापेक्ष पथ पर/SDCARD निर्देशिका में डिफ़ॉल्ट रूप से डिफ़ॉल्ट पथ डालना होगा।

साइमन भी एक शानदार लिखने अप है मीडिया वर्ग का उपयोग कर के बारे में: http://simonmacdonald.blogspot.com/2011/05/using-media-class-in-phonegap.html?m=1

एचटीएमएल 5 विधि के लिए और ऑडियो टैग का उपयोग कर के रूप में, मैं अभी भी कुछ नहीं कर रहा हूँ कारण है कि यह स्थानीय फ़ाइलों पर विफल रहता है। फोनगैप का मीडिया क्लास ठीक काम करता है और शायद किसी भी तरह से एक और विश्वसनीय समाधान है। फोनगैप एफटीडब्ल्यू!

2

हमें एक ही समस्या थी, मीडिया फ़ाइलों को चलाने के लिए, बाहरी भंडारण डीआईआर में होना चाहिए। अपने एचटीएमएल और संबंधित फाइलों को /mnt/sdcard/ पर ले जाने का प्रयास करें।

+0

मुझे एक ही समस्या थी, और फ़ाइल को एसडीकार्ड में ले जाया गया, और अब यह काम करता है। धन्यवाद दोस्त। – Cairo

संबंधित मुद्दे