logging in or signing up intro FunnyGuy Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 129 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: October 11, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript 手机应用开发-介绍部分: 手机应用开发-介绍部分 王旭主要内容 : 主要内容 介绍在移动电信网不断演化的背景下,以手机为平台的开发技术现状以及其发展前景。 大家一起来关注相关的新兴开发技术 从学习者的角度看本次课程的由来 : 从学习者的角度看本次课程的由来 各位参加学习的同学们很快就要进入复杂的社会了,对于立志于技术开发领域的人来说,能否把握正确的技术发展方向就成为一个重要的问题。根据我们的经验分析可以判断未来几年里,新兴的手机应用开发技术将成为技术发展的一个重要方向,如果大家能提前了解和掌握,将更加有把握在未来的职场上占据有利的位置。课程组成: 课程组成 手机应用开发技术简介 移动电信网技术简介 常见的手机应用 SYMBIAN操作系统介绍 手机开发环境说明 Wap应用开发简介手机应用开发技术 : 手机应用开发技术 简单介绍 跨越热门技术 开发难度 市场机遇 手机应用开发简单介绍 : 手机应用开发简单介绍 手机屏幕是现代人关注的三个屏幕中最具有私密性的一个,不同个体的人在不同的场景使用手机必然会产生大量的应用需求。 随着使用者剧增,手机终端数目飞速增长,手机应用开发技术也将逐步进入高速发展阶段,社会对相关的技术人才需求也会水涨船高,吸收进入的人才数量会越来越大。 跨越热门技术: 跨越热门技术 手机应用开发立足于计算机技术,又依赖于电信网技术,同时占据了两个技术中的热点网络互连技术和移动电信技术,可以说是集合了两个最热门技术的精华部分,故将来这个技术方向一定会产生迅猛的发展。 手机应用开发技术市场机遇 : 手机应用开发技术市场机遇 现阶段进行手机开发的相关公司数量已经开始逐步增长,但是绝对数量还无法和传统的软件公司相比较;随着大众逐步增加的手机应用软件需求,这个市场也将迅速增长 手机开发难度较高: 手机开发难度较高 手机应用开发的现状和Dos时代有一定的相似(开发繁琐,开发难度大,调试困难,软件兼容性差,应用开发和底层开发很难分离,甚至会和硬件设备有直接关联),不过随着大量高水平的开发商加入,高品质开发工具的不断涌现,开发工作的难度也在不断降低 dos时代注解:没有图形界面,内存经常不够,频繁死机,开发软件是编程高手们的游戏移动电信网演进: 移动电信网演进 1G->2G->3G->…..nG 受计算机网络发展影响1G->2G->3G->…..XG: 1G->2G->3G->…..XG 从1G演进到3G,从用户感受上看,网络带宽的不断提高带来崭新的个人使用体验 实际上,电信网发生了极大的变化, 模拟方式 - 数字方式 语音为主 - 数据为主 低带宽- 高带宽 1G-纯模拟网络,基本上全部是语音信息,少量窄带数据 2G-数字网络,大量语音信息,逐步提供部分数据业务 3G-规范化的纯IP数字网络,核心以数据方式运作,承载大量的语音业务和丰富的数据业务 4G-高带宽的IP网络为核心,承载良好用户体验的各种多媒体业务移动电信网演进受到计算机网络发展影响: 移动电信网演进受到计算机网络发展影响 受计算电信网的演进其实受到了计算机网络的很大影响,从1G演化到3G,移动电信网将演化为一个纯IP的数字网络,连固定电信网络和移动电信网络的界限都会逐步模糊。从另一个角度看,就是逐步自然走向三网合一的概念。 所谓三网合一是指电信网络,计算机网络,广播信息综合网的基础网络完全采用统一的基础架构常见的手机应用: 常见的手机应用 WAP业务开发 数字个人助理 系统功能增强 多媒体娱乐 游戏 企业级应用软件WAP应用开发: WAP应用开发 WAP应用是手机应用开发里边一个比较特殊的分支,他的运行环境是手机上的wap浏览器环境,和PC上的web浏览器工作模式非常类似,故开发思路和应用范围也相当类似。实际上,大量基于web的应用都被逐渐移植到手机这个平台上运转,数字个人助理: 数字个人助理 在欧洲和美洲,该类软件流行度相当高,如行程管理工具,提醒工具,时间管理工具,消费清单管理工具系统功能增强: 系统功能增强 可以充分发掘手机环境的处理能力,更方便的扩充手机功能,如文件管理增强工具,进程管理工具,电话记录增强管理工具等。多媒体娱乐: 多媒体娱乐 这一类软件的主旨就是丰富业余生活,随时随地享受娱乐体验,如各种音乐播放软件,各色的视频播放软件。游戏: 游戏 这个就不用细说了吧。企业级应用软件: 企业级应用软件 目前这个方面的应用还不是太多,但是由于企业消费者的强大消费能力,只要能提供满足企业业务需求的软件,未来的发展潜力非常巨大。目前已有的telnet、ftp、ping等工具都可以归入这个类别手机应用运行环境: 手机应用运行环境 常见应用环境名词 按照操作系统分类 按照开发语言分类 按照应用界面分类常见的手机应用环境名词: 常见的手机应用环境名词 我们经常在不同场合听到手机环境名词有Symbian、Java、Smartphone、Linux、PlamOS、PocketPC 、UIQ、S60、S80、S40、、、、、根据操作系统分类: 根据操作系统分类 Symbian系统 SmartPhone PocketPC PlamOS Linux根据操作系统分类1: 根据操作系统分类1 Symbian系统,该操作系统以占用资源小,对硬件要求低,第三方软件支持广泛等优势成为目前智能手机市场上应用最为广泛的产品,Symbian操作系统下主要使用S60,UIQ,S90这三种平台。对手机要求较低,缺点是开发人员少 <1>Series S60:S60操作平台具备了Symbian OS操作系统操作的简易性,支持KJAVA和C++开发的针对单手使用的设计,支持的屏幕分辨率为176*208象素。不过处理器频率和系统内存较小。Series60界面是拥有最多第三方软件(游戏)的界面,所以自然成为Symbian操作系统的智能手机所采用得最频繁的Series。是目前Symbian系统中使用最广泛的版本。主要支持的手机以诺基亚7650 7610 6260等最为典型。 <2>UIQ Series:UIQ Series操作平台的特性主要表现在它的多媒体和功能全面的特性。UIQ界面可支持手写操作,不过切换和关闭任务比较麻烦。UIQ Series是Symbian OS 的系统架构下,专门为高端多媒体手机而设计,使用起来非常类似 PDA 操作,适用人群主要定位在高端商务用户。主要应用有索爱P系列以及诺基亚6708及BENQ P30等。 <3>Series S90:Series90是Symbian平台上最年轻的界面,改手持触摸为操控模式。分辨率高达640*320像素。目前支持Series90的只有诺基亚7700(未投产上市)和7710两款手机,从Series90的硬件参数上来看,它才应该是手机游戏、娱乐的最佳平台,但因为采用Series90界面的手机型号太少,相比较其他系统而言,第三方软件的支持力度也相对较小。所以流行起来尚需一定时日。根据操作系统分类2: 根据操作系统分类2 Pocket PC Phone系统:要了解该系统,首先我们要说明一下什么是Pocket PC。Pocket PC是一种手持设备,可帮助使用者存储并检索电子邮件、联系人和约会信息,播放多媒体文件,玩赏电子游戏,借助MSN Messenger交换文本消息,浏览Web内容等,使用者将能够与台式机实现信息交换和同步。虽然Pocket PC Phone的几何尺寸与Pocket PC完全相同,但却具备通过无线运营商实现内建无线连接能力。Phone Edition设备包含了标准Pocket PC的全部功能特性。这种设备还允许使用者针对Internet和企业网络系统实施无线访问调用,并以远远超过拨号连接的传输速率接发电子邮件。主要适用机型有BENQ的P50以及多普达696 818 828等机型。 Smartphone 系统:Smartphone同样是基于微软开发的手机操作系统平台,注重移动互联和娱乐功能。没有触控笔和触摸屏,体现单手操控的理念,全以数字键盘代替。因为同是微软公司门下的产品,操作界面和WINDOWS非常相似,对于用户来说可能更熟悉更容易上手。缺点是授权费最高,对手机要求也高。根据操作系统分类3: 根据操作系统分类3 Linux系统:Linux凭源代码开放、软件授权费用低、应用开发人才资源丰富等优点,便于开发个人和行业应用。它丰富的应用是智能手机的优越性体现和关键卖点所在。对手机要求最低,缺点也很明显,厂家各自为营,手机之间的互通性差 PalmOS系统:PalmOS是Palm公司的是一种32位的嵌入式操作系统,操作界面采用触控式,使用触控笔便可进行。Palm的应用程序丰富多样、最明显的优势,它是一套专门为掌上电脑编写的操作系统,这款操作系统下的手机的娱乐功能相对弱一些,不支持MP3,不支持录音功能等。 按照开发语言分类: 按照开发语言分类 从开发语言分:支持C/C++ 、Java 、 Perl/Opl等脚本语言的各种运行环境按照应用界面分类: 按照应用界面分类 传统的字符界面和简单图形界面 Windows家族风格界面 S40系列界面 S60系列界面 S80系列界面 S90系列界面 UIQ系列界面按照应用界面分类2: 按照应用界面分类2 Windows Mobile操作系统 Pocket PC Phone系统:要了解该系统,首先我们要说明一下什么是Pocket PC。Pocket PC是一种手持设备,可帮助使用者存储并检索电子邮件、联系人和约会信息,播放多媒体文件,玩赏电子游戏,借助MSN Messenger交换文本消息,浏览Web内容等,使用者将能够与台式机实现信息交换和同步。虽然Pocket PC Phone的几何尺寸与Pocket PC完全相同,但却具备通过无线运营商实现内建无线连接能力。Phone Edition设备包含了标准Pocket PC的全部功能特性。这种设备还允许使用者针对Internet和企业网络系统实施无线访问调用,并以远远超过拨号连接的传输速率接发电子邮件。主要适用机型有BENQ的P50以及多普达696 818 828等机型。 Smartphone 系统:Smartphone同样是基于微软开发的手机操作系统平台,注重移动互联和娱乐功能。没有触控笔和触摸屏,体现单手操控的理念,全以数字键盘代替。因为同是微软公司门下的产品,操作界面和WINDOWS非常相似,对于用户来说可能更熟悉更容易上手。缺点是授权费最高,对手机要求也高。。按照应用界面分类3: 按照应用界面分类3 Symbian操作系统下主要使用S60,UIQ,S90这三种平台。对手机要求较低,缺点是开发人员少 <1>Series S60:S60操作平台具备了Symbian OS操作系统操作的简易性,支持KJAVA和C++开发的针对单手使用的设计,支持的屏幕分辨率为176*208象素。不过处理器频率和系统内存较小。Series60界面是拥有最多第三方软件(游戏)的界面,所以自然成为Symbian操作系统的智能手机所采用得最频繁的Series。是目前Symbian系统中使用最广泛的版本。主要支持的手机以诺基亚7650 7610 6260等最为典型。 <2>UIQ Series:UIQ Series操作平台的特性主要表现在它的多媒体和功能全面的特性。UIQ界面可支持手写操作,不过切换和关闭任务比较麻烦。UIQ Series是Symbian OS 的系统架构下,专门为高端多媒体手机而设计,使用起来非常类似 PDA 操作,适用人群主要定位在高端商务用户。主要应用有索爱P系列以及诺基亚6708及BENQ P30等。 <3>Series S90:Series90是Symbian平台上最年轻的界面,改手持触摸为操控模式。分辨率高达640*320像素。目前支持Series90的只有诺基亚7700(未投产上市)和7710两款手机,从Series90的硬件参数上来看,它才应该是手机游戏、娱乐的最佳平台,但因为采用Series90界面的手机型号太少,相比较其他系统而言,第三方软件的支持力度也相对较小。所以流行起来尚需一定时日。手机 操作系统介绍: 手机 操作系统介绍 手机也需要操作系统吗? 有哪些手机操作系统 手机操作系统与传统操作系统的差别手机也需要操作系统吗?: 手机也需要操作系统吗? 中央处理器性能越来越高 存储能力越来越高 功能越来越丰富 手机使用者对新型手机和新型应用的需求逐步扩大 手机制造商快速占领市场的需求 降低手机应用软件的开发难度和缩短应用软件开发周期 手机 操作系统介绍: 手机 操作系统介绍 Microsoft公司的操作系统 Symbian操作系统 Plamos Linux手机 操作系统介绍2: 手机 操作系统介绍2 我们现在正在进行的开发任务首先是基于Sbmbina S60的软件,以后会陆续增加其他的系统平台开发。手机操作系统与传统操作系统: 手机操作系统与传统操作系统 需要处理的系统特点有很大差异,在后边介绍Symbian操作系统的时候一起介绍 Symbian OS介绍: Symbian OS介绍 Symbian的来源 市场份额 OS特点 应用架构 扩展能力 SDK介绍 开发工具 Symbian的来源: Symbian的来源 Symbian的来源2: Symbian的来源2 Symbian操作系统是由Symbian公司提供的,它是一家由各主要无线通信技术公司持股的软件许可证授权公司(股份分配情况见图),- Symbian OS是为支持数据分组传输的手机提供的一个高级、开放式、标准化的操作系统 Symbian公司前身是Psion公司,于1980年创立,为了强化竞争力1998年6月组建了symbian公司,该公司号称在移动计算设备和手机软件技术开发领域拥有近二十年的丰富经验,目前是由爱立信 松下,摩托罗拉、诺基亚、Psion、西门子和索尼爱立信等公司共同持股。 目前,NOKIA公司在Symbian公司占有绝对多数的份额,因此,大家都说Symbian系统成为了NOKIA的附属物,但是由于这个公司在手机销售领域一直处于领先的位置,绝对占有量还是相当的大。市场份额: 市场份额 Symbian操作系统许可证持有者的手机产量占有全球市场的75%以上 微软的SmartPhone系统凭借集成自PC界面的友好性和易用性,占据越来越多的市场。 Linux由于其完全的开放性,部分厂家也逐步加强该系统上的开发力度 未来,将是这三个系统共同占领手机市场的局面。Symbian OS 特点: Symbian OS 特点 微内核的多任务多线程移动操作系统 系统是运行在电池驱动的设备上的 完全是面向对象的 基于组件的设计 被设计成确保用户的数据不会丢失 简单的UI系统 支持所有主要的无线通信标准Symbian OS 特点2: Symbian OS 特点2 操作系统是运行在ROM上的微内核,实时的多任务多线程移动操作系统(保证了应用程序和高级协议堆栈的同时运行,更方便推出更有吸引力的新式服务从而巩固和扩大客户群 symbian是微核操作系统,所谓“微核”,是因为操作系统只有很小的一部分是运行在系统最高优先级的,其他的功能模块都是以Client-Server的方式提供服务,这样可以降低对硬件资源的要求以及灵活增加功能模块。) 系统是运行在电池驱动的设备上的 (意味着为了满足有限的电力支撑,不能太耗电)、完全是面向对象的 (适应广泛的编程高手进行应用开发) 基于组件的设计 (采用合理的设计方法确保各个功能模块可以独立运转和灵活拼接)、 被设计成确保用户的数据不会丢失 (意味着手机用户不会因为停电,断网等意外丢失用户信息)、 使用简单的UI系统 (就是方便,易用的操作方法)、 支持所有主要的无线通信标准(提供强大的业务扩展能力) Symbian应用架构: Symbian应用架构 Symbian应用架构2: Symbian应用架构2 Symbian系统的内部结构可以分为应用层,系统层,核心层以及驱动程序部分 应用层:Shell, OPL, 及其他应用程序 =================================================== 系统层:Dialogs, Menu, Toolbar, Icons, Resources, JavaVM, Grid, Rich Text, Edit Control, List Control, Application Framework, Jave Class Libraries. =================================================== 服务层:Window Server, Process Server, Socket Server, Sound Server, Wireless Server, Database Server, File Server, Alarm Server, Comms Server, 以及无线协议 =================================================== 内核:euser.dll, ekern.exe, 服务控制(supervisor server), HAL(设备抽象层) =================================================== 驱动程序部分:包括音频驱动,显示驱动,MMC驱动,键盘驱动,串并口驱动,DSP驱动,时钟控制器驱动等等 扩展能力: 扩展能力 基于微内核的操作系统 自带大量应用资源 支持各种通信方式和协议 支持多种开发语言 获得多个开发集成环境的支持扩展能力2: 扩展能力2 基于微内核的操作系统,可以根据需要选择合适的外部服务模块组成产品 自带大量应用资源,如信息服务,数据同步,多媒体管理,适应多种应用界面 支持各种通信方式和协议,如蓝牙,红外,Gprs 支持多种开发语言 C java perl opl 获得多个开发集成环境的支持 Symbian SDK介绍: Symbian SDK介绍 S60,S90,UIQ,其他,S40 V5 V6.1 V7.0s V8.0 V9.1Symbian SDK介绍2: Symbian SDK介绍2 Symbian手机应用环境是分为内核和界面两块分别发展的,SDK自己有一个版本号,这个版本号一般代表了一个固定的内核版本和一个固定的界面系统的组合 SDK按照界面系统分类 S60,S80,S90,UIQ,其他,(S40 nokia自有的操作系统,不属于symbian的范围) 按照OS版本分:6.0,6.1,7.0,7,0s,8.0,8.1a,9.0,9.1 ...... 举例 S60SDK2.1版 意味这个SDK使用的界面系统是S60,内核版本是Sybmianos7.0s Symbian开发环境: Symbian开发环境 C/C++开发 Java开发 Perl OPL C/C++集成开发工具: C/C++集成开发工具 VC6 VS2003 Codewarrior C++Builder X mobile C++Builder6 mobile Eclipse + carbideC/C++集成开发工具2: C/C++集成开发工具2 VC:使用者数量大,熟悉的人多,文档也多,不过受限于微软,估计以后将不能继续使用 C++builderX:易用性强,提供商borland近况不佳,前途受限,使用了基于jvm的界面技术,操作速度偏慢 Codewarrior:由独立于操作系统的开发商提供,受到广泛支持,不易上手,熟手少(有问题大多要自己研究,哈哈), gcc:SDK自带命令行工具,无需单独安装,操作比较繁 使用VC进行开发的步骤: 使用VC进行开发的步骤 选定手机设备 安装合适的SDK 安装VC2003+carbide.vs 新建项目 选择合适的SDK配置 编译连接通过运行使用VC进行开发的步骤: 使用VC进行开发的步骤 1.选定开发的目标设备(手机型号): 不同的设备需要使用不同的SDK,还会影响开发工具的选择 2.选择开发环境 3.下载安装SDK软件 4.了解SDK目录 \ Epoc32\ Epoc32Ex\ Series60Doc\ Series60Ex\ Series60Tools\ Shared\ Epoc32\ 最好不要修改默认的安装目录,否则,以后开发过程会有不少麻烦 安装目录不能带有空格 Epoc32\ 目录最重要,他包括了所有的系统头文件,库文件 Epoc32Ex 目录包含了一些基础例程代码,是我们学习的最好起点。 Series60Ex 包含了一些比较复杂的例程应用代码,可供大家进一步学习参考 Series60Doc 包含所有系统附带的文档是我们学习SDK的最重要的文件 Series60Tools 包含各种附带的外部实用工具,如框架程序产生向导,网络设定工具等 5.学习文档 - sdk自带的文档最为重要,另外互联网上有丰富的资源:如nokia的论坛,newlc论坛 和symbian公司的开发者网站 6.步骤: 导入或者新建项目,例如编译helloworld程序 命令行编译 PC开发环境编译运行 目标设备编译运行 需要注意:手机开发的变化相当大,网络上的资料不一定是最新的,开发过程碰到的问题解决方法不是一定可以完全照搬。 文件类型说明: 文件类型说明 Bld.inf *.app *.mpp *.pkg *.sis *.hrh *.rss 文件类型说明2: 文件类型说明2 bld.inf 组件定义文件,包含了项目定义文件的列表,多数情况下只有一个文件。还可以包含更多与生成相关的信息 *.app GUI模式的可执行程序 *.mmp 项目定义文件 *.pkg 安装包描述文件 *.sis 安装包 *.hrh 被设计用来包含在C++程序和资源脚本中,C++程序需要它们来标示被处理的命令,而资源脚本需要它们来指示发出的命令。它包含应用程序命令的枚举常量 *.rss 用来定义资源,比如字符串R_HELLO_TEXT_ITEM1,枚举变量EHelloCmd1,UI的菜单以及快捷键等 SDK工具编译链接过程: SDK工具编译链接过程IDE编译链接说明: IDE编译链接说明 总结: 总结 手机终端将在近几年继续迅猛增加,手机应用软件的数量将随之进入爆涨阶段,因此,将产生对手机应用开发技术的强烈需求。 其他信息: 其他信息 课程:手机应用开发 联系方法: 邮箱: wangxu@moabc.com MSN: xuwag@hotmail.comWAP应用开发介绍: WAP应用开发介绍 WAP应用状况介绍 WAP基本概念 WAP编程模型 WAP协议 WAP与WEB的差别国内WAP应用现状: 国内WAP应用现状 目前国内已经有超过1亿的WAP用户 由梦网以及独立WAP门户 目前有近一万家独立WAP门户 全国WAP用户分布情况WAP基本概念: WAP基本概念 WAP全称: Wireless Application Protocol WAP规范由WAP Forum制定 定位:集成三个高速发展的网络技术:无线数据、电话以及互联网WAP编程模型: WAP编程模型WAP协议的版本: WAP协议的版本 WAP 1.2 页面规范:WML WAP 2.0 页面规范:XHTML-mobile页面的源码: 页面的源码 <!– WML <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <head> <meta http-equiv="Content-Type" content="text/vnd.wap.wml;charset=UTF-8"/> </head> <card id="top" title=“WAP"> <p>Welcome to WAP 1.x!</p> </card> </wml> <!– XHTML-mobile <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd" > <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>XHTML-mobile</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <link rel="stylesheet" href="xhtml.css" type="text/css"/> </head> <body> <div id=“main”>Welcome to WAP 2.0</div> </body> </html>用什么来开发WAP页面: 用什么来开发WAP页面 JSP ASP PHP ……进行WAP开发和WEB开发的区别: 进行WAP开发和WEB开发的区别 规范 WML vs HTML XHTML-mobile vs HTML 考虑带宽影响 WAP使用者的网络速度比较慢 考虑浏览器 功能弱 You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
intro FunnyGuy Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 129 Category: Entertainment License: All Rights Reserved Like it (0) Dislike it (0) Added: October 11, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript 手机应用开发-介绍部分: 手机应用开发-介绍部分 王旭主要内容 : 主要内容 介绍在移动电信网不断演化的背景下,以手机为平台的开发技术现状以及其发展前景。 大家一起来关注相关的新兴开发技术 从学习者的角度看本次课程的由来 : 从学习者的角度看本次课程的由来 各位参加学习的同学们很快就要进入复杂的社会了,对于立志于技术开发领域的人来说,能否把握正确的技术发展方向就成为一个重要的问题。根据我们的经验分析可以判断未来几年里,新兴的手机应用开发技术将成为技术发展的一个重要方向,如果大家能提前了解和掌握,将更加有把握在未来的职场上占据有利的位置。课程组成: 课程组成 手机应用开发技术简介 移动电信网技术简介 常见的手机应用 SYMBIAN操作系统介绍 手机开发环境说明 Wap应用开发简介手机应用开发技术 : 手机应用开发技术 简单介绍 跨越热门技术 开发难度 市场机遇 手机应用开发简单介绍 : 手机应用开发简单介绍 手机屏幕是现代人关注的三个屏幕中最具有私密性的一个,不同个体的人在不同的场景使用手机必然会产生大量的应用需求。 随着使用者剧增,手机终端数目飞速增长,手机应用开发技术也将逐步进入高速发展阶段,社会对相关的技术人才需求也会水涨船高,吸收进入的人才数量会越来越大。 跨越热门技术: 跨越热门技术 手机应用开发立足于计算机技术,又依赖于电信网技术,同时占据了两个技术中的热点网络互连技术和移动电信技术,可以说是集合了两个最热门技术的精华部分,故将来这个技术方向一定会产生迅猛的发展。 手机应用开发技术市场机遇 : 手机应用开发技术市场机遇 现阶段进行手机开发的相关公司数量已经开始逐步增长,但是绝对数量还无法和传统的软件公司相比较;随着大众逐步增加的手机应用软件需求,这个市场也将迅速增长 手机开发难度较高: 手机开发难度较高 手机应用开发的现状和Dos时代有一定的相似(开发繁琐,开发难度大,调试困难,软件兼容性差,应用开发和底层开发很难分离,甚至会和硬件设备有直接关联),不过随着大量高水平的开发商加入,高品质开发工具的不断涌现,开发工作的难度也在不断降低 dos时代注解:没有图形界面,内存经常不够,频繁死机,开发软件是编程高手们的游戏移动电信网演进: 移动电信网演进 1G->2G->3G->…..nG 受计算机网络发展影响1G->2G->3G->…..XG: 1G->2G->3G->…..XG 从1G演进到3G,从用户感受上看,网络带宽的不断提高带来崭新的个人使用体验 实际上,电信网发生了极大的变化, 模拟方式 - 数字方式 语音为主 - 数据为主 低带宽- 高带宽 1G-纯模拟网络,基本上全部是语音信息,少量窄带数据 2G-数字网络,大量语音信息,逐步提供部分数据业务 3G-规范化的纯IP数字网络,核心以数据方式运作,承载大量的语音业务和丰富的数据业务 4G-高带宽的IP网络为核心,承载良好用户体验的各种多媒体业务移动电信网演进受到计算机网络发展影响: 移动电信网演进受到计算机网络发展影响 受计算电信网的演进其实受到了计算机网络的很大影响,从1G演化到3G,移动电信网将演化为一个纯IP的数字网络,连固定电信网络和移动电信网络的界限都会逐步模糊。从另一个角度看,就是逐步自然走向三网合一的概念。 所谓三网合一是指电信网络,计算机网络,广播信息综合网的基础网络完全采用统一的基础架构常见的手机应用: 常见的手机应用 WAP业务开发 数字个人助理 系统功能增强 多媒体娱乐 游戏 企业级应用软件WAP应用开发: WAP应用开发 WAP应用是手机应用开发里边一个比较特殊的分支,他的运行环境是手机上的wap浏览器环境,和PC上的web浏览器工作模式非常类似,故开发思路和应用范围也相当类似。实际上,大量基于web的应用都被逐渐移植到手机这个平台上运转,数字个人助理: 数字个人助理 在欧洲和美洲,该类软件流行度相当高,如行程管理工具,提醒工具,时间管理工具,消费清单管理工具系统功能增强: 系统功能增强 可以充分发掘手机环境的处理能力,更方便的扩充手机功能,如文件管理增强工具,进程管理工具,电话记录增强管理工具等。多媒体娱乐: 多媒体娱乐 这一类软件的主旨就是丰富业余生活,随时随地享受娱乐体验,如各种音乐播放软件,各色的视频播放软件。游戏: 游戏 这个就不用细说了吧。企业级应用软件: 企业级应用软件 目前这个方面的应用还不是太多,但是由于企业消费者的强大消费能力,只要能提供满足企业业务需求的软件,未来的发展潜力非常巨大。目前已有的telnet、ftp、ping等工具都可以归入这个类别手机应用运行环境: 手机应用运行环境 常见应用环境名词 按照操作系统分类 按照开发语言分类 按照应用界面分类常见的手机应用环境名词: 常见的手机应用环境名词 我们经常在不同场合听到手机环境名词有Symbian、Java、Smartphone、Linux、PlamOS、PocketPC 、UIQ、S60、S80、S40、、、、、根据操作系统分类: 根据操作系统分类 Symbian系统 SmartPhone PocketPC PlamOS Linux根据操作系统分类1: 根据操作系统分类1 Symbian系统,该操作系统以占用资源小,对硬件要求低,第三方软件支持广泛等优势成为目前智能手机市场上应用最为广泛的产品,Symbian操作系统下主要使用S60,UIQ,S90这三种平台。对手机要求较低,缺点是开发人员少 <1>Series S60:S60操作平台具备了Symbian OS操作系统操作的简易性,支持KJAVA和C++开发的针对单手使用的设计,支持的屏幕分辨率为176*208象素。不过处理器频率和系统内存较小。Series60界面是拥有最多第三方软件(游戏)的界面,所以自然成为Symbian操作系统的智能手机所采用得最频繁的Series。是目前Symbian系统中使用最广泛的版本。主要支持的手机以诺基亚7650 7610 6260等最为典型。 <2>UIQ Series:UIQ Series操作平台的特性主要表现在它的多媒体和功能全面的特性。UIQ界面可支持手写操作,不过切换和关闭任务比较麻烦。UIQ Series是Symbian OS 的系统架构下,专门为高端多媒体手机而设计,使用起来非常类似 PDA 操作,适用人群主要定位在高端商务用户。主要应用有索爱P系列以及诺基亚6708及BENQ P30等。 <3>Series S90:Series90是Symbian平台上最年轻的界面,改手持触摸为操控模式。分辨率高达640*320像素。目前支持Series90的只有诺基亚7700(未投产上市)和7710两款手机,从Series90的硬件参数上来看,它才应该是手机游戏、娱乐的最佳平台,但因为采用Series90界面的手机型号太少,相比较其他系统而言,第三方软件的支持力度也相对较小。所以流行起来尚需一定时日。根据操作系统分类2: 根据操作系统分类2 Pocket PC Phone系统:要了解该系统,首先我们要说明一下什么是Pocket PC。Pocket PC是一种手持设备,可帮助使用者存储并检索电子邮件、联系人和约会信息,播放多媒体文件,玩赏电子游戏,借助MSN Messenger交换文本消息,浏览Web内容等,使用者将能够与台式机实现信息交换和同步。虽然Pocket PC Phone的几何尺寸与Pocket PC完全相同,但却具备通过无线运营商实现内建无线连接能力。Phone Edition设备包含了标准Pocket PC的全部功能特性。这种设备还允许使用者针对Internet和企业网络系统实施无线访问调用,并以远远超过拨号连接的传输速率接发电子邮件。主要适用机型有BENQ的P50以及多普达696 818 828等机型。 Smartphone 系统:Smartphone同样是基于微软开发的手机操作系统平台,注重移动互联和娱乐功能。没有触控笔和触摸屏,体现单手操控的理念,全以数字键盘代替。因为同是微软公司门下的产品,操作界面和WINDOWS非常相似,对于用户来说可能更熟悉更容易上手。缺点是授权费最高,对手机要求也高。根据操作系统分类3: 根据操作系统分类3 Linux系统:Linux凭源代码开放、软件授权费用低、应用开发人才资源丰富等优点,便于开发个人和行业应用。它丰富的应用是智能手机的优越性体现和关键卖点所在。对手机要求最低,缺点也很明显,厂家各自为营,手机之间的互通性差 PalmOS系统:PalmOS是Palm公司的是一种32位的嵌入式操作系统,操作界面采用触控式,使用触控笔便可进行。Palm的应用程序丰富多样、最明显的优势,它是一套专门为掌上电脑编写的操作系统,这款操作系统下的手机的娱乐功能相对弱一些,不支持MP3,不支持录音功能等。 按照开发语言分类: 按照开发语言分类 从开发语言分:支持C/C++ 、Java 、 Perl/Opl等脚本语言的各种运行环境按照应用界面分类: 按照应用界面分类 传统的字符界面和简单图形界面 Windows家族风格界面 S40系列界面 S60系列界面 S80系列界面 S90系列界面 UIQ系列界面按照应用界面分类2: 按照应用界面分类2 Windows Mobile操作系统 Pocket PC Phone系统:要了解该系统,首先我们要说明一下什么是Pocket PC。Pocket PC是一种手持设备,可帮助使用者存储并检索电子邮件、联系人和约会信息,播放多媒体文件,玩赏电子游戏,借助MSN Messenger交换文本消息,浏览Web内容等,使用者将能够与台式机实现信息交换和同步。虽然Pocket PC Phone的几何尺寸与Pocket PC完全相同,但却具备通过无线运营商实现内建无线连接能力。Phone Edition设备包含了标准Pocket PC的全部功能特性。这种设备还允许使用者针对Internet和企业网络系统实施无线访问调用,并以远远超过拨号连接的传输速率接发电子邮件。主要适用机型有BENQ的P50以及多普达696 818 828等机型。 Smartphone 系统:Smartphone同样是基于微软开发的手机操作系统平台,注重移动互联和娱乐功能。没有触控笔和触摸屏,体现单手操控的理念,全以数字键盘代替。因为同是微软公司门下的产品,操作界面和WINDOWS非常相似,对于用户来说可能更熟悉更容易上手。缺点是授权费最高,对手机要求也高。。按照应用界面分类3: 按照应用界面分类3 Symbian操作系统下主要使用S60,UIQ,S90这三种平台。对手机要求较低,缺点是开发人员少 <1>Series S60:S60操作平台具备了Symbian OS操作系统操作的简易性,支持KJAVA和C++开发的针对单手使用的设计,支持的屏幕分辨率为176*208象素。不过处理器频率和系统内存较小。Series60界面是拥有最多第三方软件(游戏)的界面,所以自然成为Symbian操作系统的智能手机所采用得最频繁的Series。是目前Symbian系统中使用最广泛的版本。主要支持的手机以诺基亚7650 7610 6260等最为典型。 <2>UIQ Series:UIQ Series操作平台的特性主要表现在它的多媒体和功能全面的特性。UIQ界面可支持手写操作,不过切换和关闭任务比较麻烦。UIQ Series是Symbian OS 的系统架构下,专门为高端多媒体手机而设计,使用起来非常类似 PDA 操作,适用人群主要定位在高端商务用户。主要应用有索爱P系列以及诺基亚6708及BENQ P30等。 <3>Series S90:Series90是Symbian平台上最年轻的界面,改手持触摸为操控模式。分辨率高达640*320像素。目前支持Series90的只有诺基亚7700(未投产上市)和7710两款手机,从Series90的硬件参数上来看,它才应该是手机游戏、娱乐的最佳平台,但因为采用Series90界面的手机型号太少,相比较其他系统而言,第三方软件的支持力度也相对较小。所以流行起来尚需一定时日。手机 操作系统介绍: 手机 操作系统介绍 手机也需要操作系统吗? 有哪些手机操作系统 手机操作系统与传统操作系统的差别手机也需要操作系统吗?: 手机也需要操作系统吗? 中央处理器性能越来越高 存储能力越来越高 功能越来越丰富 手机使用者对新型手机和新型应用的需求逐步扩大 手机制造商快速占领市场的需求 降低手机应用软件的开发难度和缩短应用软件开发周期 手机 操作系统介绍: 手机 操作系统介绍 Microsoft公司的操作系统 Symbian操作系统 Plamos Linux手机 操作系统介绍2: 手机 操作系统介绍2 我们现在正在进行的开发任务首先是基于Sbmbina S60的软件,以后会陆续增加其他的系统平台开发。手机操作系统与传统操作系统: 手机操作系统与传统操作系统 需要处理的系统特点有很大差异,在后边介绍Symbian操作系统的时候一起介绍 Symbian OS介绍: Symbian OS介绍 Symbian的来源 市场份额 OS特点 应用架构 扩展能力 SDK介绍 开发工具 Symbian的来源: Symbian的来源 Symbian的来源2: Symbian的来源2 Symbian操作系统是由Symbian公司提供的,它是一家由各主要无线通信技术公司持股的软件许可证授权公司(股份分配情况见图),- Symbian OS是为支持数据分组传输的手机提供的一个高级、开放式、标准化的操作系统 Symbian公司前身是Psion公司,于1980年创立,为了强化竞争力1998年6月组建了symbian公司,该公司号称在移动计算设备和手机软件技术开发领域拥有近二十年的丰富经验,目前是由爱立信 松下,摩托罗拉、诺基亚、Psion、西门子和索尼爱立信等公司共同持股。 目前,NOKIA公司在Symbian公司占有绝对多数的份额,因此,大家都说Symbian系统成为了NOKIA的附属物,但是由于这个公司在手机销售领域一直处于领先的位置,绝对占有量还是相当的大。市场份额: 市场份额 Symbian操作系统许可证持有者的手机产量占有全球市场的75%以上 微软的SmartPhone系统凭借集成自PC界面的友好性和易用性,占据越来越多的市场。 Linux由于其完全的开放性,部分厂家也逐步加强该系统上的开发力度 未来,将是这三个系统共同占领手机市场的局面。Symbian OS 特点: Symbian OS 特点 微内核的多任务多线程移动操作系统 系统是运行在电池驱动的设备上的 完全是面向对象的 基于组件的设计 被设计成确保用户的数据不会丢失 简单的UI系统 支持所有主要的无线通信标准Symbian OS 特点2: Symbian OS 特点2 操作系统是运行在ROM上的微内核,实时的多任务多线程移动操作系统(保证了应用程序和高级协议堆栈的同时运行,更方便推出更有吸引力的新式服务从而巩固和扩大客户群 symbian是微核操作系统,所谓“微核”,是因为操作系统只有很小的一部分是运行在系统最高优先级的,其他的功能模块都是以Client-Server的方式提供服务,这样可以降低对硬件资源的要求以及灵活增加功能模块。) 系统是运行在电池驱动的设备上的 (意味着为了满足有限的电力支撑,不能太耗电)、完全是面向对象的 (适应广泛的编程高手进行应用开发) 基于组件的设计 (采用合理的设计方法确保各个功能模块可以独立运转和灵活拼接)、 被设计成确保用户的数据不会丢失 (意味着手机用户不会因为停电,断网等意外丢失用户信息)、 使用简单的UI系统 (就是方便,易用的操作方法)、 支持所有主要的无线通信标准(提供强大的业务扩展能力) Symbian应用架构: Symbian应用架构 Symbian应用架构2: Symbian应用架构2 Symbian系统的内部结构可以分为应用层,系统层,核心层以及驱动程序部分 应用层:Shell, OPL, 及其他应用程序 =================================================== 系统层:Dialogs, Menu, Toolbar, Icons, Resources, JavaVM, Grid, Rich Text, Edit Control, List Control, Application Framework, Jave Class Libraries. =================================================== 服务层:Window Server, Process Server, Socket Server, Sound Server, Wireless Server, Database Server, File Server, Alarm Server, Comms Server, 以及无线协议 =================================================== 内核:euser.dll, ekern.exe, 服务控制(supervisor server), HAL(设备抽象层) =================================================== 驱动程序部分:包括音频驱动,显示驱动,MMC驱动,键盘驱动,串并口驱动,DSP驱动,时钟控制器驱动等等 扩展能力: 扩展能力 基于微内核的操作系统 自带大量应用资源 支持各种通信方式和协议 支持多种开发语言 获得多个开发集成环境的支持扩展能力2: 扩展能力2 基于微内核的操作系统,可以根据需要选择合适的外部服务模块组成产品 自带大量应用资源,如信息服务,数据同步,多媒体管理,适应多种应用界面 支持各种通信方式和协议,如蓝牙,红外,Gprs 支持多种开发语言 C java perl opl 获得多个开发集成环境的支持 Symbian SDK介绍: Symbian SDK介绍 S60,S90,UIQ,其他,S40 V5 V6.1 V7.0s V8.0 V9.1Symbian SDK介绍2: Symbian SDK介绍2 Symbian手机应用环境是分为内核和界面两块分别发展的,SDK自己有一个版本号,这个版本号一般代表了一个固定的内核版本和一个固定的界面系统的组合 SDK按照界面系统分类 S60,S80,S90,UIQ,其他,(S40 nokia自有的操作系统,不属于symbian的范围) 按照OS版本分:6.0,6.1,7.0,7,0s,8.0,8.1a,9.0,9.1 ...... 举例 S60SDK2.1版 意味这个SDK使用的界面系统是S60,内核版本是Sybmianos7.0s Symbian开发环境: Symbian开发环境 C/C++开发 Java开发 Perl OPL C/C++集成开发工具: C/C++集成开发工具 VC6 VS2003 Codewarrior C++Builder X mobile C++Builder6 mobile Eclipse + carbideC/C++集成开发工具2: C/C++集成开发工具2 VC:使用者数量大,熟悉的人多,文档也多,不过受限于微软,估计以后将不能继续使用 C++builderX:易用性强,提供商borland近况不佳,前途受限,使用了基于jvm的界面技术,操作速度偏慢 Codewarrior:由独立于操作系统的开发商提供,受到广泛支持,不易上手,熟手少(有问题大多要自己研究,哈哈), gcc:SDK自带命令行工具,无需单独安装,操作比较繁 使用VC进行开发的步骤: 使用VC进行开发的步骤 选定手机设备 安装合适的SDK 安装VC2003+carbide.vs 新建项目 选择合适的SDK配置 编译连接通过运行使用VC进行开发的步骤: 使用VC进行开发的步骤 1.选定开发的目标设备(手机型号): 不同的设备需要使用不同的SDK,还会影响开发工具的选择 2.选择开发环境 3.下载安装SDK软件 4.了解SDK目录 \ Epoc32\ Epoc32Ex\ Series60Doc\ Series60Ex\ Series60Tools\ Shared\ Epoc32\ 最好不要修改默认的安装目录,否则,以后开发过程会有不少麻烦 安装目录不能带有空格 Epoc32\ 目录最重要,他包括了所有的系统头文件,库文件 Epoc32Ex 目录包含了一些基础例程代码,是我们学习的最好起点。 Series60Ex 包含了一些比较复杂的例程应用代码,可供大家进一步学习参考 Series60Doc 包含所有系统附带的文档是我们学习SDK的最重要的文件 Series60Tools 包含各种附带的外部实用工具,如框架程序产生向导,网络设定工具等 5.学习文档 - sdk自带的文档最为重要,另外互联网上有丰富的资源:如nokia的论坛,newlc论坛 和symbian公司的开发者网站 6.步骤: 导入或者新建项目,例如编译helloworld程序 命令行编译 PC开发环境编译运行 目标设备编译运行 需要注意:手机开发的变化相当大,网络上的资料不一定是最新的,开发过程碰到的问题解决方法不是一定可以完全照搬。 文件类型说明: 文件类型说明 Bld.inf *.app *.mpp *.pkg *.sis *.hrh *.rss 文件类型说明2: 文件类型说明2 bld.inf 组件定义文件,包含了项目定义文件的列表,多数情况下只有一个文件。还可以包含更多与生成相关的信息 *.app GUI模式的可执行程序 *.mmp 项目定义文件 *.pkg 安装包描述文件 *.sis 安装包 *.hrh 被设计用来包含在C++程序和资源脚本中,C++程序需要它们来标示被处理的命令,而资源脚本需要它们来指示发出的命令。它包含应用程序命令的枚举常量 *.rss 用来定义资源,比如字符串R_HELLO_TEXT_ITEM1,枚举变量EHelloCmd1,UI的菜单以及快捷键等 SDK工具编译链接过程: SDK工具编译链接过程IDE编译链接说明: IDE编译链接说明 总结: 总结 手机终端将在近几年继续迅猛增加,手机应用软件的数量将随之进入爆涨阶段,因此,将产生对手机应用开发技术的强烈需求。 其他信息: 其他信息 课程:手机应用开发 联系方法: 邮箱: wangxu@moabc.com MSN: xuwag@hotmail.comWAP应用开发介绍: WAP应用开发介绍 WAP应用状况介绍 WAP基本概念 WAP编程模型 WAP协议 WAP与WEB的差别国内WAP应用现状: 国内WAP应用现状 目前国内已经有超过1亿的WAP用户 由梦网以及独立WAP门户 目前有近一万家独立WAP门户 全国WAP用户分布情况WAP基本概念: WAP基本概念 WAP全称: Wireless Application Protocol WAP规范由WAP Forum制定 定位:集成三个高速发展的网络技术:无线数据、电话以及互联网WAP编程模型: WAP编程模型WAP协议的版本: WAP协议的版本 WAP 1.2 页面规范:WML WAP 2.0 页面规范:XHTML-mobile页面的源码: 页面的源码 <!– WML <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <head> <meta http-equiv="Content-Type" content="text/vnd.wap.wml;charset=UTF-8"/> </head> <card id="top" title=“WAP"> <p>Welcome to WAP 1.x!</p> </card> </wml> <!– XHTML-mobile <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd" > <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>XHTML-mobile</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <link rel="stylesheet" href="xhtml.css" type="text/css"/> </head> <body> <div id=“main”>Welcome to WAP 2.0</div> </body> </html>用什么来开发WAP页面: 用什么来开发WAP页面 JSP ASP PHP ……进行WAP开发和WEB开发的区别: 进行WAP开发和WEB开发的区别 规范 WML vs HTML XHTML-mobile vs HTML 考虑带宽影响 WAP使用者的网络速度比较慢 考虑浏览器 功能弱