码迷,mamicode.com
首页 > 移动开发 > 详细

安卓,播放音乐资源文件

时间:2016-05-25 14:58:29      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:

这里介绍两种播放资源文件的方法:

第一种、

assets类资源放在工程根目录的assets子目录下,它里面保存的是一些原始的文件,可以以任何方式来进行组织。这些文件最终会被原装不动地打包在apk文件中。如果我们要在程序中访问这些文件,那么就需要指定文件名来访问。这里把要添加的音乐文件加入进去

技术分享

添加play()方法。

技术分享
    protected void play(){
        AssetManager am = getAssets();
        try {
            mpMediaPlayer.setDataSource(am.openFd("first.mp3").getFileDescriptor());
            mpMediaPlayer.prepare();
            mpMediaPlayer.start();
        } catch (IllegalArgumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
play

第二种、
在res文件夹下添加raw文件夹,在raw文件夹下添加音乐文件,继续添加音乐文件,后添加paly方法

技术分享
protected void play(){
        mpMediaPlayer=MediaPlayer.create(this, R.raw.first);
        try {
            mpMediaPlayer.prepare();
        } catch (IllegalStateException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        mpMediaPlayer.start();
    }
play

res/raw目录下的资源,和assets类资源一样,都是原装不动地打包在apk文件中的,不过它们会被赋予资源ID,这样我们就可以在程序中通过ID来访问它们。

实现音乐文件的重复播放:

技术分享
  //音乐重复播放
        mpMediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {  
            
            @Override 
            public void onCompletion(MediaPlayer arg0) {  
                mpMediaPlayer.start();  
                mpMediaPlayer.setLooping(true);             
            }  
        }); 
View Code

 

安卓,播放音乐资源文件

标签:

原文地址:http://www.cnblogs.com/wynet/p/5526905.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!