2013-02-20 58 views
5

मैं अपने फोन पर एक HTML5 ऑडियो टैग का उपयोग कर ऑडियो चलाने की कोशिश कर रहा हूं। मैंने ध्वनि लोड की है लेकिन जब मैं .play() कमांड चलाता हूं, कुछ भी नहीं होता है। मैंने डिफ़ॉल्ट नियंत्रण दिखाई दिए ताकि मैं उस प्ले बटन को दबाकर परीक्षण कर सकूं और वह एक काम करता है और ध्वनि बजाता है। मैंने पता बार से जावास्क्रिप्ट निष्पादित करके ध्वनि चलाने का भी प्रयास किया है और यह भी काम करता है।एंड्रॉइड एक अंतराल से एचटीएमएल 5 ऑडियो नहीं चला रहा है

कोड मैं खेलने के लिए उपयोग कर रहा हूँ इस तरह दिखता है:

setInterval(function(){ 
    if(blahblah){ 
     document.getElementById("player").play(); 
    } 
},500); 

यकीन है कि यह भी ध्वनि चलाने के लिए कोशिश करता है बनाने के लिए, मैं इसे बाद एक अलर्ट, इस तरह:

setInterval(function(){ 
    if(blahblah){ 
     document.getElementById("player").play(); 
     alert("Played!"); 
    } 
},500); 

मैंने चेतावनी देखी, लेकिन कोई आवाज नहीं खेला गया।

किसी भी मदद के लिए धन्यवाद :)

+0

कोई नहीं जानता कि क्या गलत है? – JerwuQu

+0

मुझे एक समान समस्या है, हालांकि मैंने सब कुछ करने की कोशिश की है। Howler.js, Soundmanager2, आदि कुछ भी काम नहीं करता है। :( – Jared

उत्तर

1

अधिकांश मोबाइल उपकरण जब यह एक उपयोगकर्ता संपर्क का परिणाम है कि आप ऑडियो खेलने की अनुमति केवल होगा। यदि आप अपने प्ले कोड को बटन क्लिक ईवेंट में डालते हैं, तो यह काम करना चाहिए (मान लें कि आपके पास कोड में कोई अन्य बग नहीं है), लेकिन डिवाइस आपके ऑडियो को setInterval के अंदर से खेलने से रोक रहा है क्योंकि ऐसा नहीं लगता कि इसमें उपयोगकर्ता की अनुमति है इसे खेलने के लिए।

अब मैं क्या करता हूं, और मैं मानता हूं कि यह एक कामकाज है, क्या मैं खेलता हूं और तुरंत अपने बटन क्लिक ईवेंट के अंदर ऑडियो को रोकता हूं, और फिर setInterval पर कॉल करता हूं। यह काम करता है - अभी के लिए - क्योंकि डिवाइस को लगता है कि इसे उपयोगकर्ता द्वारा उस ऑडियो को चलाने की अनुमति दी गई है, भले ही मैं इसे बाद में ट्रिगर करता हूं। कोड मेरी बटन क्लिक करें घटना अंदर इस तरह दिखता है:

document.getElementById("player").play(); 
document.getElementById("player").pause(); 

setInterval(function(){ 
    document.getElementById("player").play(); 
}, 500); 

ध्यान रखें कि मोबाइल पर, यह लगभग रूप में आसानी के रूप में यह आपके कंप्यूटर पर करता है खेल नहीं हो सकती हैं। जहां संभव हो वैकल्पिक विकल्प तलाशें।