原因是apache的压缩开启导致了mp3文件时长的获取,但问题仅在安卓上出现。 apache压缩上因为加入了SetOutputFilter DEFLATE 这个命令导致输出全部压缩。 因此去掉后,改成 AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css AddOutputFilterByType DEFLATE application/x-javascript 这种的指定输出压缩内容问题解决了。
简单来说,MP3音频格式被压缩了,而且这种压缩反馈的信息头 安卓无法获取对应的时长内容,导致了无法显示时长。