Java Android:Mediaplayer自动淡出

Java Android:Mediaplayer自动淡出,java,android,android-mediaplayer,soundpool,fading,Java,Android,Android Mediaplayer,Soundpool,Fading,我发现Android 4.4.2上的MediaPlayer似乎会自动淡入音频文件。 我正在使用MediaPlayer播放一种不能褪色的声音。 它与4.2.1版本的Smarthpone配合使用效果很好,但在另一款4.4.2版本的手机上会出现衰落 我也看了一下SoundPool,但它忽略了让我知道文件是否还在播放的功能 我是否能够关闭自动淡入功能,或者我是否需要使用声音池并自己关注音轨的长度 谢谢, VanDahken您可以在开始玩之前尝试 atrs = new AudioAttributes.B

我发现Android 4.4.2上的MediaPlayer似乎会自动淡入音频文件。 我正在使用MediaPlayer播放一种不能褪色的声音。 它与4.2.1版本的Smarthpone配合使用效果很好,但在另一款4.4.2版本的手机上会出现衰落

我也看了一下SoundPool,但它忽略了让我知道文件是否还在播放的功能

我是否能够关闭自动淡入功能,或者我是否需要使用声音池并自己关注音轨的长度

谢谢, VanDahken

您可以在开始玩之前尝试

 atrs = new AudioAttributes.Builder()
             .setUsage(AudioAttributes.USAGE_MEDIA)
             .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
             .build();

尝试使用内容类型。

我也有同样的问题。好的是,它可以在其他几个Android版本上运行,所以希望只有4.4.2有这个问题。我发现的第一个解决方案是使用未压缩的音乐文件。数据格式为LEI16的wav,但音乐文件太大了

我还发现,如果将音频流类型设置为stream_RING,则淡入似乎不会发生,但这可能不是一个好主意,因为它是用于电话铃声的

对于我的应用程序,我只有一个关键点,当应用程序第一次启动时,音乐必须在没有淡入的情况下播放,我能够得到修复。介绍音乐开始前需要几秒钟,所以我现在做的是:

-在介绍开始时准备同步

-准备好后,将音量设置为0f并启动

-然后,在我的案例稍微延迟几秒钟之后:应用程序的介绍完成所需的时间,添加一个seek侦听器,然后seekTo0


-搜索完成后,将音量设置为所需的值

使用MedialPlayer时指定哪种音频流类型?我尝试过流音乐和流通知。