iOS移动网站开发详解(txt+pdf+epub+mobi电子书下载)


发布时间:2020-08-01 12:29:20

点击下载

作者:朱桂英

出版社:清华大学出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

iOS移动网站开发详解

iOS移动网站开发详解试读:

前言

随着移动手机设备的不断升级和Android、iOS、Windows Phone等智能系统的市场占有率越来越高,智能手机已经步入了飞速发展的黄金时期。在强烈的市场需求下,我们精心编写了本书,以帮助广大读者快速步入移动Web开发大军中去。本书背景

根据《纽约时报》网络版报道,市场研究公司Forrester称,2016年智能手机用户数量将达到10亿,其中许多人将用其进行办公。因此,企业需要着力思索如何用手机产品吸引客户。据国外媒体报道,爱立信近日发布的一份报告称,到2017年,移动设备的数量将从2012年的62亿台增长到90亿台。

从移动电话的产生,到当前移动互联应用的风生水起,我们已经步入了任何人都有机会获得大量信息资源的移动互联网时代。尽管移动计算技术正在扮演着如此重要的角色,但它仍处于发展初期。对于需要吸引不同群体用户、满足不同业务需求的应用市场而言,采用什么样的方式或技术才能实现一个实用、价格合理且可支持大量应用方式的移动愿景呢?在很多情况下来看,答案是使用Web技术。从Apple的iOS和Google的Android可以看出,未来的移动计算领域必将以更加开放的形态发展。基于开放、免费并且交互性很强的平台,开发方式将在移动应用的开发过程中扮演关键角色。本书特色

1. 配套大量多媒体语音教学视频,学习效果好

本书专门录制了大量的配套多媒体语音教学视频,以便读者更加轻松、直观地学习书中的内容,提高学习效率。这些视频与本书源代码一起收录于配书光盘中。

2. 结构合理,内容全面

本书从用户的实际需要出发,科学地安排知识结构,内容由浅入深,叙述清楚,具有很强的知识性和实用性。全书内容安排合理,将HTML 5、jQuery Mobile和PhoneGap等移动Web开发的核心技术一网打尽。

3. 易学易懂,初学者容易上手

本书条理清晰、语言简洁,可帮助读者快速掌握每个知识点;各个部分间既相互连贯又自成体系,使读者既可以按照本书编排的章节顺序进行学习,也可以根据自己的需求对某一章节进行有针对性的学习。

4. 由浅入深,内容循序渐进

本书从搭建iOS开发环境和HTML 5的基本语法知识入手,逐步介绍了jQuery Mobile框架和PhoneGap框架的核心知识,确保读者在没有编程基础的情况下,也能够很快掌握移动Web开发的技术精髓。

5. 实例典型,实用性强

本书彻底摒弃了枯燥的理论讲解和简单的操作说明,注重实用性和可操作性,详细讲解了各个部分的源码知识,使用户在掌握相关操作技能的同时,还能学习到相应的基础知识。

6. 提供技术支持,答疑解惑

为了更好地为读者服务,本书专门提供了技术支持网站www.chubanbook.com和QQ邮箱150649826@qq.com,无论是书中的疑问,还是学习过程中的疑惑,我们都会一一为大家解答。本书内容

本书是国内一线Web设计师和移动Web专家的力作,是国内第一本全面介绍HTML 5、jQuery Mobile和PhoneGap的专业书籍。通过本书的学习,读者可以掌握在iOS系统中开发移动Web程序的基本知识。本书内容新颖、知识全面、讲解详细,全书分为4篇共28章,其中第1~4章是基础篇,详细讲解了iOS系统基础,搭建开发环境,HTML、CSS和JavaScript,创建移动Web等内容;第5~11章是HTML 5技术篇,详细讲解了在iOS系统中使用HTML 5技术设计移动Web网页的基础知识,包括HTML 5的发展历程、整体框架、基本元素、表单、音频处理、视频处理、绘图、数据存储等内容;第12~19章是jQuery Mobile技术篇,详细讲解了在iOS系统中使用jQuery Mobile框架开发移动Web网页的基础知识,包括jQuery Mobile导航、按钮、表单、列表、内容格式化、主题化、常用API等内容;第20~28章是PhoneGap技术篇,详细讲解了在iOS系统中使用PhoneGap框架整合开发移动Web网页的基础知识,包括搭建测试环境、事件机制、插件开发及应用、常用API的具体应用等内容。本书采用理论加实践的编写方法,对于每个实例,先提出制作思路和包含知识点,然后再力求用最通俗的语言将高深的知识阐述出来。本书读者对象● iPhone和iPad编程初学者● 大中专院校的老师和学生● 做相关毕业设计的学生● Web程序员● 网页设计师● iOS开发人员● 相关培训机构的老师和学员● 网页设计师● 参加实习的初级程序员● 想向移动设备转行的Web程序员致谢

