一种IOS平台在线音乐播放器APP设计与实现的制作方法

文档序号:13625728阅读:2636来源:国知局

本发明是一种移动智能端技术领域,特别涉及ios平台技术。



背景技术:

现代社会人们更多地通过音乐陶冶情操、放松心情、丰富生活,网络技术和移动通信技术发展为人们提供了新的音乐娱乐途径,提供多样化、多层次的移动通信服务已成为各生产厂商新的利润增长点;ios是由苹果公司开发的移动操作系统,属于类unix的商业操作系统,用于苹果公司移动产品上;ios编程需要的接口、工具以及资源全部包含于iossdk,通过集成开发环境完成应用程序开发。



技术实现要素:

ios平台结构:ios平台由4层构成,每个层包含若干组件,通过组件完成相应功能;各层简要描述如:

(1)可触摸层(cocoatouch):通过界面控制、多任务、多点触控等关键技术,提供实现人机交互、触摸操作的应用,为开发各类智能终端软件提供了便捷的方法和技术支撑;uikit框架是最核心部分,包含objective-c程序接口,提供实现程序界面的各种组件,事件驱动的iphone应用的关键架构,还负责处理屏幕上的多点触摸事件、文字输出、图片和网页显示、相机或文件存取,以及加速感应等;

(2)媒体应用层(mediaapplication):提供相互结合可以完成各种图像、音视频等多媒体服务的应用和相关开发技术,为移动设备带来完美的多媒体体验;应用程序中使用各种媒体文件,进行音频与视频录制,图形绘制,以及制作简单的动画效果,也可以通过底层框架访问必要的音频设备硬件:主要包括图像技术(quartzcoreanimation和opengles),音频技术(coreaudio和openal)和视频技术;

(3)核心服务层(coreservice):核心服务层位于coreos层之上,为所有应用程序提供基础系统服务,提供的主要框架包括:corefoundation框架为ios程序开发基本数据管理和服务功能;cfnetwork框架提供网络协议的面向对象的抽象;corelocation框架利用附近的gps、蜂窝基站或wi-fi信号信息测量用户的当前位置;security框架提供了管理证书、公钥/私钥对和信任策略等接口确保应用数据安全;

(4)核心操作系统层(coreos):位于ios层次结构的最底层,包括操作系统的内核环境、驱动和基本接口,通过c语言提供的api函数完成与硬件设备交互及其他一些操作任务,包括bonjour和dns服务、硬件驱动、区域语言信息、内存分配、程序管理、线程管理、数学计算、文件访问、网络管理、电源按理、标准输人输出等;内核基于mac操作系统,负责操作系统的各个方面。

音乐播放器app功能:功能是软件系统为用户提供的服务,音乐播放器除了完成音乐播放外,还要完成相应的辅助及控制操作;主要功能由7个模块组成,各功能模块简要描述如下:

(1)播放列表:ios系统含有很多音乐作品,通过音乐列表管理,可以快速、方便地进行分类管理;用户可以显示列表、新建列表、删除列表和重新命名列表,向列表里添加音乐通过打开文件实现;

(2)播放控制:用于控制音乐的播放状态,是播放器的核心功能,默认情况下按顺序播放当前列表中的曲目;用户可以根据需要暂停、停止、退出、上一曲、下一曲、切换音乐等操作;也可以选择播放模式,包括循环播放、单曲播放、列表播放等,如果用户当前需要在播放设备上完成其他工作,可以使用后台播放功能;

(3)进度控制:显示当前音乐的播放总时长和已播放时长,通过使用进度条和时间同步显示,如果需要实现跳跃式播放可以直接调整播放进度;

(4)声音控制:音量大小控制通过图示和数字同步显示,静音控制通过开关按钮完成;

(5)歌词管理:在播放音乐的同时提供歌词同步显示,同时提供歌词搜索功能,根据歌词搜索歌曲;

