浙江大学软硬件协同设计实验室智能终端软件开发(智能手机软件开发)SmartphoneSoftwareDevelopment第0课陈天洲、楼学庆浙江大学软硬件协同设计实验室曹西204(周一上午3-4,2节理论课)曹西501(周一下午7-10,4节实验课)浙江大学软硬件协同设计实验室浙江大学计算机学院2课程信息任课教师陈天洲,tzchen@zju.edu.cn,tzchen@gmail.com楼学庆,xqlou@zju.edu.cn,hzlou@163.com助教曹满,caoman@zju.edu.cn课程网站课程FTP答疑时间每周五上午,曹西404浙江大学软硬件协同设计实验室浙江大学计算机学院3周次日期教学内容(限100字)实践教学环节(含作业)教学时数12010-9-6智能终端软硬件架构安装开发环境2-422010-9-13嵌入式linux终端基本UI编程2-432010-9-20MeeGO嵌入式平台控件实验2-442010-9-27Android智能手机与GoogleTV,chromeOS数据存储实验2-452010-10-11Iphone、ipad、ipod、appleTV开发环境网络通讯实验2-462010-10-18windowsMobile系列开发传感器硬件实验2-472010-10-25J2ME、Symbian、RIM简介widget2-482010-11-1智能终端软件平台应用框架,上网本、互联网电视、车载信息娱乐平台、多媒体电话软件平台应用框架服务与服务控制,位置服务,地图2-4浙江大学软硬件协同设计实验室浙江大学计算机学院4参考书目深入浅出GoogleAndroidE2ECloud工作室,中国大陆人民邮电出版社(2009-08出版);Android移动开发入门与进阶张利国、龚海平、王植萌人民邮电出版社(2009-09出版);GoogleAndroid程序设计指南(附光盘1张)杨文志电子工业出版社(2009-10出版);SymbianOS软件开发:应用C++开发智能手机应用程序入门,SteveBabin,,美、周忠良人民邮电出版社(2006-06出版);symbianOS架构手册:手机操作系统设计与演进BenMorris、陈广辉、谭利平、齐志峰人民邮电出版社(2008-07出版)。WindowsCE6.0开发者参考(原书第4版),(美国)柏林(Boling.D.),译者:何宗键,机械工业出版社(2009年03月)TheiPhoneDeveloper'sCookbook:BuildingApplicationswiththeiPhoneSDK,:(美国)(Sadun.E.)萨丹译者:漆振解巧云郎亚妹等,人民邮电出版社(2009年07月)浙江大学软硬件协同设计实验室浙江大学计算机学院5评分方法四个实验报告为分数平台基础实验1个开发平台搭建、开发基础实验、开发流程平台开发实验2个通讯与网络开发实验、人机交互软件设计、数据存储实验、传感器触摸屏等硬件实验综合应用开发实验1个利用智能终端平台丰富的硬件配置和编程接口,设计编写一款新颖的小游戏或是实用的小应用实验平台Gphone、Iphone、Ipad、windowsmobile手机、MID仿真环境浙江大学软硬件协同设计实验室智能终端软件开发(智能手机软件开发)SmartphoneSoftwareDevelopment第4课Iphone开发环境楼学庆2010-10-09浙江大学软硬件协同设计实验室曹西204(周一上午3-4,2节理论课)曹西501(周一下午7-10,4节实验课)浙江大学软硬件协同设计实验室浙江大学计算机学院7agenda1、概论2、iOS3、应用开发浙江大学软硬件协同设计实验室概论浙江大学软硬件协同设计实验室浙江大学计算机学院9概论当今的人们可以无处不在,无时无刻地享受互联网所带来的便利。承载这些便利的智能化手机平台也日趋成熟。在这个竞争激烈,硝烟四起的领域,iPhone一直以简单实用来又酷劲十足的特点来吸引消费者,从而占据一席之地。对比一下,Android作为一个年纪轻轻而前途未卜的新兴平台,却已经向世人展示了它非凡的潜力和巨大的生命力。他们共同的特点各自都有一个强大的软件商店,上面有来自全世界的开发者为iPhone和Android开发的数万种乃至十万种软件,甚至可以说iPhone和Android已经成为一个新兴的软件出版和流通平台。浙江大学软硬件协同设计实验室浙江大学计算机学院10苹果与Android互联网流量研究公司ComScore日前发布8月份全球智能手机市场分析报告称:苹果iOS市场占有率环比略有增长,达24.2%/0.4%Android则以19.6%/2.6%的市场占有率紧随其后,两者的差距正进一步缩小。RIM智能手机继续的37.6%/-2.3%微软Windows手机操作系统市场的份额环比下降10.8%/1.0%。大多数分析师认为,受苹果iOS和Android影响,RIM和微软的市场占有率将会一直呈下降趋势。浙江大学软硬件协同设计实验室浙江大学计算机学院11iPhoneOSiPhoneOS平台的建立使用了与创建MacOSX操作系统一样的技术,很多开发工具和技术都是来源于MacOSX的。但是尽管这些工具与MacOSX极为相似,但是iPhoneOS的应用程序开发者并不需要具备MacOSX的开发经验。iPhone软件开发工具包(SDK)将会为开发者提供其所需要的一切。iPhoneOS是一个在iPhone和iPod触屏设备上运行的操作系统。该操作系统在管理设备硬件的同时,也提供在移动电话上实现本机应用程序的基本技术。根据是安装在iPhone还是iPodTouch上,这个操作系统会相应地植入一些特定的服务应用程序,如电话,邮件,Safari浏览器等,来为用户提供标准的系统服务。浙江大学软硬件协同设计实验室浙江大学计算机学院12iPhoneOSiPhoneOS是由苹果公司为iPhone开发的操作系统。它主要是给iPhone和iPodtouch使用。就像其基于的MacOSX操作系统一样,它也是以Darwin为基础的。iPhoneOS的系统架构分为四个层次:核心操作系统层(theCoreOSlayer)核心服务层(theCoreServiceslayer)媒体层(theMedialayer)可轻触层(theCocoaTouchlayer)系统操作占用大概512MB的存储空间。浙江大学软硬件协同设计实验室浙江大学计算机学院13历史在2008年3月6日,iPhoneOS的软件开发工具包在苹果大会堂会议正式宣布。第一个Beta版本是iPhoneOS1.2b1(build5A147p)它在发布后立即就能够使用了,但是同时推出的AppStore所需要的固件更新则直到2008年7月11日才发布。对于iPhone用户,这个更新是免费的;然而,iPodtouch的用户则需要为更新付出9.99美元。发布日期版本编号更改2008年3月27日2.0b2Beta2首发,发布iPhoneOS2.0b2(build5A225c)2009年3月17日3.0Beta1发布iPhoneOS3.0的预览版及SDK3.0的测试版2010年4月8日(美国时间)4.0发布IPhoneOS4.0浙江大学软硬件协同设计实验室浙江大学计算机学院14用户界面iPhoneOS的用户界面的概念基础上是能够使用多点触控直接操作。控制方法包括:滑动,轻触开关及按键。与系统互动包括:滑动(swiping),轻按(tapping),挤压(pinching)及旋转(reversepinching)。通过其内置的重力加速器,可以令其旋转装置改变其y轴以令屏幕改变方向。屏幕的下方有一个home按键,底部则是dock,有四个用户最经常使用的程序的图标被固定在dock上。浙江大学软硬件协同设计实验室浙江大学计算机学院15用户界面2屏幕上方有一个状态栏能显示一些有关数据,如时间﹑电池电量和信号强度等。其余的屏幕用于显示当前的应用程序。启动iPhone应用程序的唯一方法就是在当前屏幕上点击该程序的图标,退出程序则是按下屏幕下方的home键。在第三方软件退出后,它直接就被关闭了,但在即将到来的iPhone3.0版本中,当第三方软件收到了新的信息时,苹果公司的服务器将把这些通知推送至iPhone或iPodTouch上(不管它是否正在运行中)。在iPhone上,许多应用程序之间都是有联系的,这样,不同的应用程序能够分享同一个信息。如当你收到了包括一个电话号码的短信息时,你可以选择是将这个电话号码存为联络人或是直接选择这个号码打一通电话。浙江大学软硬件协同设计实验室浙江大学计算机学院16iPhone浙江大学软硬件协同设计实验室浙江大学计算机学院17iPadWi-FiWi-Fi+3G浙江大学软硬件协同设计实验室浙江大学计算机学院18iPodTouch浙江大学软硬件协同设计实验室浙江大学计算机学院19支持的软件iPhone和iPodTouch使用基于ARM架构的中央处理器,而不是苹果的麦金塔计算机使用的x86处理器(就像以前的PowerPC或MC680x0),它使用由PowerVR视屏卡渲染的OpenGLES1.1.。MacOSX上的应用程序不能直接复制到iPhoneOS上运行。他们需要针对iPhoneOS的ARM重新编写。但就像下面所提到的,Safari浏览器支持“Web应用程序”。从iPhoneOS2.0开始,通过审核的第三方应用程序已经能够通过苹果的AppStore进行发布和下载了。浙江大学软硬件协同设计实验室浙江大学计算机学院20iPhoneOS自带的应用程序在2.2版本的固件中,iPhone的主界面包括包括以下自带的应用程序