我有5个mp3文件存储在资产文件夹中。这些文件都是25 KB。
我使用加载文件:Android - 从资产文件夹播放声音的问题
manager = context.getAssets();
this.inputStream = manager.openFd(fileName).createInputStream();
每当我试图播放的文件,声音都搞砸像他们混什么的。 我已经zipaligned该应用程序已经但没有结果。
对此问题有帮助吗?在此先感谢
我有5个mp3文件存储在资产文件夹中。这些文件都是25 KB。
我使用加载文件:Android - 从资产文件夹播放声音的问题
manager = context.getAssets();
this.inputStream = manager.openFd(fileName).createInputStream();
每当我试图播放的文件,声音都搞砸像他们混什么的。 我已经zipaligned该应用程序已经但没有结果。
对此问题有帮助吗?在此先感谢
一些研究,我发现自己awnser后。问题是我使用下面的方法来设置MediaPlayer的数据源:
inputStream = manager.openFd(fileName).createInputStream();
player.setDataSource(inputStream.getFD());
WICH仅仅是setDataSource(fd, 0, 0x7ffffffffffffffL);
一个呼叫,传递min的偏移和该任意长度,导致声音被播放全部混合。
使用以下代码时,一切正常:
AssetFileDescriptor descriptor = manager.openFd(fileName);
long start = descriptor.getStartOffset();
long end = descriptor.getLength();
player.setDataSource(descriptor.getFileDescriptor(), start,end);
为开始尝试消除一个潜在的问题:比较inputStream和原始文件。
尝试直接打开和播放文件。
您也可以尝试从资源/原材料文件夹播放他们:
MediaPlayer p=MediaPlayer.create(this, R.raw.soundid);
p.start();