本文从零开始讲述了进行smartphone
开发的整个过程,通过本文的阅读,你可以从中获得:
1、 安装smartphone的开发环境
2、 配置smartphone的开发环境
3、 配置模拟器。
4、 连接模拟器到ActiveSync。
5、 一个通用性好、扩展性强的smartphone编程框架。
6、 在smartphone窗口中绘制文本,使用消息提示框等。
7、 安装我们的smartphone程序。
下面所有描述均以Microsoft smartphone 2003 简体
中文版操作平台为例。
安装开发环境 目前有两种开发环境可供选择,一种基于C++,另一种则是基于.NET架构的VB.net和C#,鉴于C++的灵活,结构相对比较清晰(最重要的一点是我在C++下面的开发经验要比在VS.NET上多一些),在下面的例子本文将选用第一种方案。
一、C++开发环境
1、安装ActiveSync 3.7.1
这个软件用于连接及同步桌面windows系统和smartphone设备,连接成功后,你会在桌面上看到一个smartphone设备的虚拟目录,你可以在桌面windows下对这个目录下的内容进行修改,所有的修改会同步更新到smartphone设备上。
2、安装Microsoft eMbedded C++ 4.0 和Microsoft eMbedded C++ 4.0 SP3
目前最新的有Microsoft eMbedded C++ 4.0 SP4,也可以安装。
3、安装SDK for Windows Mobile? 2003-based Smartphones
不用多说,所有smartphone相关的内容都由它提供。
4、安装 Localized Emulation Images for Windows Mobile? 2003-based Smartphone
对于Mobie设备开发而言,模拟器是非常重要的,它用来模拟真实的smartphone设备,让你能够在Windows桌面平台上调试验证你的程序而不需要连接到一个真实设备,在smartphone的sdk中已经包含了一个
英文的模拟器,这里我们要安装的是一个简体中文的版本,安装文件是Smartphone 2003 SDK Chinese Simplified Emulation Images,它让我们可以在模拟器上显示中文内容。
5、Windows Mobile Developer Power Toys for smartphone
这里面提供了一些帮助你开发和调试的工具,常用的有"Emulator ActiveSync Connection Tool",可以让你连接ActiveSync到我们的模拟器,这样我们就可以在桌面端实时显示完整的目录结构;还有"ActiveSync Remote Display",一个有趣的工具,可以将你的smartphone显示
屏幕同步显示在桌面窗口中。
安装注意: 进行安装时,1到3是必须安装的,并且,牢记不要改变1~3的顺序,也不能改变安装程序所指定的默认路径,否则一旦安装失败,你可能需要重新安装操作系统才能解决问题(痛苦呢),这主要是因为 "Microsoft Windows CE platform manager 4.0"不能被完全卸载的缘故。
建议你在安装了Microsoft eMbedded C++ 4.0后,马上启动它看一下,如果不能启动,就不用再向下进行了,不要使用Windows自带的卸载程序,到网上找比较强大的卸载工具来卸载eMbedded C++,然后重新安装即可。
二、VB.net或C#开发环境
1、安装ActiveSync 3.7.1
2、安装VS.net 2003
3、安装SDK for Windows Mobile? 2003-based Smartphones
4、安装 Localized Emulation Images for Windows Mobile 2003-based Smartphone
5、安装Windows Mobile Developer Power Toys for smartphone
其中,1~3是必须安装的,4和5可选安装,原因前面已经说明了。
因为下面配置开发环境我都是以C++环境而言的,因此,如果你使用VS.NET开发,你会发觉有些地方会有差异,但涉及的基本概念和原理都是一样的。
对于VS.NET,你可以在 工具-〉选项-〉设备工具-〉设备里面发现并配置你的模拟器。祝你好运。
配置开发环境 1、配置模拟器
1) 启动Microsoft eMbedded C++ 4.0
2) 选择菜单tools->configure platform manager...
在Smartphone 2003中新增加一个设备CHS_SMARTPHONE 2003 Emulator
3) 选中新增的设备,点击properties…
选择Transpor为"TCP/IP Transport for Windows CE";选择Startup为"Emulator Startup Server",如下:
4) 配置Emulator Startup Server
在Image中选择CHS Smartphone 2003(Virtual Radio),其余保持不变
5) 返回Device Properties对话框,点击test
如果配置正确的话,模拟器会被启动起来,如下:
6) 模拟器配置完成。
2、连接ActiveSync到模拟器
配置好模拟器后,我们已经可以进行开发了,但因为只有ActiveSync能够展示出设备的目录结构,因此只有使ActiveSync连接了模拟器,那个模拟器在开发中才能够代替一台真正的smartphone手机。
将ActiveSync连接到模拟器一共有两种办法,一种是通过串口进行环回,需要使用null modem cable连接,另一种是使用以太网卡的Virtual Switch服务,让ActiveSync以为模拟器是从以太网接口卡连接进来的真实设备,因为使用Virtual Switch速度快,也不需要硬件电缆,因此我们以这种连接方式为例。
鉴于这一部分是个难点,在我们开发时,很多同事都碰到了配置不成功的情况,因此,此处将列出详细的步骤:
1) virtual switch服务确认
打开你的网络邻居,观察在"本地连接"的属性对话框,确认有如下服务:"virtual PC Emulated Ethernet Switch",这是你安装模拟器的时候安装程序自动帮你安装的,如果没有发现,请重新安装smartphone 2003 SDK。
2) 配置模拟器使用virtual switch服务
启动Microsoft eMbedded C++ 4.0,菜单tools->configure platform manager...->CHS_SMARTPHONE 2003 emulator->Emulator Startup Server:
3) 配置你的ActiveSync能够通过以太网连接设备
打开ActiveSync,菜单 文件-〉连接设置…,选择允许通过网络(以太网)以及
远程访问服务器(RAS)与此台计算机建立连接。
4) 启动模拟器
注意,我们的中文模拟器需要从EC++内部启动,因为外部SDK菜单上的模拟器是安装SDK时默认安装的英文模拟器。
5) 连接ActiveSync与模拟器
1)、首先,进入SDK工具:
2)、然后在命令行输入:
emuascfg /sp "smartphone 2003" "chs_smartphone 2003 emulartor"
其中"smartphone 2003"是操作平台名,"chs_smartphone 2003 emulartor"是设备/模拟器名。等待运行结束后,关闭命令窗口。
6) 进入模拟器,打开ActiveSync程序,选择同步
这时,你能看到你安装的ActiveSync在任务栏有了反应,最终,模拟器上显示已连接。
结束 此时,模拟器可以通过以太网接口利用virtual switch服务连接到ActiveSync上去了。
我们可以把这个模拟器当作一个真的设备对待,可以给它安装各种软件,可以给它定义安装主屏幕等等,对于开发来说,我们可以使用ActiveSync的浏览
功能看到smartphone的目录结构,在开发涉及到文件改变的程序时非常有帮助。