上次在SideShow Gadget开发[1]中介绍了本地Gadget的开发,现在介绍一下常规Gadget的开发。
在介绍Gadget之前,我们先说一下我们认识上的一个误区,很多开发人员认为常规Gadget和本地Gadget类似,是一个.Net Micro Framework应用程序(至少是一个DLL),在连接时,由PC端把该DLL下载到Sideshow设备上去,Sideshow主程序加载并运行该程序。我一开始也是这样认为的,但是随着开发的深入,对Sideshow的运行机理也越来越了解,其实常规Gadget更像一个网页应用,普通的网页浏览基于http协议,而Gadget基于SCF(Simple Content Format,目前sideshow支持两种协议,另一种是ICAL,在Sideshow中不称为通信协议,专业术语是endpoint)协议,此时的Gadget更像一个网页,而Sideshow设备更像一个IE客户端。
从以上描述,你就会明白了,其实没有什么DLL,对于Sideshow设备来说仅有一些基于SCF格式的数据流而已。
所以开发常规Gadget理论上不拘于什么开发语言,只要能输出符合SCF格式的数据流即可。不过这里还是推荐使用C#(或基于.NET开发平台开发语言),可以直接引用相关开发库,非常简单的生成符合SCF格式的界面要素。
下面先“秀”一下我们已经开发好的图片浏览Gadget,然后再介绍一下是如何开发的。
1、 安装后,会在Sideshow控制面板上出现如下图标
2、可以设置PC上要共享的图片目录
3、在Sideshow设备上的显示