本书主要由朱桂英编写完成,同时参与编写的还有周秀、付松柏、邓才兵、钟世礼、谭贞军、罗红仙、张加春、王东华、王振丽、熊斌、王教明、万春潮、郭慧玲、侯恩静、程娟、王文忠、陈强、何子夜、李天祥和周锐等。本书在编写过程中,得到了清华大学出版社工作人员的大力支持,在此表示诚挚的感谢。由于时间匆忙,书中难免存在疏漏和不妥之处,敬请读者批评指正。编者第1篇基础篇第1章 iOS系统基础第2章 搭建开发环境第3章 HTML、CSS和JavaScript第4章 创建移动Web第1章iOS系统基础

iOS是一款功能强大的智能手机操作系统,被广泛地应用于iPhone、iPad和iTouch等苹果公司的系列产品中。iOS通过这些移动设备,向用户展示了一个多点触摸、可始终在线、视频以及具有众多内置传感器的界面。在本章的内容中,将带领读者一起来认识iOS这款神奇的系统,为读者后面知识的学习打下基础。1.1 iOS系统介绍

iOS是由苹果公司开发的手持设备操作系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。iOS与苹果的Mac OS X操作系统一样,本来这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为iOS。截至2012年7月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的37%,在美国的市场占有率为45%。1.1.1 iOS发展史

iOS最早于2007年1月9日的Macworld展览会上公布,随后于同年的6月发布第一版iOS操作系统,当初的名称为“iPhone runs OS X”。当时的苹果公司CEO史蒂夫·乔布斯先生,说服了各大软件公司以及开发者可以先搭建低成本的网络应用程序(WEB APP),这样可以使得它们能像iPhone的本地化程序一样来测试“iPhone runs OS X”平台。

2007年10月17日,苹果公司发布了第一个本地化iPhone应用程序开发包(SDK)。

2008年3月6日,苹果发布了第一个测试版开发包,并且将“iPhone runs OS X”改名为“iPhone OS”。

2008年9月,苹果公司将iPod touch的系统也换成了iPhone OS。

2010年2月27日,苹果公司发布iPad,iPad同样搭载了iPhone OS。

2010年6月,苹果公司将“iPhone OS”改名为“iOS”,同时还获得了思科iOS的名称授权。

2010年第四季度,苹果公司的iOS占据了全球智能手机操作系统26%的市场份额。

2011年10月4日,苹果公司宣布iOS平台的应用程序已经突破50万个。

2012年2月,应用总量达到552247个,其中游戏应用最多,达到95324个,比重为17.26%;书籍类以60604个排在第二,比重为10.97%;娱乐应用排在第三,总量为56998个,比重为10.32%。

2012年6月,苹果公司在WWDC 2012上推出了全新的iOS 6,提供了超过200项新功能。

2013年6月10日,苹果公司在WWDC 2013上发布了新一代的iOS 7系统。1.1.2 全新的版本——iOS 7

iOS 7在上一代iOS操作系统的基础上有了很大的改进,它不仅采用了全新的应用图标,还重新设计了内置应用、锁屏界面以及通知中心等。iOS 7还采用了AirDrop作为分享的方式之一并改进了多任务能力。iOS 7将支持iPhone 4以上设备、iPad 2以上设备、iPad mini以及iPod touch 5以上设备。

iOS 7发布后让人有眼前一亮的感觉,由于新系统加入了大量的3D效果,加之部分功能全部采用悬浮式半透明结构设计,让iOS 7看起来既有科技感又清新。

