终于买了一个掌上电脑,我又开始关注Palm开发了。Palm上虽然可以安装Java虚拟机,但据我所知绝大多数用户受里的Palm并没有安装,让他们为了用你的一个小软件而装虚拟机不太现实,因此只能用C/C++了。大学里学的C语言一直没有实际应用过,所以经过这么多年也和没学差不多,最近通过看wj给我的书,对C语言又有了重新的认识。不过C语言是面向过程的,我在Java里积累的经验似乎帮不上什么忙,边走边看吧。我在“Palm开发”这个分类里记录学习过程,这是第一篇,先介绍一下PODS的使用方法。
如果不熟悉Palm,可以先通过这篇文章了解一下Palm公司的历史和产品。没有掌上电脑也可以开发Palm应用,你可以在模拟器上运行和调试,但我相信把自己编写的应用程序拿在手里的感觉一定不错。
Palm OS Developer Suite(PODS)是PalmSource提供的基于Eclipse的Palm应用程序开发工具,它包含了编译工具、调试工具、模拟器、资源编辑工具和Palm SDK等等,可以在这个地址下载。虽然很多人都使用CodeWarrier开发Palm应用程序,但PODS毕竟是PalmSource官方推出的开发工具,从最初的1.0到现在的1.2版本看来,支持得也不错,加上它是基于我们熟悉的Eclipse平台,更重要的一点它是免费的,所以我还是选择了PODS。当然,用什么工具只能在一定程度上影响开发速度,熟练以后工具间的差别就不那么明显了。
我目前收集到的Palm开发资料主要有这几部分:首先是PalmSource网站上提供的不少pdf文档,对入门者比较有用的是“Palm OS Companion”和“Palm OS Reference”这两份,还有一个“UI Guideline”在设计窗体之前可以看看;另一个是PalmOS的开发者新闻组(news.palmos.com),比较活跃,到现在已经有超过10万个post了;最后就是纸版的图书,我找到的比较新的中文书籍是《PalmOS编程宝典(第二版)》,网上可以找到该书第一版的英文电子版,决定购买以前可以先看一下。
PODS的安装很简单:运行你下载的安装文件就可以了(PODS没有Linux的版本,它带的模拟器也是运行在Windows里的,所以我暂时还是要用回Windows了),可能需要你的机器里事先装有JRE。安装以后在“开始”菜单里会出现PODS组,其中有两个模拟器(Simulator,注意和Emulator的区别),开发OS5及以下应用程序用Garnet Simulator,开发OS6应用程序用Cobalt Simulator,所以我们一般用前者,它的样子见图1。
图1 Garnet模拟器
如果你用过Eclipse,对PODS的界面也不会感到陌生,基本上PODS就是在Eclipse里加了个透视图(Perspective)和一些向导,PODS 1.2版本带的Eclipse是3.0.1版本,显得有点过时了(也许可以把PODS那部分拿出来放在新版本Eclipse和CDT里,不知道能不能兼容),图2是PODS的运行界面。
图2 PODS的运行界面
环境看得差不多了,现在试着创建第一个Palm应用程序吧。在新建向导里创建“Managed Make 68K C/C++ Project”,如图3。这种应用程序可以运行在各个版本的Palm上,具有最好的兼容性。
图3 创建Palm应用程序
按下一步按钮,给项目起个名字“hello”,见图4。
图4 给项目起名
按下一步按钮,这里要指定你的应用程序的一些属性,对普通应用程序来说,大部分可以不动,只有“Creator ID”这一项必须改为其他值。按正规的流程,我们首先要在palmos网站上注册自己唯一的ID,然后把这个ID填在这里,目的是避免应用程序间的冲突。因为现在只是试验,随便改成“HELL”就可以了,见图5。
图5 修改Creator ID
按下一步按钮,在这一步里PODS提供了一些代码模板,这样可以不用从零开始写每个程序。我们选择“Sample Application”这一项,见图6,这样在向导结束后我们会得到一个很简单的应用程序。
图6 选择一个模板
现在直接按Finish按钮结束向导,这时要稍等一会儿,PODS在生成必要的代码和编译它们。简单来看一下生成的代码,主要的程序文件是src目录下的AppMain.c文件,注意它的入口方法不是main()而是PilotMain(),这个文件里的内容以后的帖子里会说明;在rsc目录下生成了名为AppResources.xrd的文件,这是一个资源文件,如果你在PODS里双击它,会打开Palm OS资源编辑器,见图7,在资源编辑器里你可以编辑窗体、定义菜单、定义图标、定义字符串等等。
图7 Palm OS资源编辑器
怎样在模拟器里运行这个应用程序呢?首先确认你已经启动了Garnet模拟器;然后在PODS里选择菜单“Run->Run...”,这将弹出一个对话框。在对话框左边选中“Palm OS Application”,然后按下面的New按钮,在“Palm OS Application”下面会出现一个新的节点(运行项);选中这个节点,在对话框右半部分把它的名称改为和项目名一样的“hello”,并确认“Files to install”框里只勾选了hello项目;点击Target属性页,在Device下拉列表里选择“Palm OS Garnet Simulator 5.4”,这个设置很重要,不要忽略。
现在运行项已经配置好了,见图8,按下对话框右下方的Run按钮即可运行程序。注意,以上这个过程对一个项目只需要配置一次就够了,再需要运行可以在PODS的工具栏里直接按Run下拉按钮。
图8 为hello项目配置运行项
我们第一个应用程序在模拟器上运行的界面如图9所示。
图9 第一个应用程序
你可能已经注意到了,在项目的Debug目录下已经生成了hello.prc文件,这个文件可以直接在Palm设备上运行(方法和安装其他软件一样,通过同步,或者复制到扩展卡上,等等),图10是我们的hello项目在真正的Palm上运行的样子。
图10 运行在Palm T|X上的hello项目
-----------------------------------------------------------------------------------------------------------------------
本文转自
http://www.cnblogs.com/bjzhanghao/archive/2006/06/09/421821.html