自己做了一个相对完整的音乐播放器,现在把播放模块提取出来,分享给大家。音乐播放器基本功能都实现了的,可能有些BUG,希望谅解。

播放器功能如下:

1.暂停,播放

2.拖动条实现,快进,快退

3.歌词同步

4.下一曲,上一曲。

5.专辑图片显示

6.后台播放,通知栏显示

7.来电话,暂停,电话结束,开始播放。

界面如下:

播放时候,在通知栏会有个图标。暂停,图标消失

后台播放时候,会在通知栏显示,点击,可以进入播放界面

使用详细:

到GIthob下载音乐播放器模块代码。

地址:音乐播放器模块代码下载

下载后,解压,把项目导入eclipse。

把项目作为一个library,引入项目中使用

1.引入项目

创建一个项目,点击项目,右键,properties,android,add

如图界面:

Add时候,选择刚你下载导入的项目,点击ok

2.配置AndroidManifest.xml

访问网络权限:

<uses-permission android:name="android.permission.INTERNET" />

配置activity和service:

<activity android:name="com.hck.music.ui.PlayMusicActivity"></activity>
 <service android:name="com.hck.music.server.PlayMusicServer" ></service>

activity用来播放音乐的界面ui

service,播放音乐的service

3.好了,项目里面进行使用:

使用时候,你只需要用一个intent,把相应的数据传进去,启动PlayMusicActivity即可

首先把你的数据装在数组里面,Musicean是一个音乐实体类,在下载的源码里面可以看见它的相关属性的,存音乐的一些信息。比如下面

private ArrayList<MusicBean> beans;

public void playMusic1(View view) { //点击一个按钮,播放视频
        Intent intent = new Intent();
        intent.setClass(this, PlayMusicActivity.class);
        intent.putExtra("music", beans.toArray()); //beans是你装好数据的一个集合
        intent.putExtra("id", 0);             //在集合beans的位置,用来获取相应的音乐对象
        intent.putExtra("type", "net");    //是在线还是本地,在线填net,本地,随便填
        startActivity(intent);
    }

//music,id,type,不能变

好了,完成

demo下载地址:musicPlayerdemo

注意,这个demo需要和地址:音乐播放器模块代码下载一起使用的,音乐播放器模块代码,是播放模块,demo是应用中怎么使用该模块。

模块代码完全透明,大家可以更具自己需要,修改代码,修改界面,有详细注释的

android快捷简单的实现音乐播放器的更多相关文章

  1. Android应用--简、美音乐播放器增加音量控制

    Android应用--简.美音乐播放器增加音量控制 2013年6月26日简.美音乐播放器继续完善中.. 题外话:上一篇博客是在6月11号发的,那篇博客似乎有点问题,可能是因为代码结构有点乱的原因,很难 ...

  2. Android应用--简、美音乐播放器获取专辑图片(自定义列表适配器)

    Android应用--简.美音乐播放器获取专辑图片(自定义列表适配器) 2013年7月3日简.美音乐播放器开发 第二阶段已增加功能: 1.歌词滚动显示 2.来电监听 3.音量控制 4.左右滑动切换歌词 ...

  3. 【源码分享】mui实现简单的手机音乐播放器

    mui实现简单的手机音乐播放器 最近先来无事,我用mui写了一个可以跨页面控制的音乐播放器.主要功能有上一曲,下一曲,播放,暂停,感兴趣的可以继续看下去. 说的总是不实在,直接上源码,有兴趣的可以读下 ...

  4. 一个简单的ipfs音乐播放器的实现

    IPFS音乐播放器 IPFS相关 IPFS第一次亲密接触 什么是IPFS IPFS对比HTTP/FTP等协议的优势 IPFS应用场景 -移动数据 交易 路由 网络 定义数据 命名 使用数据 具体场景; ...

  5. 超简单解决linux音乐播放器乱码问题

    问题 中文MP3的tag信息有些因为采用了GBK编码, 导致linux下的大多播放器(Rhythmbox, Audacious)无法正确识别而显示乱码. 如下图Audacious的乱码情况. 网上的常 ...

  6. 简单的HTML5音乐播放器(带歌词滚动)

      // // 0) { this.lrcArr.push(item); } } frag = document.createDocumentFragment(); for(i = 0,len = t ...

  7. 简单风格 在线音乐播放器(支持wav,MP3等)

    找了两天终于找到了,支持wav,MP3,其他格式没有测试. 1.修复了jQuery判断ie的bug, 2.修复播放循环 下载地址: http://pan.baidu.com/s/1o6upwHs

  8. Android(java)学习笔记234: 服务(service)之音乐播放器

    1.我们播放音乐,希望在后台长期运行,不希望因为内存不足等等原因,从而导致被gc回收,音乐播放终止,所以我们这里使用服务Service创建一个音乐播放器. 2.创建一个音乐播放器项目(使用服务) (1 ...

  9. Android(java)学习笔记177: 服务(service)之音乐播放器

    1.我们播放音乐,希望在后台长期运行,不希望因为内存不足等等原因,从而导致被gc回收,音乐播放终止,所以我们这里使用服务Service创建一个音乐播放器. 2.创建一个音乐播放器项目(使用服务) (1 ...

随机推荐

  1. xml有哪些解析技术?区别是什么?

    xml有哪些解析技术?区别是什么? Answer: 有DOM,SAX,STAX等 (1):DOM:处理大型文件时其性能下降的非常厉害.这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且D ...

  2. iframe的缺点与优点?

    iframe是一种框架,也是一种很常见的网页嵌入方式. iframe的优点: iframe能够原封不动的把嵌入的网页展现出来. 如果有多个网页引用iframe,那么你只需要修改iframe的内容,就可 ...

  3. spring jdbctemplate调用procedure(返回游标)

    package cn.com.git.htsc.uac.core.repository.report; import cn.com.git.htsc.uac.core.api.dto.report.R ...

  4. hdoj 1251 字典树

    代码: #include <stdio.h>#define  MAX    26 typedef struct TrieNode{     int nCount;      struct ...

  5. Qt Creator编译问题

    有时候需要自己编译Qt Creator,需要注意的就是qmake版本的问题,比如我用4.8.1和4.8.6同样编译出来的Qt Creator在同样的qtconfig-qt4下所呈现的效果是不一样的. ...

  6. 一个中型项目:本地校园App

    好暨: 这个项目的起源于课堂老师作业的要求.老师要求一年下来完成一个构想并实现Demo.思考良久,在要提交构想的那个晚上,想到了校园App,当时团队只有两个人,但我感觉到:就是它了!项目启动时间——2 ...

  7. 封装JDBC:实现简单ORM框架lfdb

    作者:Vinkn 来自http://www.cnblogs.com/Vinkn/ 一.简介 框架就是一组可重用的构件,LZ自己写的姑且就叫微型小框架:lfdb.LZ也对其他的ORM框架没有什么了解,现 ...

  8. PHPMailer发匿名邮件及Extension missing: openssl的解决

    原文链接:http://www.tongfu.info/phpmailer%E5%8F%91%E5%8C%BF%E5%90%8D%E9%82 %AE%E4%BB%B6%E5%8F%8Aextensio ...

  9. python json string和dict的转化

    __author__ = 'SRC_TJ_XiaoqingZhang' import json data1 = {'b': 789, 'c': 456, 'a': 123} encode_json = ...

  10. android的padding和margin的区别

    android:padding和android:layout_margin的区别:padding是站在父view的角度描述问题,它规定它里面的内容必须与这个父view边界的距离. margin则是站在 ...