除了全新的扁平化界面外,苹果还重新设计了iOS 7的控制中心,并且新系统支持真正的多任务(卡片式),同时加入了不少手势操作功能,下面就来看看iOS 7的新功能。(1)iOS 7增加了AirDrop功能,用户可以在多台设备之间分享文件,操作非常简单,即选择相关文件,发送给网内指定的人即可,不过该功能的设备只支持iPhone 5、iPad 4、iPad mini以及iPod touch 5。(2)iOS 7中的Siri除了换上新的界面外,还支持车载导航设备(可以在汽车显示屏中查看信息、拨打电话),并且加入男声和一个全新的接口(整合更多的第三方功能与服务)。此外,Siri还整合了维基百科和Twitter的内容。(3)iOS 7中的Safari支持全屏显示、智能搜索功能以及酷炫的窗口切换3D效果,同时还改进了收藏夹和标签体验,增加了家长控制和iCloud钥匙串功能。(4)iOS 7带来了全新拍照功能,首先是拍照应用中加入了Square特性和各式各样的滤镜效果,同时相册中照片可以按照时间进行自动分类,而用户还可以把照片分享到别人的“相片流”里。(5)iOS 7的原生应用中加入了全新的手势操作,通过手势返回到主界面(多任务处理过程中,用户可以左右滑动来选择切换应用),同时App Store具有自动更新的特性,系统可以在后台自动更新软件。(6)iOS 7的控制中心中加入了“手电筒”功能,而天气应用也经过了大幅改动,可缩放查看天气综述,采用了动态天气背景。(7)iOS 7整合了苹果新的iTunes Radio流媒体音乐服务。

除此之外,iOS 7还有其他的改进,包括邮件搜索的改进、App Store的购买改进、Safari的防数据追踪、与腾讯微博的合作、Wi-Fi的升级、Map的黑夜模式、智能邮箱系统、PDF阅读、企业版的登录、单个APP VPN和长MMS短信等。

全新的iOS 7界面效果如图1-1所示。图1-1 全新的iOS 7界面效果1.2 从iPhone到iPad

对于广大开发人员来说,无需纠结于开发的程序是否能在不同的硬件设备中运行,只要是iOS程序就可以在支持iOS系统的设备中运行。不同设备之间的差异,只是表现在屏幕大小上而已。在当前的iOS开发项目中,主要是开发两类程序:iPhone程序和iPad程序,这两者的屏幕大小不一样。在本节的内容中,简要讲解运行iOS系统的两个产品:iPhone和iPad。1.2.1 让世界疯狂的iPhone

iPhone是一个集合照相、个人数码助理、媒体播放器以及无线通信设备的掌上智能手机。iPhone最早由史蒂夫·乔布斯在2007年1月9日举行的Macworld展览会上宣布推出,2007年6月29日在美国上市。2007年6月29日,iPhone 2G在美国上市,2008年7月11日,苹果公司推出iPhone 3G。2010年6月8日凌晨1点,乔布斯发布了iPhone 4。2011年10月5日凌晨,iPhone 4S发布。2012年9月13日凌晨(美国时间9月12日上午),iPhone 5发布。全新的iPhone 5如图1-2所示。图1-2 全新的iPhone 5

与iPhone 4S相比,iPhone 5更轻薄,屏幕尺寸更大,它的厚度大概是7.6毫米,比4S薄了18%,重量在112克左右,比4S轻了20%,采用速度更快的A6处理器,整体外观也拉长。iPhone 5的屏幕尺寸扩大到4英寸,屏幕的比例是16:9,应用软件的图标比4S增加了一行。iPhone 5的A6处理器预装的是苹果同步发布的iOS 6系统,运算速度比4S采用的A5处理器快了两倍,并且A6处理器的尺寸缩小了22%。iPhone 5支持4G技术的LTE网络。1.2.2 改变世界的iPad

iPad是苹果公司于2010年发布的一款平板电脑的名称,定位介于苹果的智能手机iPhone和笔记本电脑产品之间,通体只有四个按键,与iPhone布局一样,提供了浏览互联网、收发电子邮件、观看电子书、播放音频和视频等功能。

2010年1月27日,在美国旧金山欧巴布也那艺术中心(芳草地艺术中心)所举行的苹果公司发布会上,平板电脑iPad正式发布。

2012年3月8日,苹果公司在美国芳草地艺术中心发布第3代iPad。受到市场普遍期待的苹果新一代平板电脑iPad的外形与iPad 2相似,但电池容量增大,有3块4000mAh锂电池,芯片速度更快,使用A5X双核处理器,图形处理器功能增强,配四核GPU,并且在美国的售价将与iPad 2一样。第3代iPad如图1-3所示。图1-3 第3代iPad1.3 iOS的常用开发框架

