Android课程设计大作业-音乐播放器

  • 一、**主要实现界面效果**
    • 1)登录界面
    • 2)音乐列表界面
    • 3)音乐播放界面
  • 二、**系统设计**
    • 1)使用Service播放音乐
    • 2) 前台界面(Activity)与后台服务(Service)通信
      • a)回调接口的方式。
      • b)通过广播接收者。
      • c)通过startService方式。
    • 3)音乐Activity与后台服务(Service)通信
      • 1、Activity绑定Service,获得Service的实例,并绑定监听器
      • 2、Activity使用Service实例,实现音乐播放、暂停等功能
  • 三、**设计报告目录展示**

一、主要实现界面效果

1)登录界面

2)音乐列表界面

3)音乐播放界面

二、系统设计

1)使用Service播放音乐

Android SDK提供了Service。Service有两种类型:
本地服务(Local Service):用于应用程序内部
远程服务(Remote Sercie):用于Android系统内部的应用程序之间前者用于实现应用程序自己的一些耗时任务,比如查询升级信息,并不占用应用程序比如Activity所属线程,而是单开线程后台执行,这样用户体验比较好
后者可被其他应用程序复用,比如天气预报服务,其他应用程序不需要再写这样的服务,调用已有的即可。这里不需要其他程序共享Service,因此采用本地服务。

2) 前台界面(Activity)与后台服务(Service)通信

Android中的四大组件是相互独立的,因此必须设计一个框架来实现前台界面(Activity)和后台服务(Service)的相互。Activity 和 Service的通信有以下几种方式:

a)回调接口的方式。

当Activity通过调用bindService(Intentservice,
ServiceConnection conn,int flags),可以得到一个Service的一个对象实例,然后就可以访问Service 中的方法,完成Activity–>Service的通信;通过为Service添加监听器的方法,Service作为被观察者,Activity作为观察者当有新事件时,Service通知Activity,完成Service–→Activity的通信。这种方式适合Activity与 Service交互比较频繁的情况。

b)通过广播接收者。

在Service中执行完耗时操作后,将结果以广播的形式发送,在 Activity中注册广播,接收到结果后更新U。因为耗时的操作结果不需要以Handler的方式发送到主线程,可以直接在子线程中发送广播,接收者始终运行在主线程中。完成Service-→>Activity的通信。同样,Activity将事件以广播的方式发送给Service,完成Activity–Service的通信。这种方式适合Activity与 Service交互不太频繁的情况。

c)通过startService方式。

Activity通过startService将事件发送到Service的
onStartCommand()方法,然后Service执行相应的操作,完成
Activity–Service的通信;Service通过广播将事件发送到
Activity,Activity中需注册广播接收器,完成Service-→Activity 的通信。这种方式适合Activity与 Service交互不太频繁的情况。

3)音乐Activity与后台服务(Service)通信

当Activity通过调用bindService(Intent service, ServiceConnection conn,int flags),我们可以得到一个Service的一个对象实例
详细代码实现:

1、Activity绑定Service,获得Service的实例,并绑定监听器


2、Activity使用Service实例,实现音乐播放、暂停等功能


三、设计报告目录展示

Android课程设计大作业-音乐播放器相关推荐

  1. 智能终端课程设计之安卓音乐播放器

    智能终端课程设计之安卓音乐播放器 这里是一个最基本最简单的本地音乐播放器,应付课设基本就OK了. 不要脸

  2. 单片机及接口课程设计报告-------基于音乐播放器

    目录 课设目的.内容....................................................................................... 1. ...

  3. 安卓学习期末大作业——音乐播放器基础功能

    步骤 系列文章 前言 1.实现效果 2.关于自动切到后台 3.给予权限访问本地音乐,如果本地指定文件夹没有音乐会无法运行 4.注意配置jdk11 下载资源 总结 系列文章 提示:转到安卓学习专栏,观看 ...

  4. android大作业闹钟的功能,定时闹钟课程设计大作业.doc

    定时闹钟课程设计大作业 微型计算机控制 技术大作业 设计题目: 定时闹钟课程设计 院 系:计算机科学与信息工程学院 学生姓名: 曹紫莹 学 号: 201103010036 专业班级: 计算机科学与技术 ...

  5. 北京交通大学Python课程设计大作业(四)——典籍词频统计

    北京交通大学Python课程设计大作业(四)--典籍词频统计 文章目录 北京交通大学Python课程设计大作业(四)--典籍词频统计 一.词频统计任务介绍 二.典籍词频统计python源代码如下 三. ...

  6. 华南理工大学计算机操作系统课程设计大作业银行家死锁避免算法模拟,2016春操作系统大作业银行家死锁避免算法模拟.doc...

    文档介绍: 2016春操作系统大作业银行家死锁避免算法模拟20160501华南理工大学"计算机操作系统"课程设计大作业计算机科学与技术专业:春2015班级:号:2015047420 ...

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

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

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

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

  9. Android应用--简、美音乐播放器原型放送(作者:小巫)

    Android应用--简.美音乐播放器原型放送 2013年7月5日简.美音乐播放器开发 前言:小巫的简.美音乐播放器从5月7号开始开发,之前以为时间很充足,也没有估量整个软件的需求,如果简单实现基本的 ...

最新文章

  1. PTA基础编程题目集-7-4 BCD解密
  2. 如何跟各种人解释什么是产品经理
  3. Object与RTTI
  4. SmartDraw_2012_Enterprise_R20.0.1.0的安装使用
  5. .NET Core快速入门教程 5、使用VS Code进行C#代码调试的技巧
  6. java核心-多线程-Java多线程编程涉及到包、类
  7. java匿名对象 回收_Java 匿名对象
  8. ORA-01861: 文字与格式字符串不匹配
  9. 五月两场!! NVIDIA DLI 深度学习入门课程——计算机视觉
  10. lintcode 627 最长回文串Python版本
  11. 漂亮的thinkphp 跳转页封装
  12. 树莓派处理温湿度监控,红外蔽障传感器,超声波测距传感器,激光传感器,有害气体检测,人体感应器,倾斜开关,雨滴传感器,土壤监测
  13. Qt/Windows 获取 MITSUBISHI P95DW 打印机状态信息
  14. wrk服务器性能测试
  15. namecheap 添加二级域名
  16. 百度统计、谷歌统计原理以及自定义统计源码
  17. python基础-古诗词填词游戏
  18. AiDD AI+软件研发数字峰会开启编程新纪元
  19. 一个程序员的奋斗txt
  20. 【软考必读】软考高级证书对工作的6大帮助

热门文章

  1. PCA算法python实现
  2. uniapp 分页加载吸顶(模仿微信账单)
  3. 公链生态周报:BI指数周涨幅超20%,IOST主网账户突破30万 | 链塔智库
  4. 使用python计算某年七月有四个周五,四个周二,七月一周几?
  5. 正当防卫CSP(content security policy)
  6. python 爬虫框架对比_几种爬虫框架效果分析,python最好爬虫框架是哪一种?
  7. 软件工程中数据流图的画法
  8. 【ubantu20.04下安装向日葵】
  9. Jenkins构建失败发送邮件
  10. 数据挖掘中客户分群的应用