protected MediaPlayer _mediaPlayer;
protected void playFromResource(int resId)
{
if (_mediaPlayer != null)
{
_mediaPlayer.stop();
_mediaPlayer.release();
}
_mediaPlayer = MediaPlayer.create(this, resId);
_mediaPlayer.start();
}
यह कोड दोनों एमुलेटर और उपकरणों पर ठीक काम करने के लिए प्रयुक्त होता था। कुछ समय से (मुझे लगता है कि यह तब से है जब से मैंने एडीटी आर 10 में अपडेट किया) यह केवल डिवाइस पर काम करता है। एम्यूलेटर पर अब कोई आवाज नहीं है और on _mediaPlayer.release()
(दूसरी बार फ़ंक्शन कहलाता है) पास होने पर एप्लिकेशन फ्रीज हो जाता है। मैं stop()
और release()
को reset()
द्वारा प्रतिस्थापित करके एप्लिकेशन को क्रैश करने में सक्षम था लेकिन यह मुख्य समस्या को हल नहीं करता है: एमुलेटर पर कोई आवाज नहीं है।मीडियाप्लेयर अब आर 10 के बाद से एमुलेटर पर काम नहीं कर रहा है?
लॉग फ़ाइल मुझे इन (केवल एमुलेटर पर) का एक समूह को दिखाने के बस start()
03-09 19 को कॉल के बाद: 14: 30.716: चेतावनी/audiotrack (34): obtainBuffer टाइम आउट हो गया ( सीपीयू आंकी जाती है?) 0x1afb8 उपयोगकर्ता = 00001e00, सर्वर = 00000600
कोई सुराग ????
क्या एमुलेटर संस्करण आप चल रहे हैं, और किन उपकरणों:
जानकारी के लिए? –
मैंने 2.1 अपडेट 1, 2.2 और 3.0 पर कोशिश की। वही (कमी) परिणाम –
मेरा एडीटी संस्करण 10.0.0.v201102162101-104271 –