为Windows Mobile 6.5开发Widget
2011-01-06 10:58:21 来源:WEB开发网创建部署包
Windows Mobile widget的设计目标之一是提供一个独立的下载部署包。部署包是一个将扩展名由.zip变为.widget的标准zip文件。你可以任意命名该文件,但 是最佳实践是使用widget的名字。如果你没有在manifest文件中提供widget的名字,widget安装程序将会用部署文件的名字作为 widget在设备上的名字。
zip中包含了Widget运行所需要的所有文件:Web页,图标文件,样式表,JavaScript文件,和其他资源。这些文件以同样的文件夹结构存储于zip文件中,如果你的widget使用了本地化,这个zip文件也会包含盛放本地化文件的本地化文件夹。
部署widget
当前版本的Windows Mobile Widget支持两种部署模式:Marketplace部署和Sideload部署。Marketplace是一个计划成为Windows Mobile 应用程序订购平台的在线应用程序商店。
开发者可以通过桌面开发工作站进行Sideload部署。开发者可以拷贝部署文件到设备,然后在设备上运行widget。该部署方法对模拟设备是有效的,但是对于真实设备,开发者必须先添加如下的注册表键值到设备注册表中。
[HKEY_CLASSES_ROOTiapp]
"EditFlags"=dword:00010000
[HKEY_CLASSES_ROOTiappShellOpenCommand]
@="wmwidgetinstaller.exe %1"
如果没有这些键值,Windows Phone 将无法识别.widget文件。
widget安装程序从widget文件中解压出所有文件放置到Program Files 下的一个位置。然后安装程序向设备开始菜单添加widget图标,并提供卸载信息以使widget可以通过移除应用程序菜单卸载。widget安装后,widget文件可以通过Program FilesWidgetsUser文件下的一个子文件访问。这就意味着在开发应用程序时,你只需要部署一次.widget文件,然后在更改文件时你可以直接使用Windows资源管理器从开发工作站拷贝文件到设备即可。
最佳实践
SystemState对象允许你检测系统状态值并采取恰当的动作;也允许你注册一个在特定值改变时调用的事件处理程序。你可以使用这些值监视电池 电池寿命和网络状况,并改变你的代码相应行为。譬如,如果你的应用程序使用网络数据来更新显示,那么你可以选择在没有网络时禁用更新。widget对象有 两个叫做onshow和onhide的属性,允许你指派到在widget显示和隐藏时调用的函数,并且你可以选择在widget隐藏时禁用所有网络连接,
更多精彩
赞助商链接