基于ios移动终端数据查询与流媒体设计方案.docx
《基于ios移动终端数据查询与流媒体设计方案.docx》由会员分享,可在线阅读,更多相关《基于ios移动终端数据查询与流媒体设计方案.docx(51页珍藏版)》请在冰豆网上搜索。
![基于ios移动终端数据查询与流媒体设计方案.docx](https://file1.bdocx.com/fileroot1/2023-4/21/9e58b7c2-d8b8-44bd-9f26-47af1094baea/9e58b7c2-d8b8-44bd-9f26-47af1094baea1.gif)
基于ios移动终端数据查询与流媒体设计方案
基于ios移动终端数据查询与流媒体设计方案
(WORD版可编辑)
摘要.............................................................................................................I
1绪论........................................................................................................1
1.1国内外课题和背景..........................................................................................1
1.2国内外发展情况..............................................................................................1
1.3研究内容..........................................................................................................1
2相关技术介绍........................................................................................3
2.1IOS简介...........................................................................................................3
2.1.1系统架构................................................................................................3
2.1.2模块性....................................................................................................3
2.1.3SDK.........................................................................................................3
2.1.4Plist..........................................................................................................4
2.1.5JSON.......................................................................................................6
2.2Objective-C语言
2.2.1简介........................................................................................................6
2.2.2语言特性................................................................................................7
2.2.3优缺点....................................................................................................8
2.2.4Objective-C同C++的异同.....................................................................8
2.3流媒体
2.3.1流媒体定义............................................................................................9
2.3.2流媒体技术原理..................................................................................10
3系统分析..............................................................................................11
3.1需求分析.......................................................................................................11
3.1.1需求定义.............................................................................................11
3.1.2需求任务............................................................................................11
3.1.3非功能性需求......................................................................................12
3.2结构化分析....................................................................................................13
3.2.1软件流程图..........................................................................................14
4系统设置..............................................................................................15
4.1系统设计原则................................................................................................15
4.2系统模块结构设计........................................................................................16
4.3系统数据库设计............................................................................................17
4.3.1系统E-R图..........................................................................................17
4.4界面设计........................................................................................................19
5系统实现..............................................................................................21
5.1菜单页面........................................................................................................21
5.2新闻资讯页面................................................................................................22
6系统测试..............................................................................................30
6.1测试类别........................................................................................................30
6.2测试结果和分析............................................................................................30
7结论与展望..........................................................................................31
7.1主要的研究成果............................................................................................31
7.2进一步的研究................................................................................................31
参考文献..................................................................................................33
附录..........................................................................................................34
摘要
随着移动平台的用户群日益剧增,现如今,大多数人群已经有了移动设备,并且这些移动设备中的智能设备占大多数。
本篇文章主要论述的是一款在苹果智能手机上的应用,一个数据处理和流媒体实现的软件。
该软件用了苹果公司的IOS下的数据库和媒体播放等类实现的,经过测试流畅度良好,没有什么bug的出现
介绍苹果的设计模式和应用,让人们知道它的优越性,并且与其他的智能系统做对比,具体介绍苹果系统的数据存储和处理机制。
本文使用IOS系统设计实现了一款游戏数据查询的软件。
该软件方便玩家在游戏之余可以随时查询到游戏中的数据,以方便玩家的游戏技术的提高。
关键词:
iPhone;IOS;Plist
1绪论
随着计算机硬件和软件的高速发展,以及互联网的不断普及,计算机已经不再是一个“单机”的工作娱乐机器。
在大量的数据源下有着社会上的各种形态。
本文主要介绍的是一款网络游戏内的数据源进行处理的软件,主要针对的是一群该游戏的爱好者,让他们在游戏之余也可以不断的去了解该游戏内的一些关键性的数据。
1.1课题背景和意义
社会在发展,人类在进步,尤其是在移动互联网方面的进步,智能移动设备不断的进入普通人的群体,越来越多的人用上了以前只有军方才拥有的移动设备,然而没有应用的移动设备的就好比没有灵魂的生物,那么,此时移动设备上的各种应用就显得特别重要。
智能手机当然是最普遍的一款移动设备,也是最重要的一款,智能手机的一个重要的功能在于它的屏幕显示的信息比非智能手机的要多出很多,在工作学习之余可以通过手机查阅很多感兴趣的东西,比如说一款网络游戏的一些数据。
当前网络游戏的用户群是特别多的,因此,查询类的应用可以使这些群体更好的去了解游戏的点点滴滴。
1.2国内外发展情况
IOS源于美国苹果公司开发的操作系统,早在2007年苹果公司就已经发布了该系统,对于国内大多数编程人员来说,IOS系统还是一个陌生的系统,当然Objct-C语言也是一门新的编程语言,所以国内的苹果应用还有很大的提升空间。
再来看看国外的苹果应用,应该说已经到了很熟练的地步。
然而,毕竟还是有文化差异的,国外的应用虽然华丽,但是操作习惯以及页面风格不太符合国内人群的习惯,所以在国内的应用市场还是有很大的发挥空间的。
调查显示,无论在国内还是国外,现在大多数应用可能是商用的或者游戏方面的,对于数据查询这一块还是有很大的空缺的,因此有很大的作用余地。
1.3研究内容
该系统的主要实现四个功能,分别为:
新闻查看、视频浏览、游戏数据查看、游戏数据收藏。
1)新闻查看:
可以查看与该游戏相关的新闻
2)视频浏览:
可以在应用中浏览游戏的相关视频
3)游戏数据查看:
可以查看游戏中的人物,装备等元素的属性
4)游戏数据收藏:
可以游戏中的人物,装备等元素的收藏,以方便下次查看
2相关技术介绍
2.1IOS简介
iOS(原名:
iPhoneOS)是由苹果公司为移动设备所开发的操作系统,支持的设备包括iPhone、iPodtouch、iPad、AppleTV。
与Android及WindowsPhone不同,iOS不支持非苹果硬件的设备。
系统操作(iOS7)占用约700-900MB左右的储存空间(其中iPhone、iPodtouch占约700MB,iPad占约900MB)。
目前,iOS的最新版本为8.0beta。
2.1.1系统架构
框架:
iOS使用基于与苹果麦金塔计算器不同的ARM架构的64位或32位中央处理器,使用由PowerVR视频卡渲染的OpenGLES3.0以Darwin作为基础。
系统架构层次:
核心操作系统层(theCoreOSlayer),核心服务层(theCoreServiceslayer),媒体层(theMedialayer),触控应用层(theCocoaTouchlayer)。
2.1.2模块性
IOS是Cisco路由软件的初始品牌名称。
随着Cisco技术的发展,IOS不断扩展,成为CiscoCentralENgineering(中央工程部门)所称之为的“一系列紧密连接的网际互连软件产品”。
尽管在其品牌名识别中,IOS可能仍然等同于路由软件,但是它的持续发展已使之过渡到支持局域网和ATM交换机,并为网络管理应用提供重要的代理功能。
必须强调的是,IOS是Cisco开发的技术:
一项企业资产。
它给公司提供独特的市场竞争优势。
目前许多竞争者许可IOS在其集线器和路由模块内运行,IOS已经广泛成为网际互连软件事实上的工业标准。
2.1.3SDK
2007年10月17日,史蒂夫·乔布斯在一封张贴于苹果公司网页上的公开信上宣布软件开发工具包。
它将在2008年2月提供给第三方开发商。
软件开发工具包于2008年3月6日发布,并允许开发人员开发iPhone和iPodtouch的应用程序,并对其进行测试,名为“iPhone手机模拟器”。
然而,只有在付出了iPhone手机开发计划的费用后,应用程序才能发布。
自从Xcode3.1发布以后,Xcode就成为了iPhone软件开发工具包的开发环境。
第一个Beta版本是iPhoneSDK1.2b1(build5A147p)它在发布后立即就能够使用了。
由于iOS是从于MacOSX核心演变而来,因此开发工具也是基于Xcode。
该SDK需要拥有英特尔处理器且运行MacOSXLeopard系统的Mac才能使用。
其他的操作系统,包括微软的Windows操作系统和旧版本的MacOSX都不支持。
SDK本身是可以免费下载的,但为了发布软件,开发人员必须加入iPhone开发者计划,其中有一步需要付款以获得苹果的批准。
加入了之后,开发人员们将会得到一个牌照,他们可以用这个牌照将他们编写的软件发布到苹果的AppStore。
发布软件一共有三种方法:
通过AppStore,通过企业配置仅在企业内部员工间应用,也可通过基于"Ad-hoc"而上载至多达100部iPhones。
这个发布iPhone软件的形式的出现使人们不能根据GPLv3的授权代码发布软件。
任何根据GPLv3任何代码的开发者也必须得到GPLv3的授权。
同时,开发商在散发布已经由GPLv3授权的应用软件的同时必须提供由苹果公司提供的密匙以允许该软件修改版本的上载。
2.1.4Plist
(1)基本内容
Plist文件通常用于储存用户设置,也可以用于存储捆绑的信息,该功能在旧式的MacOS中是由资源分支提供的。
(2)表达
由于Plist中存储的数据是抽象的,其采用的文件格式可以不止一种。
NeXTSTEP只使用一种格式,而稍晚的GNUstep和MacOSX框架导入了不同的文件格式。
NeXTSTEP
NeXTSTEP系统中,Plist被设计为人类可读的,并可以手工修改,故采用了类似于编程语言的语法将数据串行化为ASCII数据。
字符串被表示为:
"Thisisapliststring"
二进制数据被表示为:
<[文本形式的十六进制数]>
数组被表示为:
("1","2","3")
字典则被表示为:
{"键"="值";...}
NeXT的plist格式的一个限制是它不能表示NSValue对象(即数,布尔值等)。
GNUstep
GNUstep采用了NeXTSTEP的格式,并添加了少许特性。
它支持NSValue对象(以普通ASCII码表示),支持NSDate(串行化成<*DYYYY-MM-DDHH:
MM:
SStimezone>的格式)。
GNUstep也可以读写MacOSX使用的Plist格式。
MacOSX
MacOSX在支持读取NeXTSTEP格式的同时,并不鼓励使用它,而是推荐使用Apple导入的两种新格式。
MacOSX10.0中,NeXTSTEP的格式被认为是不被推荐的,并导入了一种新的XML格式,其由Apple定义的公开DTD所规范化。
XML格式支持非ASCII格式,亦可存储NSValue对象。
但与GNUstep的ASCIIplist格式不同,Apple的NeXTSTEP格式的plist文件不支持这两种特性。
由于XML文件在储存时不是最有空间效率的,MacOSX10.2导入了一种新的格式,它将plist文件存储为二进制文件。
从MacOSX10.4开始,这是偏好设置文件的默认格式。
plutil工具(在MacOSX10.2中导入)可以用来检查plist的语法,或者对plist文件进行格式转换。
可以使用任何文本编辑器对XML格式的plist进行更改,同时,Apple提供了“PropertyListEditor”应用程序(作为AppleDeveloperTools的一部分安装),它是一个树状的查看器与编辑器,并可以处理二进制格式的plist。
对于XML格式,XML标签和相关Foundation类、CoreFoundation类型、数据储存格式的关系如下表所示:
Foundation类CoreFoundation类型XML标签储存格式
NSStringCFStringUTF-8编码的字符串
NSNumberCFNumber,十进制数字符串
NSNumberCFBoolean,or无数据(只有标签)
NSDateCFDateISO8601格式的日期字符串
NSDataCFDataBase64编码的数据
NSArrayCFArray可以包含任意数量的子元素
NSDictionaryCFDictionary交替包含标签和plist元素标签
defaults工具可以用于以命令行形式,通过程序的偏好设置域,管理用于储存偏好设置的plist文件;而PropertyListEditor则可以用于编辑任何plist文件(包括用于储存偏好设置的)。
从MacOSX10.4开始,Apple提供了通过SystemEvents应用程序读写plist文件的AppleScript接口,而从MacOSX10.5开始,Apple也提供了用于编辑,创建和写入plist文件的接口。
2.1.5Json
JSON(JavaScriptObjectNotation)是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读,同时也方便了机器进行解析和生成。
JSON简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构,其可以将JavaScript对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从Web客户机传递给服务器端程序。
JSON采用完全独立于程序语言的文本格式,但是也使用了类C语言的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。
这些特性使JSON成为理想的数据交换语言。
2.2Objective-C语言
2.2.1简介
Objective-C,通常写作ObjC和较少用的ObjectiveC或Obj-C,是扩充C的面向对象编程语言。
它主要使用于MacOSX和GNUstep这两个使用OpenStep标准的系统,而在NeXTSTEP和OpenStep中它更是基本语言。
Objective-C可以在gcc运作的系统写和编译,因为gcc含Objective-C的编译器。
1980年代初布莱德·确斯(BradCox)在其公司Stepstone发明Objective-C。
他对软件设计和编程里的真实可用度十分关心。
Objective-C最主要描述是他1986年出版的
ObjectOrientedProgramming:
AnEvolutionaryApproach.AddisonWesley.ISBN0-201-54834-8.
Objective-C用途:
编写iOS操作系统(如:
iPhone、iPodtouch、iPad等苹果移动终端设备)应用程序的利器。
Objective-C的流行当归功于iPhone的成功,因为Objective-C一直被用于编写iPhone应用程序。
2.2.2语言特性
Objective-C是非常实际的语言。
它是一个用C写成、很小的运行库,只会令应用程序的大小增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反。
ObjC写成的程序通常不会比其原始码大很多。
而其函式库(通常