|
|
| |
| 智能手机Smartphone开发导语 |
| |
自从五年前踏入编程领域以来,触目所及,Micrsoft的彩色小旗在台式机、笔记本、掌上电脑、平板电脑上四处飘扬,如今,Microsoft又把旗帜插入了手机领域,这就是今天我们要谈的主角,Microsoft的智能手机操作平台Smartphone。
本文将从程序开发角度对Smartphone进行整体的说明,希望能给你一个Smartphone开发的大概印象。
从开发角度看Smartphone
Smartphone是一个智能手机操作平台,它基于Microsoft的嵌入式实时操作系统 Windows CE进行设计,因为它的应用定位在手机上,因此Microsoft在底层对它的无线通讯以及语音文本信息通讯模块做了大量的优化。下面是一款使用Smartphone 2003简体中文版的设备,多普达565的主界面。
对开发人员来说,在开发过程中,我们能够看到熟悉的开发环境界面、熟悉的消息体系、熟悉的API函数、以及熟悉的内存管理与进程管理,根据个人经验,我认为如果你曾经在桌面Windows或者Pocket PC上开发过软件,那么你所需要关注的只是一些注意事项再加上一个入门,然后就可以象进行桌面程序开发一样进行Smartphone的开发了,当然,时刻参考MSDN肯定是少不了的,呵呵,这个相信大家都很熟悉。
1、Smartphone平台的基础架构
下面是Smartphone平台的基础架构图:
无线堆栈层:手机的本质功能当然是无线通讯了,这个层次负责最终的数据发送与接收处理,它对进行接收和发送的硬件细节进行控制,突出无线通讯这个核心内容,是Smartphone操作平台最低的一层。
核心API:和我们普通开发所说的API大致是一样的,开发人员利用它们来进行与无线通讯与语音服务相关的开发。这部分内容可以在开发的时候参照MSDN来使用。
逻辑:这一层在核心API层的上面,系统为了简化开发,会将一些API包装成各个功能块供你调用,类似于我们平常所说的控件,这一层就是提供各种控件的接口。
应用层:系统中面向用户提供服务的应用程序。
2、Smartphone编程的整体框架
Smartphone开发框架和一般的桌面Windows开发区别不大,你可以使用可视化编译工具(eMbedded Visual C++ 或者Visual Studio 2003.net中的VB.net、C#)结合Smartphone的SDK来开发适用于Smartphone手机的软件。
主框架处理是:
·注册窗口类,连接窗口过程
·初始化应用程序实例
·建立程序主窗口
·进入消息循环
消息循环相关处理是:
·收到消息分发到窗口过程处理
·窗口过程处理自己需要处理的消息
·不需要处理的消息则调用系统缺省处理函数来实现
·如果接收到消息是退出消息,就退出消息循环,结束程序
编程工作主要是:
·为自己需要处理的消息增加消息映射入口
·实现消息处理函数
3、Smartphone开发与PocketPC开发
因为两者都基于Windows CE操作系统而设计,因此Pocket PC和Smartphone在开发上是非常相像的,有许多Pocket PC的程序可以轻松移植到Smartphone上来,对于开发而言,两者最重要的相同点是:Smartphone的开发环境和所使用的Win CE API与Pocket PC是相同的。
两者之间的不同主要表现在用户界面的关联上,这主要表现在两个方面,一个是分辨率: Pocket PC具有分辨率为240*320像素的界面而Smartphone则是176*220像素。另外一个需要注意的是应用程序导航,Pocket PC使用触摸屏和触摸笔而Smartphone则使用硬件按钮导航。
如果你关注并且修改了相关的代码,你可以发现,你的Pocket PC代码大部分可以移植到Smartphone设备上来。
3、Smartphone开发与windows桌面开发
如果你有过Windows桌面开发经验,你会发现Smartphone开发具有大致相同的应用程序结构,但是,你需要注意Smartphone上适用的API(称之为Win CE API),比起桌面Windows所提供的API来,有很多功能被精简,有些API甚至彻底消失了,所有这些意味着你不能随心所欲使用你在Windows桌面开发所获得的经验;你需要始终在Windows CE帮助和Smartphone SDK 帮助中获得这些API的精确信息。
另外,你也会发觉程序的用户界面设计会有些不同,比如Smartphone的分辨率被规定为176*220像素,比如你需要注意用户输入字母和文字比在桌面Windows中困难得多等,这些下面我会进行详细地分析,当然,也不用太担心,因为有很多知识是照样可用的。
[1] [2] 下一页 |
| |
|
|
[]
[返回上一页]
[打 印]
[收 藏] |
|
| ∷相关文章评论∷ (评论内容只代表网友观点,与本站立场无关!) [更多评论...] |
|
|