ios下视频点播app设计与实现大学本科毕业论文.doc
《ios下视频点播app设计与实现大学本科毕业论文.doc》由会员分享,可在线阅读,更多相关《ios下视频点播app设计与实现大学本科毕业论文.doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、摘 要苹果iOS是苹果开发的手持设备操作系统。苹果公司最早于2007年1月9日的Macworld大会上发布这个系统,最初设计给iPhone使用,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。近年来,随着iphone和广泛应用,使许多企业发现,手机业务价值,促使越来越多的人开始学习开发手机。苹果手机软件基于Object_C编程语言编程Xcode的环境下发展。手机软件分为许多类型,包括视频类手机软件有很高的地位在手机软件的发展。本文基于iOS开发平台设计并且实现了一款手机视频App,展示如何通过利用Object_C 的工具函数实现对视频的各种处理。论述了视频的播放,
2、异步下载以及断点播放。关键字:视频播放 Dota Object_C AbstractApple iOS is the development of handheld devices operating system.Apple as early as January 9,2007 the Macworld conference this system,originally designed for use in iPhone,subsequently applied to the iPod touch,Apple,and Apple products such as Apple TV.In r
3、ecent years, with the iphone and it is widely used, make many businesses found that mobile phone on business value, prompting more and more people begin to learn the development on mobile phones. Apple mobile phone software based on Object_C programming language under the environment of Xcode develo
4、pment programming. Mobile phone software is divided into many types, including video class mobile phone software have the very high status in the development of mobile phone software.This article is based on the iOS(Internetworking Operation System) is designed and implemented a mobile video App, sh
5、ows how to use Object_C tool function on video processing. Discusses the video playback, asynchronous download and breakpoint.KeywordsVideo Display Dota Object_C目录第一章 绪论51.1 iOS系统概述51.2 iOS系统的构架51.2.1 Cocoa Touch层51.2.2 Media 层61.2.3 Core Services层61.2.4 Core OS层61.3 Object_C的介绍6第二章 总体设计82.1 系统各个功能模
6、块总体设计82.2 iOS的View的生命周期9第三章 详细设计113.1 基础类设计113.2 项目所需系统类库133.3 第三方SDK133.4 App运行首页面143.4.1 视频解说143.4.2 视频解说详情页面163.4.3 视频播放173.5 视频缓存183.6 直播203.7 Dota2 英雄介绍和物品介绍213.7.1 Dota2 英雄介绍213.7.2 Dota2 物品的介绍243.8 设置263.9系统测试283.9.1 功能模块测试283.9.2 功能整体测试28第四章 结论和致谢29第一章 绪论1.1 iOS系统概述iOS操作系统是iPhont、ipod touch以
7、及iPad设备的核心。构架iOS平台的知识与Mac OS X系统同出一辙,iOS平台的许多开发工具和开发技术也源自Mac OS X,都是以UNIX为基础。但开发者无需具备Mac OS X的开发经验就可以编写iOS的应用程序。iPhone软件开发包(SDK)为着手创建iOS应用程序提供所需要的一切。1.2 iOS系统的构架iOS架构和Mac OS的基础架构相似。站在高级层次来看,iOS扮演底层硬件和应用程序的中介。创建的应用程序不能直接访问硬件,而需要和系统接口进行交互。系统接口转而又去和适当的驱动打交道。这样的抽象可以防止应用程序改变底层硬件。iOS实现可以看作是多个层的集合,底层为所有应用程
8、序提供基础服务,高层则包含一些复杂巧妙的服务和技术。 图1-1 iOS的层1.2.1 Cocoa Touch层Cocoa Touch层提供了基本的系统行为支持,而且将你的工作量降到最低,当你想要实现更为复杂的行为和界面时,才考虑向下层探寻技术支持。UIKit框架:UIKit提供了一些程序运行所必须的关键对象,使得App能够捕捉用户输入和在屏幕上显示内容MapKit框架:iOS3.0引入该框架,该框架提供一个可被嵌入到应用程序的地图界面,该界面包含一个可以滚动的地图视图Address Book UI框架:iOS3.0引入该框架,可以利用该框架撰写电子邮件,并将其放入到用户的发件箱排队等候发送Me
9、ssage UI框架:显示创建或者编辑联系人的标准系统界面1.2.2 Media 层包含图形、音频、视频等技术。Quartz Core框架:包含Core Animation 是高级动画制作和混合技术,它使用经过优化的渲染路径实现复杂的动画和视觉效果Media Player框架:应用程序播放视频和音频内容AV Foundation框架:该框架包含的Object_C类可用于播放音频内容Core Graphics框架:(CoreGraphics.framework)包含Quartz 2D绘图API接口。该框架基于C接口,提供绘图功能1.2.3 Core Services层应用程序提供基础系统服务。可
10、能应用程序并不直接使用这些服务。但它们是系统很多部分懒以建构的基础。Foundation框架:为Core Foundation框架的许多功能提供Object_C封装Core Foundation框架:是一组C语言接口,它们为iOS应用程序提供基本数据管理和服务功能Core Location框架:可用于定位某个设备经纬度其他框架:CFNetWork框架、Core Data框架、Core Media框架、Core Telephony框架、Event Kit框架、Mobile Core Services框架、Quick Look框架、Store Kit框架、System Configuration框
11、架1.2.4 Core OS层Core层的底层功能是很多其他技术的构建基础。通常情况下,这些功能不会直接应用与应用程序,而是应用与其他框架。但是,在直接处理安全事务或和某个外设通讯的时候,则必须要应用到该层框架Accelerate框架:iOS4.0引入了Accelerate框架,该框架的接口可用于执行数字、大数字以及DSP算法External Accessory框架:iOS3.0引入了External Accessory框架,通过它来支持iOS设备与绑定附件通信。附件可以通过一个30针的基座接口和设备连接,也可以通过蓝牙连接Security框架:iOS系统不但提供内建的安全功能,还提供Secu
12、rity框架用于保证应用程序所管理之数据的安全。该框架提供的接口可用于管理证书、公钥、私钥以及信任策略。它支持生成加密的安全伪随机数。同时,它也支持对证书和Keychain迷药进行保存,是用户敏感数据的安全仓库1.3 Object_C的介绍Objective-C是非常“实际”的语言。它使用一个用C写成、很小的运行库,只会令应用程序的大小增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反,ObjC写成的程序通常不会比其原始码大很多。而其函式库(通常没附在软件发行本)亦和Smalltalk系统要使用极大的内存来开启一个窗口的情况相反。扩展的关键字:interface,类型声
13、明,类似于c+中的class,区别在于Object c中的声明与实现是强制分开的,interface关键字用于类型的声明,包括数据成员、方法声明、属性等。方法的参数传递采用中缀符的形式,利用“:”分割参数名和被传递参数,类型的声明以interface开头,以end结束。implementation,对应于interface的类型声明,implementation表示一个类型的实现过程,同样以end结束。class,是一个前向引用声明,类似于C+中的friend友元声明,其作用是告诉编译器其后面的字段代表一个类型名称,尽管不知道类型的具体实现,但是只需要将其作为一个类型名称处理即可。通常在使用复
14、合的结构时可以采用class来减少头文件的相互引用,如果出现循环依赖,则需要依靠class来避免引用的死循环。property,提供了外界对成员变量的访问接口,其本质是为某一个属性提供set和get操作。synthesize,与property对应,将一个外在属性与成员变量相关联,定义在 implementation中,如果属性名与变量名一致则可以省略变量名。Object_C采用引用计数的方法进行内存管理,由于所有的对象都集成与NSObject,因此所有的对象都可以接受NSObject的三个方法:retain方法将对象的引用计数加一并返回该对象,release将引用计数减一,retainCou
15、nt方法返回对象当前的引用计数。当采用new、alloc、copy方法创建一个对象时,它的引用计数被置为1,如果程序中对该对象进行操作,则应根据需要,通过调用retain和release方法来保证该对象在不需要的时候被清除。当一个对象的引用计数被置为0后,系统会自动向对象发送一个dealloc消息,将其占有的资源释放。通常情况下,如果一个对象的初始化过程调用了其他资源,则应该重写改对象的dealloc过程,保证在对象的销毁期正确释放这些资源。类别是为现有的类提供一个新的方法的方法,即使没有一个类的源代码,仍然可以向类中添加一个方法以方便使用。类别的主要目的有3个:将类的实现分散到多个不同的文件
16、或框架中,创建对私有方法的前向引用,向对象添加非正式协议。Object C中的协议类似于java中的接口,通过protocol关键字定义一个或多个需要遵从协议的对象实现的方法。第二章 总体设计2.1 系统各个功能模块总体设计iOS开发是基于Object_C语言,使用iOS SDK在Xcode开发环境下进行开发,其应用与iOS系统的移动设备上,本课题主要是本地应用,加入少量网络解析和分享功能。2.1.1 功能总体设计根据系统功能分析,可以分为五大模块:视频解说、视频缓存、直播、Dota2、设置。 图2-1 功能总体设计图2.1.2 主要页面设计页面一览表显示出了本程序的主要页面以及设计的类名,概
17、要的描述了页面的主要功能。表 2-1-2 页面一览表NO页面名称设计类名页面概要1程序启动页面RootViewController程序运行后,最开始进入的界面2视频解说页面VideoViewController可查看各个解说的视频3视频缓存页面VideoCacheViewController下载存储4直播页面TvViewController观看当前能看到的视频5Dota2页面DotaViewControllerDota2的英雄简介和物品简介6设置页面SettingViewController2.1.3功能一览表功能一览表显示出了项目的主要功能的实现,以及所需技术或所需添加的第三方SDK,简要的
18、描述了功能概要。表 2-1-3 功能一览表NO功能名称功能概要公共方法涉及页面1视频播放调用网上的视频文件播放,使用自定义的AVPlayer否直播页面和视频解说页面2网络平台分享使用微信的第三方接口否Dota2页面2.2 iOS的View的生命周期ViewController的职责,对内管理与之关联的View,对外跟其他的ViewController通信和协调。对于与之关联的View,ViewController总是在需要的时候才加载视图,并在不需要的时候卸载视图,所以也同时担当了管理应用资源的责任。理解ViewController的生命周期,能够有效的管理应用资源,ViewControlle
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ios 视频点播 app 设计 实现 大学本科 毕业论文
限制150内