Symbian開發入門指導
本文和大家重點學習一下Symbian開發的入門知識,主要包括Symbian開發環境的安裝和配置等內容,相信通過本文的學習你對Symbian開發一定會有深刻的認識,請看本文詳細介紹。
Symbian開發入門
這學期專業實踐要做一個關于SymbianS60的手機軟件,所以我選擇了CarbideV1.2OEM和S60SDK3rdFP1來作為自己的開發環境。
具體的環境搭配如下:
1.首先安裝Carbide,選擇OEM版本,至于License的話在網上可以查的出來,大家自己去找,然后會出現release_notes提示安裝Perl和SDK等.
2.安裝Perl,選擇activeperl5.6.1的版本安裝,否則會出現下面的網絡上面常見的問題:
使用Carbide用向導新建了SymbianOSC++Project,選擇3rdEd.GUIApplication模版,根據步驟建立了工程,選擇EmulatorDebug,編譯時出現下如問題:
make[1]:***Noruletomaketarget`\Symbian\9.2\S60_3rd_FP1_2\EPOC32\BUILD\Symbian\carbide\workspace\test\group\TEST\WINSCW\TEST.WINSCW'.Stop.testline0這樣的問題,如果選擇5.6.1的話就不會出現上面的問題。(所以軟件不是最新版本就是最好的阿!).
3.安裝SDK最好在他的默認目錄,而且這幾個都是最好在一起,我選擇的是C盤安裝軟件和操作系統,給了35G的大小。D盤存取數據。所以這些我都是安裝在他的默認目錄下面。Carbide和Perl安裝在C盤programfiles.SDK就直接安裝在了C盤上面了。這樣的話基本上就差不多了。
4.打開Carbide,要將工作的空間選取在和自己安裝carbide的盤符相同的盤下面。否則的話會出現下面的錯誤:
WARNING:EPOCROOTdoesnotspecifyanexistingdirectory
BLDMAKEERROR:Directory"\Symbian\9.2\S60_3rd_FP1\EPOC32\"doesnotexist
上面的是我在配置Symbian開發環境時候的一點經驗之談,希望能夠對大家有一些幫助,也歡迎大家給與指教,給我這個菜鳥一些幫助,在此先感謝大家了。
PS:我是一個菜鳥,也是剛開始學習Symbian開發相關,所以對Symbian開發不太了解,之所以在這里寫博客是我發現里面有很多Symbian開發的高手,所以希望大家能夠給與我一些幫助,在此再次感謝了!
◆開發軟件來編譯程序,編寫程序。即IntegratedDevelopmentEnvironment(IDE),它包括編輯器,編譯器和連接器。
推薦用Nokia’sCarbide.c++ExpressEdition(basedontheEclipseIDE)或者VisualStudio.NET2003。
需要軟件開發工具包,即SoftwareDevelopmentKit(SDK),它允許你寫,創建程序為你的手機。
對N73,需要S602ndEditionFP2version9.1introducedacompletebreakfromolderversions.
ToworkonSymbianOSversion9.1orlater,applicationsmustbeslightlymodifiedandrecompiled.
不同的Symbianos用戶界面userinterface(UI)是不一樣的。因此要選擇正確的SDK。
•S60rdEditionFeaturePack1-SymbianOSv9.2
•S603rdEdition-SymbianOSv9.1
•S602ndEditionFeaturePack3-SymbianOSv8.1
•S602ndEditionFeaturePack2-SymbianOSv8.0a
•S602ndEditionFeaturePack1-SymbianOSv7.0s
enhanced
•S602ndEdition-SymbianOSv7.0s
•S601stEdition-SymbianOSv6.1
由于我們的os是v9.1的,所以需要S603rdEdition。
可以在http://developer.symbian.com/main/tools/sdks/s60/index.jsp上下載
下載IDECodeWarriorDevelopmentStudioforSymbianos3.1(OEM,ProfessionalandPersonal)
下載地址為:http://www.forum.nokia.com/info/sw.nokia.com/id/4d2d8611-c490-4f6e-a931-
ea37ba4f040d/CodeWarrior_Development_Studio_for_Symbian_OS_Personal_Edition_Version_3_1.html
安裝其個人版,可試用90天。
安裝SDK
驗證SDK的安裝
1、用devices命令設置S603rdEditionSDKforSymbianOSforC++作為默認的設備
例如:devices-setdefault@S60_3rd:com.nokia.S60
2、到包含helloworldbasic的目錄下默認安裝下為cdC:\Symbian\9.1\S60_3rd\S60Ex\helloworldbasic
3、再進到group目錄下,該目錄下包含bld.inf和helloworldbasic.mmp文件
4、驗證編程環境
運行—〉輸入cmd—〉輸入epoc—〉出現模擬器則表示安裝成功。
注:參看Getting_Started_final.pdf
◆Nokia根據手機的屏幕大小和價格高低把手機分成了多個系列,現在使用的系列有:Series40、Series60、Series80和Series90。60系列
采用Symbianos6.1,然后又根據手機屏幕的特點對UI做了一些修改,這個被修改了的Symbian就被稱為Nokia的60系列平臺。使用60系列的手
機型號包括:Nokia6670、Nokia6630、Nokia6260、NokiaN-GageQD™、Nokia7610、Nokia6620、Nokia3620、Nokia3660、
Nokia6600、Nokia3600、Nokia3650、Nokia7650、NokiaN-Gage™等。
下面我們就以60系列為例,介紹SDK的安裝過程。
2.1.1安裝SDK
第一步,到Nokia論壇注冊,下載最新的SDK。Nokia網站提供的Series60SDKforSymbianOSNokiaEditionSDK最新版本是v1.2,Series
60SDKforSymbianOS的最新版本是v2.1。下載網址:http://www.forum.nokia.com/main/0,6566,034-4,00.html
第二步,到http://www.activestate.com網站下載最新的ActivePerlScript安裝程序。到http://www.java.com/en/download/manual.jsp
下載最新的J2RE。
第三步:安裝SDK,推薦為Symbian開發單獨建一個目錄,例如d:\Symbian而不是使用C:\programfiles等這樣的目錄。
第四步:安裝ActivePerl和J2RE,安裝到默認目錄即可。
第五步:檢查環境變量設定。打開系統環境變量tab,然后看看有沒有EPOCROOT,如果有的話,把它手動改成“\”。改完之后應該是這個樣子的:
EPOCROOT=\
然后,在系統PATH中加入\epoc32\tools目錄以及\epoc32\gcc\bin目錄就可以了。
實際上,SymbianSDK根本不用安裝,直接把epoc32目錄拷貝到一個機器上,然后照上述方法設定目錄和環境變量就可以了。
2.1.2配置VC
如果我們使用的是VC6.0,我們要保證系統至少打了SP3補丁,否則系統會有警告提示。如果我們使用的是VS.NET2003,我們就只能安裝Series
60SDKforSymbianOSv2.1,因為Series60SDKforSymbianOSNokiaEditionSDKv1.2在VS.NET2003無法正確建立工程。
如果要直接在vc6里創建新項目,要把\Symbian\6.1\Series60\Series60Tools\ApplicationWizard目錄下的AvkonAppWiz.awx和
AVKONAPPWIZ.HLP文件拷貝到vc6的模板目錄C:\ProgramFiles\MicrosoftVisualStudio\Common\MSDev98\Template下。這樣我們就可以
在VC的新建工程中看到Series60AppWizardv1.9這個選項.
填入ProjectName以后,確認。一路“Next”,一個最簡單的Symbian應用程序就建立好了。
如果要將已經建立好的工程導入到VC6.0中,比如我們將SDK中的例子HelloWorld轉換成一個VC6的項目,我們首先進入\Symbian\6.1\Series60\Series60Ex\HelloWorld目錄。在這里我們可以看到,在Symbian中,一個Project通常是按inc,src,group等目錄組織,group目錄里通常放的是項目文件,所以編譯時要先到這里。用命令提示符模式進入剛才說的那個目錄下,然后執行:
bldmakebldfiles
這個命令會在group目錄下生成一個abld.bat的批處理文件,并且會在\Symbian\6.1\Series60\Epoc32\BUILD下生成\Symbian\6.1\Series60
\Epoc32\BUILD\SYMBIAN\6.1\SERIES60\SERIES60EX\HELLOWORLD\GROUP這個目錄,并在最底層目錄下生成一堆.make文件。
然后,我們在同一個目錄運行剛才生成的abld.bat:
abldmakefilevc6
這樣就會自動生成vc6的dsw文件,位置在\Symbian\6.1\Series60\Epoc32\BUILD\SYMBIAN\6.1\SERIES60
\SERIES60EX\HELLOWORLD\GROUP\HELLOWORLD\WINS。然后我們就可以在VC6種打開這個Symbian工程了。
2.2編譯
我們可以直接使用SDK提供的工具編譯Symbian工程,也可以使用VC6提供的集成環境來編譯轉化過的Symbian工程。編譯的結果存放在
\Symbian\6.1\Series60\Epoc32\Release\wins\UDEB\Z\SYSTEM\apps目錄中。
2.2.1使用SDK提供的工具編譯Symbian工程
我們在上一節的那個位置繼續輸入:abldbuildwinsudeb
這個命令會編譯我們的程序,最后在\Symbian\6.1\Series60\Epoc32\Release\wins\UDEB目錄下生成我們的helloworld,然后我們可以從開始
菜單里運行模擬器的debug版,在模擬其中就可以運行helloworld了。
2.2.2使用VC6編譯Symbian工程
我們直接打開運行abldmakefilevc6后生成的dsw文件,VC自動裝載轉化過的工程。按F7便可以直接編譯工程,編譯結果同樣放在
\Symbian\6.1\Series60\Epoc32\Release\wins\UDEB目錄中。然后我們打開模擬器debug版,就可以看到我們編譯好的工程了。
2.3打包
我們以SDK1.2提供的HelloWorld為例,制作可以在手機中安裝的.SIS文件:
2.3.1.檢查程序
首先,在命令行格式下,進入HelloWorld工程mmp文件所在目錄,輸入bldmakebldfiles和abldbuildwinsudeb,然后打開模擬器,檢測程序有無錯誤。
2.3.2.編譯工程
在程序無錯誤后,在命令行輸入abldbuildarmiurel。執行這個命令之后會在目錄d:\symbian\6.1\series60\epoc32\release\armi\urel生
成HELLOWORLD.APP和HELLOWORLD.RSC兩個文件。
2.3.3.建立.pkg文件
在d:\Symbian\6.1\Series60\Series60Ex\helloworld\sis用記事本建立或者修改工程的pkg文件,內容如下:
- ;HelloWorld.pkg
- ;
- ;Language-standardlanguagedefinitions
- &EN
- ;standardSISfileheader
- #{"HelloWorld"},(0x10005B91),1,0,0
- ;SupportsSeries60v1.2
- (0x101F8202),0,0,0,{"Series60ProductID"}
- ;
- "d:\symbian\6.1\series60\epoc32\release\armi\urel\HelloWorld.APP"-"!:\system\apps\HelloWorld\HelloWorld.app"
- "d:\symbian\6.1\series60\epoc32\release\armi\urel\HELLOWORLD.rSC"-"!:\system\apps\HelloWorld\HELLOWORLD.rSC"
其中,前面"d:\symbian\6.1\series60\epoc32\release\armi\urel\HELLOWORLD.rSC"是要打包安裝的文
件,"!:\system\apps\HelloWorld\HELLOWORLD.rSC"是安裝的目標位置。在其中要注意的是,我們在目標位置中用“!”代替了實際的盤符。
這樣做得好處是在用戶安裝的時候,手機系統會提示用戶選擇要安裝的位置,這就給了用戶更大的靈活度。另外,在Symbian系統中,安裝的
應用程序默認位置是“!:\system\apps”。編輯好pkg文件后,保存至相應目錄。
2.3.4.打包程序
在命令行中,轉至pkg文件所在目錄,運行命令makesisHelloWorld.pkg。之后我們就在同一目錄下得到了打包好的.sis文件。
2.4手機測試
將打包好地.sis文件上傳至手機中,然后在手機的應用程序管理器中就可以看到我們打包好的文件。選擇“安裝”命令,系統會提示用戶要安
裝的位置,選擇安裝位置后,我們制作的應用程序就安裝到手機中了。
我們回到手機的主菜單,就會發現新安裝的HelloWorld應用程序。打開運行,結果和在模擬器中看到的基本是一樣的。