終于買了一個掌上電腦,我又開始關注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