[转]DotNet for Symbian平台 (Nokia,Sony,Motorola等手机)
支持:Nokia,Sony,Motorola等手機(jī)。
支持:Symbian60 v3 及其以上。
支持:.net CF1,SmartPhone2003類型項(xiàng)目。
支持:vs2003,vs2005
?
現(xiàn)在也有些手機(jī)已經(jīng)使用了Windows Mobile5(HP6828),或者wm6(HP512),在這些平臺上我們可以使用.net來寫程序。希望這也是一種趨勢,越來越多的手機(jī)可能會選用wm6。
不過,現(xiàn)行賣的手機(jī)中,也有很多是用Symbian操作系統(tǒng)的,比如諾基亞,索尼,摩托羅拉等。怎么能讓.net程序也能運(yùn)行在這些手機(jī)上呢?Red Five Labs提供了這樣一種可能。
現(xiàn)在redfivelabs已經(jīng)開發(fā)出第一版支持DotNot平臺的程序“Net60Beta2”,支持Symbian60第三版及其以上版本,支持平臺,可以使用vs2003和vs2005開發(fā)。我的手機(jī)是Nokia 6210C(支持3G,Symbian60第三版),正好符合這個條件,于是做了一些測試,果真把.net程序在我的手機(jī)上運(yùn)行了起來。這個程序就是鼎鼎大名的“HelloWorld”。
?
在wm6下邊,我們只要把編譯好的exe程序copy到手機(jī)上就能跑,但是在Symbian下邊稍微麻煩一些,因?yàn)閷τ诓皇煜な謾C(jī)寫程序的人,要先弄清楚數(shù)字簽名。
開發(fā)準(zhǔn)備:程序的數(shù)字簽名(產(chǎn)生. Sisx文件,直接的sis文件不能安裝在手機(jī)上)
需要事先準(zhǔn)備的程序:
1:Net60Beta2.msi:這一個需要到redfivelabs(http://www.redfivelabs.com/)下載。請先注冊,然后他們驗(yàn)證之后會發(fā)給你郵件,讓你去下載。這個程序安裝之后會產(chǎn)生幾個基本支持文件:Net60Beta2.sis(運(yùn)行平臺),CFAppLauncher.sis(啟動exe程序的工具),一個Log Viewer等。
2:DevCertRequest_windows.exe:到這里(direct link)直接下載,然后安裝。這個程序是用來生成.csr,.key等文件的。(具體的做法在FiveLabsNet60的幫助文件里有)
?? 2.1:輸出文件名隨意寫,無后綴。Next
?? 2.2:'ACS Pub ID available '里面選擇 “No”;KeyFile可以隨便,比如c:\Kokia602.key;并且設(shè)置一個password。這個在生成.sisx簽名時用到。Next
?? 2.3:獲得“EMEI”,在手機(jī)上輸入“*#06#”就可以獲得一個15-20位的序列號。Next
?? 2.4:選擇所有“Application Capabilities”。Next
這個步驟的主要目的是根據(jù)你自己的手機(jī)序列號生產(chǎn)一個待驗(yàn)證的csr文件。
3:Symbian Signed:這是一個數(shù)字簽名的東西,先到這個網(wǎng)站注冊一個帳戶。然后再“My Symbian Signed”下找“Open Signed”(以前不是這個名字,很多教程上都寫的是“'Developer Certificates”),然后在“Request”子菜單下邊先提交你的.cer文件,然后再“MyDevCerts”下下載驗(yàn)證之后的.cer文件。有效期3年。
這個步驟主要的目的是產(chǎn)生一個有效的數(shù)字簽名文件,給你想要安裝的程序做數(shù)字簽名
4:signsis.exe(到網(wǎng)上下載去吧):這個就是用來給程序制作數(shù)字簽名的工具。這是一個命令行工具,命令如下:signsis -s "c:\Program Files\Red Five Labs\Net60 Beta 2\Net60Beta2.sis" Net60Beta2.sisx "NokiaN602.cer" "NokiaN602.key" password
其中第一個參數(shù)是要簽名的源程序,第二個是簽名之后的程序名字,第三個是Symbian Signed驗(yàn)證之后的cer文件,第四個是生成.csr文件用到的password
這一步主要是產(chǎn)生具體的數(shù)字簽名程序。有了這個程序,就可以把它安裝在手機(jī)上了。
5:genesis.exe(已經(jīng)Net60Beta2安裝目錄里面了)(可選):這一個是用來把DotNet的exe程序包裝成sis文件的工具。然后再把sis文件做成sisx文件(如上第3、4步所作),然后就可以安裝在手機(jī)上了。(命令較復(fù)雜,genesis.exe /svg:helloworld.svg /shortcaption:HWorld /longcaption:"Hello World" /version:1.0 /vendor:"RedFiveLabs" /binary:"HelloWorld" /UID3:0xe1231234 /epoc32Root:dso)。之所以說這是可選的,原因就是你也可以不知作成sisx文件,因?yàn)?/span>----
6:CFAppLauncher.sis(已經(jīng)Net60Beta2安裝目錄里面了)(可選):在安裝Net60Beta2.msi時就有了,這個和Net60Beta2.sis一樣,也需要先制作簽名(第3、4步),然后安裝到手機(jī)上。這一個可以和第5步交叉使用:如果你只是想測試,可以不必把exe程序做成sis—>sisx文件,直接把exe文件copy到手機(jī)上,用這個CFAppLauncher來加載exe程序執(zhí)行就可以了。
注意:如果想簡單一點(diǎn),不注冊自己的Symbian Signed賬戶,網(wǎng)上也有提供第3、4步合并在一起的一個有UI的工具“證書簽名專家v2.2.1”(就是他事先已經(jīng)申請了一個用戶,給你在后臺執(zhí)行request,下載cer文件,執(zhí)行signsis命令產(chǎn)生sisx文件等)。
?
安裝運(yùn)行平臺:
其實(shí),在把數(shù)字簽名搞定之后,剩下的基本上就很簡單了。把制作好的Net60Beta2.sisx文件copy到手機(jī)上,安裝就可以了。不過要注意的是,必須安裝到手機(jī)卡上,不能安裝在額外的存儲卡上。
開發(fā)一個新程序HelloWorld:
打開vs2003或者vs2005,新建 “SmartPhone2003”(如果沒有,請先安裝Windows Mobile 6的SDK)(我嘗試過wm6類型的項(xiàng)目,不能運(yùn)行)類型的項(xiàng)目“HelloWorld”。
在窗口上拖上去一個Label,Text值為“HelloWorld”。
加一個菜單,Exit。代碼:this.Close(); 就是關(guān)閉命令而已。
編譯,完成。
運(yùn)行HelloWorld :
1:如果要發(fā)布這個HelloWorld程序,制作安裝程序,就請按照第5步,把exe程序—>sis,然后按照3、4步,在轉(zhuǎn)化成sisx程序。Copy到手機(jī),安裝執(zhí)行。
2:如果只是想測試一下,安裝CFAppLauncher到手機(jī)(一次就可以了),然后直接copy生成的exe文件,到手機(jī)的“c:\Data\FiveLabs\App”目錄下邊。啟動CFAppLauncher,就可以運(yùn)行exe程序了。
查看運(yùn)行日志:
在手機(jī)的“c:\Data\FiveLabs\Log”目錄里有程序運(yùn)行的日志。把日志copy出來,放到電腦上的“C:\Temp”目錄下,然后運(yùn)行Log Viewer(安裝redfivelabs時就有了)就可以看見了。
卸載:
exe不用卸載,刪除即可。
Sisx文件需要卸載
?
問題:
速度慢;
vs2008尚未測試;
.net cf2還不能支持;
….
轉(zhuǎn)載于:https://www.cnblogs.com/jailu/archive/2008/02/03/1063473.html
總結(jié)
以上是生活随笔為你收集整理的[转]DotNet for Symbian平台 (Nokia,Sony,Motorola等手机)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

- 上一篇: 理解 Delphi 的类(十一) - 深
- 下一篇: 实验迁移通知