android开发中怎么在资源文件中获取mp3文件

 我来答
明眸智语
推荐于2016-06-10 · 我是一名专注于视频剪辑的创意艺术家。我热爱通过剪辑这一神奇的...
明眸智语
采纳数:27 获赞数:181

向TA提问 私信TA
展开全部
把文件放在res/raw下,程序运行时把它释放到指定目录,代码如下:(供楼主参考)

private final String DATABASE_PATH = android.os.Environment.getExternalStorageDirectory().getAbsolutePath() + "/db_exam";
private final String DATABASE_FILENAME = "tel.db";

public void extractDBFileFromRes(){
try {
String dbFileName = DATABASE_PATH + "/" + DATABASE_FILENAME;
File dir = new File(DATABASE_PATH);
if (!dir.exists()){
dir.mkdir();
Log.i("SQLite", "dir made:" + DATABASE_PATH);
} else {
Log.i("SQLite", "dir exist:" + DATABASE_PATH);
}

try {
//如果数据凳亏库已经在SD卡的目录下存在,那么不需要重新创建,否则创建文件,并拷贝/res/raw下面的数据库文件
if (!(new File(dbFileName).exists())){
Log.i("SQLite", dbFileName + ":file not exist");
//res/raw数据库作为输出流
InputStream inputStream = this.getResources().openRawResource(R.raw.tel);
//测试
int size = inputStream.available();
Log.i("SQLite", "DATABASE_SIZE:" + 1);
Log.i("SQLite", "count:" + 0);
//用于存放数据晌粗梁库信息的数据流宴运
FileOutputStream fileOutputStream = new FileOutputStream(dbFileName);
byte[] buffer = new byte[8192];
int count = 0;
Log.i("SQLite", "count:" + count);

//把数据写入SD卡目录下
while ((count = inputStream.read(buffer)) > 0 ) {
fileOutputStream.write(buffer, 0, count);
}
fileOutputStream.flush();
fileOutputStream.close();
inputStream.close();
}

} catch (FileNotFoundException e) {
Log.e("Database", "File not found");
e.printStackTrace();
}
} catch (IOException e) {
Log.e("Database", "IO exception");
e.printStackTrace();
}

}
甄选语录
2015-08-28 · 知道合伙人互联网行家
甄选语录
知道合伙人互联网行家
采纳数:122 获赞数:410

向TA提问 私信TA
展开全部
用ContentResolver去query MediaStore.Audio.Media.EXTERNAL_CONTENT_URI这个数据库
MediaStore.Audio.Media.TITLE 字段是曲名
MediaStore.Audio.Media.ARTIST 字段是歌手
MediaStore.Audio.Media.ARTIST 字段是专辑顷搭
MediaStore.Audio.Media.DURATION 字段是时间岩猛 单位是毫秒
MediaStore.Audio.Media.DATA 字雀枣拿段是文件位置
MediaStore.Audio.Media.DISPLAY_NAME 字段是显示名称
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王者llc
2015-08-17 · TA获得超过1909个赞
知道小有建树答主
回答量:2146
采纳率:0%
帮助的人:695万
展开全部
你好,衫运

安卓MediaPlayer player = MediaPlayer.create(this,R.raw.test);
player.stare();

播放音频文件或让梁,滑氏文件放在raw文件夹下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
MaeHsu
2015-09-05 · TA获得超过1.1万个赞
知道小有建树答主
回答量:5783
采纳率:88%
帮助的人:233万
展开全部
MediaPlayer player = MediaPlayer.create(this,R.raw.test);
player.stare();
播帆闷清放音频文件态前,文件罩孙放在raw文件夹下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友33dab3f
推荐于2016-10-18 · TA获得超过1398个赞
知道小有建树答主
回答量:1283
采纳率:76%
帮助的人:655万
展开全部
MediaPlayer player = MediaPlayer.create(this,R.raw.test);
player.stare();
播放音频哪袜文盯胡件李则激,文件放在raw文件夹下。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式