分类: C/C++
2008-10-23 23:58:36
Mobile 5.0开发配置:
软件安装顺序:
1. 安装Microsoft ActiveSync 4.0以上版本
2. 安装VS2005
3.Windows Mobile 5.0 Pocket PC SDK.msi
4.Windows Mobile 5.0 Emulator Images for Pocket PC - CHS.msi
如果还要安装for Smartphone版本的,步骤也类似。
Mobile 5.0环境配置:
1. 模拟器与Microsoft ActiveSync同步:
A.启动VS2005,在Tools->Device Emulator Manager,选择一个需要启动的模拟器,双击或者按右键,选择“Connect”,即启动模拟器。
B. 当模拟器启动后,在Device Emulator Manager中,右键该设备,选择“Cradle(插入底座)”,即可与Microsoft ActiveSync同步。
2. 模拟器上网:
启动模拟器后,只要PC机连接网络,模拟设备即能上网。
Mobile 5.0 最初的开发程序:
在Pocket Pc上新建1个应用程序:
在File->New->Project中可以选择Pocket PC或者Smartphone的Device Application项目新建以后所看到的Form的界面是和真实设备的界面完全一致。
在Form上放置1个TextBox后,将值改成Pocket PC,运行该程序
在Pocket Pc右上角的有2种按钮,叉和ok,叉代表最小化,ok代表关闭。最小化程序会使得程序占用内存,在此觉得微软的操作系统提供的程序有些都是最小化,没有释放内存,会使得系统越跑越慢。
将最小化变为ok,通过设置form的属性MinimizeBox,true为最小化按钮,false为ok按钮。
在Smartphone中没有上述的变化,在Smartphone中,如果不添加menu中的事件来结束程序的话,那程序始终会以最小化方式保留在系统内部。
更改应用程序的平台:
选择project,右键,在菜单中选择“Change Target Platform”
在选择平台中,选择一个你想改变的平台,按OK即可
注:Pocket Pc和SmartPhone平台改换后,要更改下列内容:
1. 控件的大小
2. 某些特定控件在SmartPhone中不支持,如Button
3. 某些托管API。SmartPhone中,所支持的API没有Pocket PC多
开发Mobile需要注意:
由于是基于移动设备的,所以无论cpu还是内存来说,都和PC有很大差距,所以要求消耗较少的内存开销,另外相比PC来说,所支持的API是非常少的,需要经常查SDK。
在开发Mobile Web Site之前,准备工作:
1. 确认IIS可以正常启动。
2.VS2005能够以HTTP方式正常创建Web Site。
3. 至少有1个模拟器,Pocket PC,Smartphone,Openwave。
新建1个空的站点,在站点中添加一个Mobile Web Form,命名为index.aspx。
将该页面切换到Design模式,可以发现页面上的Form的宽度非常小而且是固定的,这是因为该页面与实际设备上显示的页面会保持一致。
控件的breakAfter属性,true表示控件render后会多添加一个换行符。
Mobile Web Form与Web Form之间的区别:
1. 控件Tag标签:
Web Form:控件标签都以
Mobile Web Form:控件标签以
2. Mobile Web Form中可以添加的控件:(在Design中,Toolbox中)
Standard:只能用于WM操作。
Mobile Web Form:可以适用于任何移动设备浏览器,可能显示效果不一样,特殊控件需要根据设备进行效果调整。
3. Mobile Web Form上可以放置多个Form,而Web Form只能有1个Form。
4. Mobile Web Form不支持MasterPage,而Web Form支持。
一个站点中可以包含Web Form和Mobile Web Form,Mobile Web Form上的控件推荐都采用Toolbox中Mobile Web Form面板内的控件。针对不同平台的浏览器,定制一些适用于该平台的设置,Mobile Web Form中的所有Mobile控件都支持定制。
控件定制:
在控件的Properties的Property Overrides,选择Edit按钮,在Applied Device Filters中选择一个过滤器,选择好后按Edit编辑参数,Compare用于根据什么比较,Argument是该如果比较项等于该参数就满足该过滤器的条件,就可以按照你自己定义的这个效果显示。
Mobile Web Form的数据邦定控件ObjectList Control 可以用DataSource指定数据源,支持Template,共有3类Template。
1.Header and Footer Templates
2.Item Templates
3.Separator Template。
补充:一旦设置了某个Template,那默认的显示就消失了。
我只设置了Header和Footer,并没有设置Item,但是系统为认为Item也是设置的,只不过没有内容而已。另外,只有为ObjectList
Control控件定制以后才能进行Template的编辑。
在Mobile Web Form上可以放置多个Form,Form的形式是以组件的形式加载的,当用户对该Form所在的Web Form发出请求后,就会将该Web上的所有Form全部加载,以减少在切换Form时的时间。同一Web上的不同Form间切换只传递的是一些数据,具体可以使用Openwave后看下请求和相应效果。
另外对于Openwave,由于在Openwave sdk
6.2.2中页面的button会显示出来,而不是当焦点移过去后,SoftKey左键会有button的显示,较早版本的Openwave中会有该效果的。