我正在制作一些花哨的应用程序,它需要很多短音才能使用。有几个问题你也许能回答。
-
我在android项目中存储的地方有一些限制吗?目前我把这些放在bin/res/sounds文件夹中。
-
文件的格式有限制吗?.wav可以吗?
-
我需要一些东西来存储对这些声音的引用。我想出了一个字典,它将由一个声音名称(密钥)和一个文件路径组成,这样我就可以在这样的方法中使用:
mp = MediaPlayer.create(Test.this, R.raw.mysound);
我应该如何存储R.raw.mysound,它不是字符串,对吧?
我很抱歉如果我对每件事都不太清楚,我正在尽力。干杯
通常,您会将声音存储在res文件夹(res/raw/mySound.wav)下的原始文件夹中。这告诉操作系统不要弄乱它,只需为您复制它。然后你可以使用你发布的代码行来加载它们。
至于.wav格式,它会很好用,但它会非常大。
看看Android支持哪些音频格式:http://developer.android.com/guide/appendix/media-formats.html
int中的引用(即R.raw.mySound
)。因此,如果需要,您可以将一些字符串映射到该int,但这真的比使用R.raw.mySound
id更容易吗?
它们不属于/bin,因为这是一个自动生成的构建目录。它们确实属于/res/something,这可能就是你的意思。
R.raw.mysound是int,所有R.*引用也是如此。
.wav文件很好,虽然很大。任何其他事情,你都必须检查目标平台上支持什么,以及是否所有设备都可能支持它。例如,在Android的早期,该平台指定了几种类型,但有些是可选的,取决于设备是否支持。有关完整列表,请参阅:http://developer.android.com/guide/appendix/media-formats.html