我已经阅读了很多主题,但似乎都没有涵盖我需要的内容。
我基本上有很多声音文件,我希望能够在SD卡的应用程序中播放它们。
我还希望能够在安装应用程序时首先将它们安装在那里。
我正在使用Eclipse和android SDK,目前我的Target项目是v1.6
有人可以帮忙吗?
由于
答案 0 :(得分:1)
好的,所以我找到了答案!
首先,我们需要将外部存储目录放到名为baseDir的变量中。
String baseDir = Environment.getExternalStorageDirectory().getAbsolutePath();
然后在SD卡上创建目录mysounds
File folder = new File(Environment.getExternalStorageDirectory() + "/mysounds");
boolean success = false;
if(!folder.exists())
{
success = folder.mkdir();
}
if (!success)
{
// Do something on success
}
else
{
// Do something else on failure
}
然后这段代码会将名称开头的所有声音文件从assets目录复制到你已经创建的mysounds目录。
try {
AssetManager am = getAssets();
String[] list = am.list("");
for (String s:list) {
if (s.startsWith("sound")) {
Log.d("Notice", "Copying asset file " + s);
InputStream inStream = am.open(s);
int size = inStream.available();
byte[] buffer = new byte[size];
inStream.read(buffer);
inStream.close();
FileOutputStream fos = new FileOutputStream(baseDir + "/mysounds/" + s);
fos.write(buffer);
fos.close();
}
}
}
希望这有助于某人!