为了提高开发iOS程序的效率,除了可以使用Xcode集成开发工具之外,还可以使用第三方提供的框架,这些框架为我们提供了完整的项目解决方案,是由许多类、方法、函数、文档按照一定的逻辑组织起来的集合,以便使研发程序变得更容易。在OSX下的Mac操作系统中,大约存在80个框架,这些框架可以用来开发应用程序,处理Mac的Address Book结构、刻制CD、播放DVD、使用QuickTime播放电影、播放歌曲等。

在iOS的众多框架中,Foundation框架和Cocoa框架最为常用。在本节的内容中,将简要讲解这两个框架的基本知识。1.3.1 Foundation框架简介

在Mac的操作系统中,为所有程序开发奠定基础的框架是Foundation框架。该框架允许使用一些基本对象,如数字和字符串,以及一些对象集合,如数组、字典和集合。其他功能包括处理日期和时间、自动化的内存管理、处理基础文件系统、存储(或归档)对象和处理几何数据结构(如点和长方形)。

Foundation头文件的存储目录如下所示。/System/Library/Frameworks/Foundation.framework/Headers

上述头文件实际上与其存储位置的其他目录相链接。请读者查看这个目录中存储在系统上的Foundation框架文档,熟悉它的内容和用法简介。Foundation框架文档存储在计算机系统中(具体位于/Develop/Documentation目录中),另外Apple网站上也提供了此说明文档。大多数文档为HTML格式的文件,可以通过浏览器浏览学习,同时也提供了Acrobat pdf文件,我们可以学习到包含Foundation的所有类及其实现的所有方法和函数的描述。

如果正在使用Xcode开发程序,可以通过Xcode的Help菜单中的Documentation窗口访问学习文档。通过这个窗口,可以搜索和访问存储在计算机本机中或者在线的文档。如果正在Xcode中编辑文件并且想要快速访问某个特定头文件、方法或类的文档,可以通过高亮显示编辑器窗口中的文本并右击的方法来实现。在出现的菜单中,可以选择Find Selected Text in Documentation或者Find Selected Text in API Reference命令,Xcode将搜索文档库,并显示与查询相匹配的结果。

在接下来的内容中,将带领读者一起简单了解Foundation框架是如何工作的。类NSString是一个Foundation框架中的类,可以使用它来处理字符串。假设正在编辑某个使用该类的程序,并且想要获得更多关于这个类及其方法的信息,无论何时,当单词NSString出现在编辑窗口时,都可以将其高亮显示并右击。如果从出现的菜单中选择Find Selected Text in API Reference命令,会得到一个外观与图1-4类似的文档窗口。图1-4 NSString类的文档

如果向下滚动标有NSString Class Reference的面板,将发现(在其他内容中间)一个该类所支持的所有方法的列表。这是一个能够获得有关实现哪些方法等信息的便捷途径,包括它们如何工作以及它们的预期参数。

读者可以在线访问developer.apple.com/referencelibrary,打开Foundation参考文档(通过Cocoa、Frameworks、Foundation Framework Reference链接),在这个站点中还能够发现一些介绍某些特定编程问题的文档,例如内存管理、字符串和文件管理。从时间上讲,除非订阅的是某个特定文档集,否则在线文档要比存储在计算机硬盘中的文档更新。

在Foundation框架中包括了大量可供使用的类、方法和函数。在Mac OS X上,大约有125个可用的头文件。作为一种简便的形式,我们可以使用如下代码头文件。#import

因为Foundation.h文件实际上导入了其他所有Foundation头文件,所以不必担心是否导入了正确的头文件,Xcode会自动将这个头文件插入到程序中。虽然使用上述代码会显著地增加程序的编译时间,但是通过使用预编译的头文件可以避免额外的时间开销。预编译的头文件是经过编译器预先处理过的文件。在默认情况下,所有Xcode项目都会受益于预编译的头文件。在本章使用每个对象时都会用到这些特定的头文件,这有助于我们熟悉每个头文件所包含的内容。1.3.2 Cocoa框架简介

在iOS应用中,Application Kit框架包提供了与窗口、按钮、列表等相关的类。Application Kit框架包含广泛的类和方法,它们能够开发交互式图形应用程序,使得开发文本、菜单、工具栏、表、文档、剪贴板和窗口等应用变得十分简便。在Mac OS X操作系统中,术语Cocoa是指Foundation框架和Application Kit框架。术语Cocoa Touch是指Foundation框架和UIKit框架。由此可见,Cocoa是一种支持应用程序,提供丰富用户体验的框架,它实际上由如下两个框架组成。● Foundation框架。● Application Kit(或AppKit)框架。

