[Android] Android讀取Asset下文件的最簡單的方法總結(用於MediaPlayer中)
阿新 • • 發佈:2019-04-05
assets ring row tst blog 資源 sse str contex
private void openAssetMusic(String index) throws IOException {
// String fileName = "a001.mp3"; //根目錄文件
String fileName = index + "/" + index + ".mp3"; //子目錄文件
AssetFileDescriptor fd = getAssets().openFd(fileName);
mPlayer = new MediaPlayer();
mPlayer.setDataSource(fd.getFileDescriptor(), fd.getStartOffset(), fd.getLength());
mPlayer.prepare();
}
private void openRawMusic(String index) throws IOException {
int resourceId = ResourceUtil.getResId(index, R.raw.class);//讀取raw文件
mPlayer = MediaPlayer.create(mContext, resourceId);
方法一:getAssets().openFd
//讀取asset內容
private void openAssetMusic(String index) throws IOException {
// String fileName = "a001.mp3"; //根目錄文件
String fileName = index + "/" + index + ".mp3"; //子目錄文件
AssetFileDescriptor fd = getAssets().openFd(fileName);
mPlayer = new MediaPlayer();
mPlayer.setDataSource(fd.getFileDescriptor(), fd.getStartOffset(), fd.getLength());
mPlayer.prepare();
}
方法二:ResourceUtil.getResId(index, R.raw.class)
//讀取raw文件
private void openRawMusic(String index) throws IOException {
int resourceId = ResourceUtil.getResId(index, R.raw.class);//讀取raw文件
mPlayer = MediaPlayer.create(mContext, resourceId);
}
其中方法二為了讀取raw文件夾下資源,用到了反射類 ResourceUtil.java
本文原文地址:https://www.cnblogs.com/wukong1688/p/10657628.html
轉載請註名出處!謝謝~~
[Android] Android讀取Asset下文件的最簡單的方法總結(用於MediaPlayer中)