(6)下载管理:通过网络下载歌曲或歌词,提供多条件实现音乐检索,包括演奏者姓名、音乐名称、专辑名称、歌词等,在下载进度列表中显示下载状态;

(7)音乐剪辑:通常是使用音乐剪辑功能截取自己喜欢的音乐片段作为手机铃声,用户也可以根据需要,经过选择、取舍、分解与组接,完成一个连贯流畅、含义明确、主题鲜明并有艺术感染力的作品。

主播放界面执行流程:主播放界面是音乐播放器的核心模块,向用户展示易于操作的播放界面,能够选择播放模式及相关播放控制操作;程序执行流程是程序的执行过程,是编写程序的依据,通常用流程图工具表示;流程图是程序分析中最基本、最重要的分析技术,独立于任何一种程序设计语言且具有直观清晰的特点;主播放界面执行流程描述如下:程序启动后,操作系统ios监听用户操作;用户选择播放列表后,屏幕以列表方式显示该列表下的所有音乐曲目,如果没有用户想收听的音乐,则返回后进人监听用户操作状态;用户选择一首曲目后进人播放状态,可以选择播放模式,也可以使用默认模式;在播放音乐的同时再次进人监听用户操作状态,响应用户的切换音乐、上一曲、下一曲、继续播放、退出、后台播放、暂停、停止等操作,如果执行退出操作则显示相关的提示信息后可以退出界面,选择其他操作后进人相应的过程完成处理。

音乐播放器实现:ios的音频播放分为音效播放和音乐播放,音效播放是一种作为点缀使用的短音频播放,不需要进度和循环等控制,使用audiotoolbox.framework完成;音乐播放一些较长的音频,播放过程中需要进行精确的控制,使用avfoundation.framework完成;avfoundation.framework包含三个类,avaudioplayer类负责播放,avaudiorecorder类负责录制,avaudiosession类负责配置;avaudioplayer支持多种音频文件格式,能够完成创建、准备、播放、暂停、跳过和停止等操作,支持音量调节控制、循环播放和左右声道设置;

avaudioplayer的使用过程包括初始化avaudioplayer对象,指定本地文件路径;设置播放器属性,包括重复次数、音量大小等;调用play方法播放;avaudioplaye一次只能播放一个音频文件,上一曲、下一曲通过创建多个播放器对象来完成;简单的播放过程实现如下:

(1)初始常量、变量设置:包括文件名称、歌曲名称、演奏者、播放器、控制面板、播放进度、播放/暂停按钮、进度更新定时器等;

(2)初始化用户界面,通过)setupui函数实现;

(3)创建播放器:包括两个过程,一是初始化播放器,ur1参数只能是文件路径,不支持httpurl;二是设置播放器属性,设置为循环或不循环,加载音频文件到缓存;如果创建成功则返回音频播放器,失败则提示错误信息并返回空值;

(4)播放音频:播放音频文件通过(bool)play方法实现,在指定的时间开始播放音频通过(bool)playattime;(nstimeinterval)time方法实现;

(5)点击停止/暂停按钮:暂停播放通过(void)pause方法,停止播放通过(void)stop方法实现;此时也要暂停定时器,但不能调用invalidate方法,此方法会取消,之后无法恢复;

(6)更新播放进度:播放进度依靠一个定时器实时计算当前播放时长和音频总时长的比例来实现,usingblock方法获得播放进度并在设定的时间间隔内定时更新播放进度;

(7)播放器代理方法:用于结束音乐播放,如果有下一曲功能可以触发下一曲音乐播放。

该app是为ios平台专门设计开发的音乐播放器软件,是在充分了解广大音乐爱好者的需求和习惯,分析音乐播放时可能遇见的各种问题,并深入研究ios平台相关技术的基础上开发的;软件吸收了rushplayer、aceplayer、qvodplayer、rockplayer2、ecplayer等ios平台现有的在线音乐播放器优点,支持caf/m4a/mp3/aif/wav/au/snd/aac等音频格式文件,为音乐爱好者提供全方位的音乐播放服务。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1