其中后者用于提供与窗口、按钮、列表等相关的类。在编程语言中,通常使用示意图来说明框架顶层应用程序与底层硬件之间的层次,如图1-5所示。图1-5 应用程序层次结构

图1-5中各个层次的具体说明如下所示。● User:用户。● Application:应用程序。● Cocoa(Foundation and AppKit Frameworks):

Cocoa(Foundation和AppKit框架)。● Application Services:应用程序服务。● Core Services:核心服务。● Mac OS X kernel:Mac OS X内核。● Computer Resources(memory, disk,display, etc.):计算机资源(内存、磁盘、显示器等)。

内核以设备驱动程序提供与硬件的底层通信,它负责管理系统资源,包括调度要执行的程序、管理内存和电源,以及执行基本的I/O操作。

核心服务提供的支持比它上面层次提供的支持要更加“核心”。例如,在Mac OS X中主要实现对集合、网络、调试、文件管理、文件夹、内存管理、线程、时间和电源的管理。

应用程序服务层包含对打印和图形呈现的支持,包括Quartz、OpenGL和QuickTime。由此可见,Cocoa层直接位于应用程序层之下。正如图1-5中指出的那样,Cocoa包括Foundation和AppKit框架。Foundation框架提供的类用于处理集合、字符串、内存管理、文件系统和存档等。通过AppKit框架中提供的类,可以管理视图、窗口、文档等用户界面。在很多情况下,Foundation框架为底层核心服务层(主要用过程化的C语言编写)中定义的数据结构定义了一种面向对象的映射。

Cocoa框架用于Mac OS X桌面与笔记本电脑的应用程序开发,而Cocoa Touch框架用于iPhone与iTouch的应用程序开发。Cocoa和Cocoa Touch都有Foundation框架。然而在Cocoa Touch下,UIKit代替了AppKit框架,以便为很多相同类型的对象提供支持,比如窗口、视图、按钮和文本域等。另外,Cocoa Touch还提供使用加速器(它与GPS和Wi-Fi信号一样都能跟踪位置)的类和触摸式界面,并且去掉了不需要的类,比如支持打印的类。第2章搭建开发环境“工欲善其事,必先利其器”,这一说法在编程领域同样行得通。学习iOS网页设计也离不开好的开发工具的帮助。在本章的内容中,将详细讲解搭建iOS开发环境的基本知识,为读者后面知识的学习打下基础。2.1 开发前的准备——加入iOS开发团队

要想成为一名iOS开发人员,首先需要拥有一台Intel Macintosh台式机或笔记本电脑,并运行苹果的操作系统,如Snow Leopard或Lion。硬盘至少有6GB的可用空间,并且开发系统的屏幕越大越好。对于广大初学者来说,建议购买一台Mac机器,因为这样的开发效率会更高,更加能获得苹果公司的支持,也会避免一些因为不兼容而带来的调试错误。除此之外,还需要加入Apple开发人员计划(Developer Program)。

其实,无需使用任何花费即可加入到Apple开发人员计划,然后下载iOS SDK(软件开发包),编写iOS应用程序,并且在Apple iOS模拟器中运行它们。但是毕竟收费与免费之间还是存在着一定的区别——免费会受到较多的限制。例如,要想获得iOS和SDK的beta版,必须是付费成员;要将编写的应用程序加载到iPhone中或通过App Store来发布,也需支付会员费。

注意:本书的大多数应用程序都可以在免费工具提供的模拟器中正常运行。如果不确定成为付费成员是否合适,建议读者先不要急于成为付费成员,而是先成为免费成员,在编写一些示例应用程序并在模拟器中运行它们后,再升级为付费成员。因为模拟器不能精确地模拟移动传感器输入和GPS数据等应用,所以建议有条件的读者成为付费成员。如果读者准备选择付费模式,付费的开发人员计划有两种等级:标准计划(99美元)和企业计划(299美元),前者适用于要通过App Store发布其应用程序的开发人员,而后者适用于开发的应用程序要在内部(而不是通过App Store)发布的大型公司(雇员超过500)。无论是公司用户还是个人用户,都可以选择标准计划(99美元)。在将应用程序发布到App Store时,如果需要指出公司名,则在注册期间会给出标准的“个人”或“公司”计划选项。

