【问题标题】:AudioHardware pcm playback is going to standby error for playing from SD-cardAudioHardware pcm 播放将出现从 SD 卡播放的待机错误
【发布时间】:2011-07-28 09:38:42
【问题描述】:

在阅读了几个类似的问题后,我发现所有遇到此错误的开发人员在从 Internet 流式传输媒体文件时都会看到此行为。

我使用 SD 卡中的音频文件 (MP3) 并在服务中播放它们。我确实一个接一个地播放它们,并且在某些时候 MediaPlayer 因标题中显示的消息而死。它不会通过注册的 OnErrorListener 抛出任何错误。在其中一个文件的最后一首曲子之后,它就死了。如果我使用相同的文件顺序,它总是相同的文件。

跟踪应用并未显示内存消耗有任何增长。我什至尝试将 MediaPlayer 设为静态以避免 GC。最后一种方法是彻底关闭 MediaPlayer,将其静态变量设为 NULL,然后创建并重新启动所有新内容。这没有帮助。如果硬件没了,那就没了。

我确实在使用 Google Nexus One 时遇到过这种情况,我需要帮助。我读了一个提示,在文件结束前三秒淡出。这真的是一个解决方案吗?我应该怎么做?

非常感谢。

【问题讨论】:

    标签: android media-player


    【解决方案1】:

    好吧,我想你实现了 MediaPlayer 的“onCompletion”事件, 我认为这个错误是 android 触发 onCompletion 事件,而 (mediaPlayer.isPlaying) 仍然为真 所以我的想法是在播放下一个 mp3 之前停止媒体播放器

    类似这样的...

    public void onCompletion(MediaPlayer mp) {
                        if(mp != null && mp.isPlaying()){
                Log.d("onCompletion", "mp is playing !!! stop it!!!");
                mp.stop();
            }
            /*
            play next item here or prepare or ...
            */
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多