基于安卓平台的网络音乐播放器开发毕业论文
2021-05-06 12:18:03
摘 要
近些年间,手机应用经历了一个爆炸式增长的过程,在这个过程中基于安卓平台的应用扮演了主要的角色。随着网络技术、终端设备的发展,用户需求不断的提高,移动应用也不断的加入新的功能。本文的目的在于学习研究安卓开发技术,利用安卓平台,开发一款网络音乐播放器应用。
本次设计中首先结合了安卓开发技术,对网络音乐播放器的需求进行了简要的分析,需求可分为功能的需求和UI界面的需求,在这之后本文还讨论了一些基于用户体验的需求分析。除了基本的本地播放和网络歌曲播放之外,本设计还实现了个性化设置、下载管理等实用的功能,并在UI界面的设计上下了功夫。
在明确本播放器的需求后,本设计参考MVC的软件设计模式对播放器的功能以及UI界面进行了设计。功能方面,本设计搭出了系统的功能框架,而在UI界面方面,针对主界面、歌曲列表界面、歌曲播放界面等各个界面都进行了设计。
最后,本设计对播放器的各个具体模块进行了设计,分析出它们的运作流程,并结合Java编程知识以及面向对象的编程思想,完成了各个功能模块的逻辑代码的书写。各个模块实现高内聚、低耦合的设计,并在最后有效的结合在一起,至此完成了本设计的基于安卓平台的网络音乐播放器的开发工作。在设计完成后,经过一系列的功能测试和性能测试,能够得出本设计已出色完成的结论。
关键词:Andriod;XML;网络音乐播放器;UI;播放控制;
Abstract
In recent years, mobile phone application experienced an explosive growth process, in the process of applications platform based on Android play a major role.With the development of network technology and intelligent terminal armament equipment, the user demand unceasing increase, and mobile applications are also constantly adding new functionality. The purpose of this paper is to study the android development technology, the use of the android platform, develop a network music player applications.
This design firstly, combined with the Android development technology, carried out a brief analysis of the demand of the network music player, demand can be divided into functional requirements and UI interface requirements, after which are also discussed in this paper based on user experience of demand analysis. In addition to the basic local playback and network songs play, the design also achieved a personalized settings, such as download management and other practical functions.And I did my best in the design of the UI interface.
After clear the player needs, the design reference of MVC mode in software design and the function of the player UI interface design. Function, the design of the function of the system framework, and in terms of the UI interface, in view of the main interface, songs, play song list interface, interface and so on each interface design.
Finally, the design of the player of each specific module design, analyze their operation process, and combined with the knowledge of Java programming and object oriented programming ideas, completed the writing of each function module of the logic of the code. Each module to achieve high cohesion, low coupling design, and in the final effective combination, so that the completion of the design of the network music player based on the Android platform. After the design is completed, after a series of functional testing and performance testing, we can draw the conclusion that this design has been completed..
Keywords:Andriod; XML; Network music player;UI; Playback controls
目录
第1章 绪论 1
1.1研究背景及意义 1
1.2 国内外发展现状 1
1.3 本文的主要研究工作与章节安排 2
第2章 Andriod操作系统 4
2.1 Andriod系统架构介绍 4
2.2 Andriod系统的特征与优势 6
2.2.1 Andriod系统的特征分析 6
2.2.2 Andriod系统的优势分析 7
2.3 本章小结 8
第3章 运用到的主要理论及技术 9
3.1 XML解析技术 9
3.1.1 DOM解析器 9
3.1.2 SAX解析器 9
3.1.3 PULL解析器 10
3.2 MVC编程模式 11
3.3 线程与多线程 12
3.3.1 实现多线程 12
3.3.2 Thread和Runnable的区别 13
3.3.3 多线程的优势及意义 14
3.4 IO流 15
3.4.1 流的概念 15
3.4.2 流的分类 15
3.5 本章小结 15
第4章 播放器的需求分析及方案设计 17
4.1 音乐播放器的基本需求分析 17
4.1.1 界面设计需求 17
4.1.2 基本播放需求 17
4.2 基于用户体验的需求分析 18
4.3 系统功能架构设计 18
4.4 应用UI界面设计 19
4.4.1 主界面 19
4.4.2 歌曲列表界面 23
4.4.3 歌曲播放界面 25
4.4.4 其他界面 26
4.5 本章小节 27
第5章 播放器的逻辑设计与具体实现 28
5.1 播放控制模块的实现 28
5.1.1 播放控制流程 28
5.1.2 实现播放控制的部分代码 29
5.2 数据获取模块的实现 29
5.2.1 数据获取流程 30
5.2.1 实现数据获取的部分代码 31
5.3 个性设置模块的实现 31
5.3.1 个性设置流程 31
5.3.2 实现个性设置的部分代码 32
5.4 下载管理模块的实现 32
5.4.1 管理下载歌曲的流程 32
5.4.2 实现下载管理的部分代码 33
5.5 导出APK文件 34
5.6 本章小节 34
第6章 功能测试与性能测试 35
第7章 总结与展望 36
7.1 总结 36
7.2 展望 36
参考文献 37
附录 模块代码 38
播放控制模块 38
数据获取模块 43
个性设置模块 48
下载管理模块 51
致谢 56
绪论
1.1研究背景及意义
随着社会节奏变得越来越快,人们总是希望能在忙碌之余放松自己,舒缓压力,听音乐无疑是一个不错的选择。近些年来,移动设备日新月异,不少手机用户已经习惯于在手机等移动终端上欣赏自己喜欢的音乐。大家在挑选手机时,音乐播放能力已经成为了一个重要的指标,一款风格喜人、性能良好的手机音乐播放器无疑是在锦上添花。与传统的MP3、MP4等播放器相比,手机播放器在各个方面都不会输给它们,而且还具备了更好的便携性,而一款网络音乐播放器还具备了在线欣赏及下载网络歌曲的功能,所以开发一款优秀的网络音乐播放器就具有了重要的意义以及发展前景。
选择一个好的平台对于一款应用的开发是一个具有重大意义的开始,现下,随着软件应用的越来越丰富,开发的系统平台在很大程度上决定了开发的难度和开发的质量。随着塞班淡出历史舞台,现在比较成熟、稳定的平台系统有IOS和Andriod,其中Andriod以其出色的开发性著称,因为它是一款开源的系统,对终端几乎没有任何依赖性。另外,由于它拥有非常成熟且丰富的图形界面及各种插件,开发难度和成本低,故本次设计很自然的选择了Andriod平台作为开发平台。