无论是大型企业还是小型公司,无论是要成为免费成员还是要成为付费成员,都要先登录Apple的官方网站,并访问Apple iOS开发中心(http://www.apple.com.cn/developer/ios/index.html),注册成为会员,如图2-1所示。图2-1 Apple iOS的开发中心页面

如果通过使用iTunes、iCloud或其他Apple服务获得了Apple ID,可以将该ID用作开发账户。如果目前还没有Apple ID,或者需要新注册一个专门用于开发的新ID,可通过注册的方法创建一个新Apple ID。注册界面如图2-2所示。图2-2 注册Apple ID的界面

单击图2-2中的Create Apple ID按钮后,可以创建一个新的Apple ID账号。注册成功后,输入登录信息,登录成功后的界面如图2-3所示。图2-3 使用Apple ID账号登录后的界面

在成功登录Apple ID后,可以决定是加入付费的开发人员计划还是继续使用免费资源。要加入付费的开发人员计划,需要再次将浏览器指向iOS开发计划网页(http://developer.apple.com/programs/ios/),并单击Enroll Now超链接。阅读说明性文字后,单击Continue按钮按照提示加入。当系统提示时选中I'm Registered as a Developer with Apple and Would Like to Enroll in a Paid Apple Developer Program单选按钮,再单击Continue按钮,注册工具会引导用户申请加入付费的开发人员计划,并在个人和公司选项之间做出选择。2.2 安装Xcode

对于程序开发人员来说,好的开发工具能够达到事半功倍的效果,学习iOS开发也是如此。如果使用的是Lion或更高版本,下载iOS开发工具将会变得非常容易,只需通过简单的单击操作即可。具体方法是:在Dock中打开Apple Store,搜索Xcode并免费下载,然后等待Mac下载大型安装程序(约3GB)。如使用的不是Lion,可以从iOS开发中心(http://developer.apple.com/ios)下载最新版本的iOS开发工具。

注意:如果是免费成员,登录iOS开发中心后,很可能只会看到一个安装程序,提示用户安装Xcode和iOS SDK(最新版本的开发工具);如果是付费成员,会看到指向其他SDK版本(5.1、6.0等)的链接。本书中的示例都是基于7.0+系列iOS SDK的,因此如果看到该选项,请务必选择它。2.2.1 Xcode介绍

要开发iOS的应用程序,需要有一台安装了Xcode工具的Mac OS X电脑。Xcode是苹果提供的开发工具集,提供了项目管理、代码编辑、创建执行程序、代码调试、代码库管理和性能调节等功能。这个工具集的核心就是Xcode程序,提供了基本的源代码开发环境。

Xcode是一款强大的专业开发工具,可以简单快速地以用户熟悉的方式执行绝大多数常见的软件开发任务。相对于创建单一类型的应用程序所需要的能力而言,Xcode要强大得多,它的设计目的是使用户可以创建任何想象得到的软件产品类型。从Cocoa及Carbon应用程序,到内核扩展及Spotlight导入器等各种开发任务,Xcode都能完成。通过使用Xcode独具特色的用户界面,可以帮助我们以各种不同的方式来漫游工程中的代码,并且可以访问工具箱下面的大量功能,包括GCC、javac、jikes和GDB,这些功能都是制作软件产品需要的。Xcode是一个由专业人员设计、使用的工具。

由于能力出众,Xcode已经被Mac开发者社区广为采纳,而且随着苹果电脑向基于Intel的Macintosh迁移,转向Xcode变得比以往的任何时候更加重要。这是因为使用Xcode可以创建通用的二进制代码,这里所说的通用二进制代码是一种可以把PowerPC和Intel架构下的本地代码同时放到一个程序包的执行文件格式。事实上,对于还没有采用Xcode的开发人员,转向Xcode是将应用程序连编为通用二进制代码的第一个必要的步骤。2.2.2 iOS SDK介绍

iOS SDK是苹果公司提供的iPhone开发工具包,包括界面开发工具、集成开发工具、框架工具、编译器、分析工具、开发样本和模拟器,还包含了Xcode IDE和iPhone模拟器等一系列其他工具。苹果官方发布的iOS SDK则将这部分底层API进行了包装,用户的程序只能和苹果提供的iOS SDK中定义的类进行对话,通过这些类再和底层的API进行对话。

1. iOS SDK的优点和缺点

苹果官方的iOS SDK的优点如下所示。● 开发环境几乎和开发Mac软件一样,一样的Xcode、Interface

Builder、Instruments工具。● 最新版本的iOS SDK可以使用Interface Builder制作界面。● 环境搭建非常容易。● 需要进行代码签名,以避免恶意软件。

使用官方iOS SDK开发的软件需要经过苹果的认可,才能发布在苹果内置的App Store程序中。更多情况下,用户需要通过App Store或iTunes下载软件并将其安装到iPhone中。

苹果官方的iOS SDK的缺点如下所示。● CoreSurface(硬件显示设备)、Celestial(硬件音频设备)以及

其他几乎所有和硬件相关的处理无法实现。● 无法开发后台运行的程序。● 需要代码签名,才能够在真机中进行调试。● 只能在Leopard 10.5.2以上版本、Inter Mac机器中进行开发。

2. iOS程序框架

iOS程序有两类框架,一类是游戏框架,另一类是非游戏框架。接下来将要介绍的是非游戏框架,即基于iPhone用户界面标准控件的程序框架。

典型的iOS程序包含一个Window(窗口)和多个UIViewController(视图控制器),每个UIViewController可以管理多个UIView(在iPhone里看到、摸到的都是UIView,可能是UITableView、UIWebView、UIImageView等)。这些UIView之间的层次叠放、显示、隐藏、旋转、移动等操作由UIViewController进行管理,而UIViewController之间的切换通常需要通过UINavigationController、UITabBarController或UISplitViewController来进行。(1)UINavigationController

UINavigationController是用于构建分层应用程序的主要工具,它维护了一个视图控制器栈,任何类型的视图控制器都可以放入。UINavigationController在管理以及换入和换出多个内容视图方面,与UITabBarController(标签控制器)类似。两者的主要不同在于UINavigationController是使用堆栈的方式来管理UIViewController的,更适合处理分层数据以及用作顶部菜单。

当开发的程序具有层次化的工作流时,比较适合使用UINavigationController来管理UIViewController,即用户可以从上一层界面进入下一层界面,在下一层界面处理完以后又可以简单地返回到上一层界面。(2)UITabBarController

当应用程序需要分为几个相对比较独立的部分时,比较适合使用UITabBarController来组织用户界面。如图2-4所示,屏幕下方被划分成了两个部分。图2-4 UITabBarController的作用(3)UISplitViewController

UISplitViewController属于iPad特有的界面控件,适合用于“主-从”界面(Master view→Detail view)的情况,Detail view跟随Master view进行更新。如图2-5所示,屏幕左边(Master View)是主菜单,单击每个菜单,则屏幕右边(Detail View)就进行刷新,屏幕右边的界面内容又可以通过UINavigationController进行组织,以便用户进入Detail View进行更多操作。用户界面以这样的方式进行组织,使得程序内容清晰,非常有条理,是组织用户界面导航的很好方式。图2-5 UISplitViewController的作用2.2.3 下载并安装Xcode

对于初学者来说,只需安装Xcode即可完成大多数的iOS开发工作。使用Xcode不但可以开发iPhone程序,还可以开发iPad程序。Xcode是完全免费的,通过它提供的模拟器可以在电脑上测试编写的iOS程序。但如果要发布iOS程序或在真实机器上测试iOS程序,则需要花费99美元成为付费成员。

1. 下载Xcode(1)下载Xcode之前,先注册成为苹果的程序开发人员,并登录苹果开发页面主页https://developer.apple.com/,如图2-6所示。图2-6 苹果开发页面主页(2)进入Xcode的下载页面http://developer.apple.com/devcenter/ios/index.action,如图2-7所示。图2-7 Xcode的下载页面(3)单击图2-7下方的Download Xcode 4按钮,将打开一个信息提示页面,提示用户必须在iOS系统中使用,如图2-8所示。图2-8 提示信息界面(4)单击下方的Download now超链接,开始下载Xcode软件。

注意:可以使用App Store来获取Xcode,这种方式的优点是完全自动,操作方便。

2. 安装Xcode(1)下载完成后,打开下载的.dmg格式文件,然后双击Xcode文件,开始安装。(2)在弹出的对话框中单击Continue按钮,如图2-9所示。图2-9 单击Continue按钮(3)在弹出的欢迎界面中单击Agree按钮,如图2-10所示。图2-10 单击Agree按钮(4)在弹出的对话框中单击Install按钮,如图2-11所示。图2-11 单击Install按钮(5)在弹出的对话框中输入用户名和密码,然后单击“好”按钮,如图2-12所示。图2-12 单击“好”按钮(6)在弹出的新对话框中显示安装进度,进度完成后的界面如图2-13所示。图2-13 安装完成后的界面

注意:(1)很多初学者是学生用户,如果没有购买苹果机的预算,可以在Windows系统上采用虚拟机的方式安装OS X系统。(2)无论读者是有一定Xcode经验的开发者,还是刚刚开始学习的新用户,都需要对Xcode的用户界面及如何用Xcode组织软件工具有一些理解,这样才能真正高效地使用这个工具。这种理解可以大大加深用户对隐藏在Xcode背后的哲学认识,并帮助用户更好地使用Xcode。(3)建议读者将Xcode安装在OS X的Mac机器上,也就是装有苹果系统的苹果机上。通常来说,在苹果机器的OS X系统中已经内置了Xcode,默认目录是“/Developer/Applications”。2.3 创建一个Xcode项目并启动模拟器

Xcode是一款功能全面的应用程序,通过它可以轻松地输入、编译、调试并执行Objective-C(是开发iOS项目的最佳语言)程序。如果想在Mac上快速开发iOS应用程序,就必须学会使用这个强大工具。接下来将简单介绍使用Xcode创建项目,并启动iOS模拟器的方法。(1)Xcode位于Developer文件夹中的Applications子文件夹中,快捷图标如图2-14所示。图2-14 Xcode快捷图标(2)启动Xcode,在File菜单下选择New Project命令,如图2-15所示。图2-15 启动一个新项目(3)此时打开Choose a template for your new project界面,如图2-16所示。图2-16 Choose a template for your new project界面(4)在Choose a template for your new project界面的左侧显示了可供选择的模板类别,右侧显示了当前类别中的模板以及对当前选定模板的描述,这里选择iOS下的Application选项,然后在右侧选择Empty Application(空应用程序)模板,如图2-17所示,再单击Next按钮。图2-17 选择Empty Application选项(5)单击Next按钮后,在新界面中Xcode将要求用户指定产品名称和公司标识符。产品名称就是应用程序的名称,公司标识符则是创建应用程序的组织或个人的域名,但按相反的顺序排列。这两者组成的标识符可将用户编写的应用程序与其他iOS应用程序区分开来,如图2-18所示。图2-18 Xcode项目设置界面

例如,要创建一个名为Hello的应用程序,这是产品名,假设域名是teach.com,则公司标识符设置为com.teach。如果没有域名,开始开发时可使用默认标识符。(6)将产品名设置为Hello,公司标识符设置为com.teach,Class Prefix文本框可以根据自己的需要进行设置,如输入易记的XYZ。从Devices下拉列表中选择使用的设备(iPhone或iPad),默认值是Universal(通用),并确保选中了Use Automatic Reference Counting(使用自动引用计数)复选框,效果如图2-19所示。图2-19 指定产品名和公司标识符(7)单击Next按钮后,Xcode将要求选择项目的存储位置。切换到硬盘中合适的文件夹,确保没有选中Source Control复选框,再单击Create(创建)按钮,Xcode将创建一个名称与项目名相同的文件夹,并将所有相关联的模板文件都放到该文件夹中,如图2-20所示。图2-20 选择保存位置(8)在Xcode中创建或打开项目后,将出现一个类似于iTunes的窗口,可以使用它来完成所有的工作,如编写代码和设计应用程序界面等。如果是第一次接触Xcode,会发现有很多复杂的按钮、下拉列表和图标,其主要功能区域如图2-21所示。图2-21 Xcode界面(9)运行iOS模拟器的方法十分简单,只需单击左上角的按钮即可。iPhone模拟器的运行效果如图2-22所示。图2-22 iPhone模拟器的运行效果2.4 在iOS设备中测试网页

开发人员都很希望用HTML、CSS和JavaScript技术来构建适合iOS系统的应用程序。在实现这个功能之前,需要先搭建网页测试的环境。

搭建开发环境比较简单,只需要有一个网络空间即可。将制作好的网页上传到空间中,然后在iOS模拟器中上网浏览这个网页即可。可能有的读者本来就有自己的网站,有的没有。没有的读者也不要紧张,可以申请一个免费的空间。很多网站提供了免费空间服务,例如http://www.3v.cm/。申请免费空间的基本流程如下所示。(1)登录http://www.3v.cm/,如图2-23所示。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载