symbian操作系統(tǒng) 入門篇
一、symbian簡介
Symbian是一個實時性、多任務(wù)的純32位操作系統(tǒng),具有功耗低、內(nèi)存占用少等特點,非常適合手機等移動設(shè)備使用,經(jīng)過不斷完善,可以支持GPRS、藍芽、SyncML、以及3G技術(shù)。Symbian主要用于高端的智能手機,其開發(fā)語言為C++。Symbian 是真正的微核操作系統(tǒng),所謂“微核”,就是說操作系統(tǒng)只有很小的一部分是運行在最高優(yōu)先級的,其他的功能都是以Client-Server的方式提供。
二、symbian開發(fā)環(huán)境的布置
I. 起點-SDK和IDE的選擇
這里主要針對S60的開發(fā)環(huán)境的建立,因此首先為大家列出S60系統(tǒng)的各種版本。因為開發(fā)者應(yīng)該根據(jù)需要,選擇自己適合的SDK版本。
1、Series60 第一版 - Symbian OS 6.1
2、Series60 第二版 - Symbian OS 7.0s
3、Series60 第二版 Pack 1 - Symbian OS 7.0s
4、Series60 第二版 Pack 2 - Symbian OS 8.0a
5、Series60 第二版 Pack 3 - Symbian OS 8.1a
6、Series60 第三版 - Symbian OS 9.0
需要要說明的是,Nokia的Symbian/Series60開發(fā)包支持的集成開發(fā)環(huán)境[IDE]工具有很多種,下面列出主要使用的一些IDE:
1、Microsoft Visual Studio 6 / Visual C++ 6
2、Microsoft Visual Studio .NET [2003] / Visual C++ 7
3、Borland C++ Builder 6
4、Borland C++ Builder X 1.0
5、Metrowerks CodeWarrior Studio for Symbian Personal/Professional 2.0/2.5
II.在安裝SDK以前保證下列1-3項先被正確安裝。SDK和IDE要安裝在電腦上的同一個分區(qū)。SDK的安裝路徑不能含有空格。
下面詳細說明需要安裝的軟件及其步驟:
1、在安裝SDk之前必須安裝ActivePerl(官方文檔要求安裝Perl 5.6.1 build 531,并說明安裝其他版本可能會有問題
2、安裝JAVA Run-Time1.4.1_02 或者新版本說明:在使用命令行編譯程序的時候事實上是不需要用到JAVA Run-Time1的。但是若要使用SDK的一個強大的工具ApplicationWizard,就必須安裝該組件,同時若要使用Sisar等工具的話,JRE也必不可少。
3、安裝IDE,安裝Microsoft Visual Studio .NET 2003
4、安裝SDK,注意前面所說的SDK的安裝路徑不能含有空格。并且要和IDE裝在同一個分區(qū),這樣可以避免一些麻煩
5、安裝Nokia Developer Suite - Carbide.vs 。這相當于VS2003的一個插件,用于幫助導(dǎo)入或者建立S60工程
相應(yīng)軟件可在諾基亞主頁下載
III.安裝完畢后在系統(tǒng)環(huán)境變量path中加入:
{VS2003的安裝路徑}\Microsoft Visual Studio .NET 2003\Vc7\bin
三、下面可以通過一個例子,進一步了解symbian的開發(fā)環(huán)境
I. 通過Microsoft Visual Studio.NET 2003
1.進入Microsoft Visual Studio.NET 2003
2.單擊:文件/import symbian project選擇并打開Symbian\8.0a\S60_2nd _FP2\S60Ex\helloworldbasic\group\helloworldbasic.mmp
Project type 為classic
3.然后單擊next. 在下一對話框中選中ARMI然后確認Finish ,此時就可以打開basic文件了。
下面運行helloworldbasic這個程序
4.在菜單欄選中生成/生成解決方案(F7),在運行對話框中單擊生成,此時會顯示:
Helloworldbasic - 最新。
---------------------- 完成 ---------------------
1成功 0 失敗 0跳過
5.接下來點擊調(diào)試/開始執(zhí)行。
此時會自動打開series 6.0的調(diào)試模擬器,同時還可發(fā)現(xiàn)在調(diào)試模擬器的應(yīng)用程序中多了一個HelloWorldBasic程序
這是一種用Microsoft Visual Studio.NET 2003直接調(diào)試的方法,除此之外還可以用windows命令行進行調(diào)試
II. 用windows命令行進行調(diào)試:
1.找到helloworldbasic文件夾的地址,
Symbian\8.0a\S60_2nd _FP2\S60Ex\helloworldbasic\group\
2、構(gòu)建我們的例子,輸入:
bldmake bldfiles
這一步會生成一個文件ABLD.BAT。
3、編譯和鏈接,輸入:
abld build wins udeb
這一步會生成供Series 60 調(diào)試模擬器使用的文件。
4、運行,在命令行進入:
Symbian\8.0a\S60_2nd_FP2\epoc32\release\wins\udeb
這個目錄含有剛生成的helloworld.exe文件。然后輸入:
Helloworld
此時會自動打開series 6.0的調(diào)試模擬器,同時還可發(fā)現(xiàn)在應(yīng)用程序中多了一個HelloWorldBasic程序
下面簡單介紹一下以上各步的含義:
當我們運行
bldmake bldfiles
這個命令時,會處理當前目錄下的bld.inf文件,具體來說會執(zhí)行以下處理過程:
1、生成目錄
Symbian\8.0a\S60_2nd_FP2\epoc32\BUILD\SYMBIAN\8.0A\S60_2ND_FP2\EXAMPLES\BASICS\HELLOWORLD
2、在這個目錄下,生成一系列的Make文件,針對各種目標環(huán)境。比如VC7.MAKE,CW_IDE.MAKE等等。
3、在當前目錄下生成abld.bat文件,這個文件會在隨后用到。可以查看該文件的內(nèi)容。但是建議不要手工的更改它的內(nèi)容。Bldmake命令也支持其他的命令行選項,可以直接輸入bldmake來查看簡要的介紹,還可以查看SDK文檔了解詳細信息。由bldmake處理bld.inf文件得到的 abld.bat文件,使得abld命令可用。Abld.bat控制著構(gòu)建一個項目的方方面面。Abld命令的語法非常地靈活,它擁有許多命令行選項,它們的組合涵蓋了各種構(gòu)建需求。最常用的組合,莫過于abld build 和 abld clean 相關(guān)了。
當我們運行
abld build wins udeb
這個命令時,將為wins平臺(即通常的VC++環(huán)境)生成一個debug版本的程序。具體來說,在
D:\Symbian\8.0a\S60_2nd_FP2\epoc32\BUILD\SYMBIAN\8.0A\S60_2ND_FP2\EXAMPLES\BASICS\HELLOWORLD\HELLOWORLD\WINS\UDEB
和D:\Symbian\8.0a\S60_2nd_FP2\epoc32\release\wins\udeb下面各生成了一些文件比如Helloworld.exe文件。
在運行此文件就可以得到最終的效果了
還要說明一點的是,示例所用的SDK,IDK分別是
SDK:SERIES 60 2ND EDITION SDK FOR SYMBIAN OS SUPPORTING FEATURE PACK 2
SUPPORTING MICROSOFT VISUAL C++ CHINESE SIMPLIFIED EDITION
IDE:Microsoft Visual Studio .NET 2003
如果嚴格按照以上步驟仍得不到正確的效果可能是版本不同造成的 版本不同可能會有相應(yīng)的改動
四、 推薦幾個有關(guān)symbian的網(wǎng)站
1.Symbian OS官方網(wǎng)站 不用多說,這是Symbian相關(guān)信息的最權(quán)威來源。
2.諾基亞論壇 這是最為活躍的移動開發(fā)技術(shù)社區(qū)。尤其是關(guān)于Nokia Series系列的資源非常的豐富。 而且,現(xiàn)在還有 諾基亞論壇簡體中文版 這極大的方便了國內(nèi)的開發(fā)者學(xué)習(xí)相關(guān)技術(shù)。
3.UIQ的官方網(wǎng)站 UIQ Technology AB成立于1999年,是完全歸Symbian公司所有的一家子公司。他們面向開發(fā)移動設(shè)備的UI Platform——UIQ,并授權(quán)給那些全球領(lǐng)先的移動設(shè)備制造商。
五、常見單詞縮寫及其含義:
VCL是Visual Component Library的縮寫,即可視組件庫
MFC,微軟基礎(chǔ)類(Microsoft Foundation Classes),
GUI是圖形用戶界面(Graphic User Interface)
IDE是Integrated Device Electronics(電子集成驅(qū)動器)的簡稱,是一種硬盤的傳輸接口,它有另一個名稱叫做ATA(AT Attachment),這兩個名詞都有廠商在用,指的是相同的東西。
這里的IDE指 集成開發(fā)環(huán)境Integrated Development Environment
DLL即 Dynamic Link Library(動態(tài)鏈接庫)。
API就是 Application Programming Interface,就是操作系統(tǒng)留給應(yīng)用程序的一個調(diào)用接口,應(yīng)用程序通過調(diào)用操作系統(tǒng)的 API 而使操作系統(tǒng)去執(zhí)行應(yīng)用程序的命令(動作)
SDK (Software Development Kit),就是“軟件開發(fā)工具包”。