調用AudioManager后,導致系統播放音樂沒有聲音的解決辦法


到公司不久,接到一個項目,在調試該項目時發現,在運行改項目后,手機會出現播放音樂沒有聲音的情況出現

多次查找,定位問題代碼如下

   Uri ringUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
        audioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
//        audioManager.setMode(AudioManager.MODE_RINGTONE);
        audioManager.setMode(AudioManager.MODE_RINGTONE);
        audioManager.setSpeakerphoneOn(true);
        ringtone = RingtoneManager.getRingtone(mContext, ringUri);
        ringtone.play();

        //震動
        vibrator = (Vibrator) mContext.getSystemService(Service.VIBRATOR_SERVICE);
        vibrator.vibrate(new long[]{1000, 10, 100, 1000}, 0);

  經過自己實驗后發現,是前面寫代碼的人,把系統的模式,設置為了鈴聲模式,在改模式下,音樂播放是沒有聲音的

只需要在停止鈴聲播放后,調用該方法。

 audioManager.setSpeakerphoneOn(false);
        audioManager.setMode(AudioManager.MODE_NORMAL);

  就可以解決問題了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM