论文部分内容阅读
随着移动互联网的到来,智能手机的流行已成为手机市场的一大趋势。这类移动智能终端的出现改变了人们的生活方法及对传统通讯工具的需要,人们不再满足于手机的外观和基本功能的使用,而开始追求手机的强大操作系统给人们带来更多、更强、更具个性的社交化服务。所谓智能手机,它就像个人电脑一样,拥有自己独立的操作系统,可以自由安装软件、游戏等第三方服务商提供的程序。目前通用的操作系统有:Symbian、Windows Mobile、Windows phone、iOS、Linux(含Android、Maemo、MeeGo和WebOS)、Palm OS和BlackBerry OS,他们之间的应用软件互不兼容。因为可以安装第三方软件,所以智能手机有丰富的功能。
既然第三方软件丰富了智能手机的功能,那么在开发软件的过程中,除了要有一个精美的外部框架,内部各种数据选择一个合适的存储方法也是非常重要的。在计算机系统的软件开发中,数据存储主要有文件存储、数据库存储和网络存储三种,那么在智能手机的应用开发中同样也有这三种存储方式,只是由于智能手机在CPU、内存等物理条件上不如计算机及每种智能手机的操作系统的差异,所以三种数据存储方式在不同的智能手机系统中有不同的表现形式,但它们的基本工作原理还是一样的。对于文件存储,要给需要存储的数据按照需求形成一个文件并命名,再通过指定的路径存储到指定的位置上;对于数据库存储,根据智能手机软件的特点,SQLite这种轻型的关系型数据库是很多手机平台开发中首选。它既有数据库存储的一般特性,又有适合手机软件开发所需的特性。本文主要介绍文件存储和数据库存储两种存储方式在手机应用软件开发中的表现形式及运用,并通过比较两种数据存储方式在软件开发中的特点,得到结论即:在软件开发中如何恰当地选择数据存储方式更有利于软件的使用。
随着通信网络的发展及3G时代的到来,在软件开发中与Web服务器的互动也是越来越频繁。对于这种实时的动态的数据,除了可以用网络存储方式外,同样可以像本地数据一样利用文件存储方式和数据库存储方式存储。只需要把Web服务器中的数据解析出来,然后根据需要选择合适的存储方式存储。其中,XML解析技术是常用的一种方法,因为XML是一组规则和准则的集合,用于以无格式文本来描述结构化数据,并且它是纯数据描述,与编程语言、操作系统或传输协议无关,从而将数据从以代码为中心的基础结构所产生的约束中解放出来,让数据能够在Web上更自由的流通。所以XML解析技术在很多平台上都可以使用,只是表现的形式不一样而已。XML解析技术发展到今天有四类,分别是面向文档的流式解析、面向文档的对象式解析、面向文档的指针式解析和面向应用的对象式解析。本文主要介绍在智能手机开发平台上常用的两种,即面向文档的流式解析SAX和面向文档的对象式解析DOM。这两类方法因为没有语言的限制,所以在不少平台上使用。本文还通过比较并分析两种解析方法的特点来得到在软件开发中应如何正确选择适当的XML解析技术。
随着移动通信网络的发展,人们对智能手机应用软件的需求也越来越高,对软件中的数据类型不再拘泥于文字、图片等简单的类型,更希望通过手机上网就可以观看到各种不同视频、电视等媒体。流媒体技术解决这一问题。流媒体(Streaming media)是指将一连串的媒体数据压缩后,经过网络分段传送数据,在网络上实时传输影音以供观赏的一种技术与过程,此技术使得数据分组得以像流水一样发送;流媒体文件格式是支持采用流式传输及播放的媒体格式。移动流媒体是指利用目前2.5G或3G的移动通信网在移动设备上实现的视频播放功能。在手机客户端,对这种实时动态的音视频数据需要先把它们的路径从服务器中解析出来,然后存储在需要的地方,再通过相应的视频播放的框架中。接着播放器根据解析出来的路径得到这个多媒体的内容,在播放这个多媒体之前,预先下载媒体内容的一部分作为缓存,在将缓存中的这部分内容向用户播放的过程当中,该多媒体内容的剩余部分将在后台继续下载到客户端播放器上,这样就实现了所谓“边下载,边播放”的流式播放。可是数据容量的增多会直接影响着数据存储,数据加载的效率和软件运行的速率,因此,在智能手机应用软件的开发过程中,常常通过利用多线程来提高数据存储和软件运行的速率。本文主要介绍了流媒体的概念以及实现流媒体业务的各种协议,同时还实现了在iPhone平台上播放流媒体的功能,以及多线程在智能手机开发平台上的实现。
在智能手机应用软件的开发平台上,不论是数据存储还是XML解析技术,虽然它们在不同平台上所运用的基本原理相同,但是由于智能手机操作系统不同,导致开发平台上存在很多不同的元素,使不同手机操作系统上的应用软件互不兼容,所以在不同的手机操作系统的开发平台上,数据存储和XML解析技术的处理方式也不同。因此为了说明在不同操作系统的开发平台上,同一种数据存储方式和XML解析技术的不同处理方式,本文介绍了两种智能手机应用软件开发平台的数据存储和XML解析技术的处理方式。