基于Symbian OS的本地化技術(shù)研究
一、引言
Symbian OS是一種開放、非常健壯的嵌入式操作系統(tǒng),它由Symbian公司開發(fā)。Symbian OS是針對未來無線互聯(lián)手持設(shè)備的新一代移動系統(tǒng)平臺,其目標(biāo)是把Symbian OS開發(fā)成為未來手機的產(chǎn)業(yè)標(biāo)準(zhǔn)。所以它對應(yīng)用程序的本地化提供了便利的條件和強有力的支持。Symbian OS內(nèi)置了Unicode編碼,應(yīng)用程序的開發(fā)架構(gòu)也將源文件與資源文件相分離。因此對于拉丁字符集,使用不同的語言文本改編應(yīng)用程序應(yīng)該只需改變資源文件,因為用戶可視文本不會嵌入到源文件當(dāng)中。但對于非拉丁語言,比如生產(chǎn)使用漢語、日語、朝鮮語等的應(yīng)用程序,文本的本地化要復(fù)雜一些,需要做一些額外的工作。下面以Symbian OS的應(yīng)用開發(fā)平臺Series 60為例,在重點講述Symbian OS對本地化支持的基礎(chǔ)上,對應(yīng)用程序的漢化加以解決。
二、 Symbian OS應(yīng)用開發(fā)平臺Series 60介紹
由于各廠商之間在用戶接口、硬件設(shè)計及互通性上存在的差別及其自身的革新,Symbian OS給移動設(shè)備制造商提供很大的靈活性。這種靈活性可以使用同一個內(nèi)核的操作系統(tǒng)設(shè)計出不同的產(chǎn)品,而且給設(shè)備制造商提供了更新空間,從而使得其在移動市場上支持更多的設(shè)備。Series 60平臺正是基于Symbian OS的這種靈活性,在其之上進行構(gòu)建。如圖1所示。
Series60平臺的內(nèi)核是Symbian OS GT(Generic Technology,通用技術(shù))層。提供了擴展的Avkon UI層、基于Avkon和Uikon庫的完整應(yīng)用程序套件以及第三方GUI應(yīng)用程序所使用的用戶接口和框架API。
三、 Series 60開發(fā)平臺下應(yīng)用程序架構(gòu)對本地化的支持
3.1 應(yīng)用程序的文件架構(gòu)
在開發(fā)應(yīng)用程序之前必須了解Series60平臺的應(yīng)用程序文件架構(gòu)。Carbide C++是當(dāng)前諾基亞公司為自己的S60系列智能手機應(yīng)用程序開發(fā)提供的新一款I(lǐng)DE工具。在利用Carbide C++創(chuàng)建一項工程后(例如工程名為HelloWorld,程序架構(gòu)為單視圖),我們能看到如下的應(yīng)用程序文件架構(gòu):
(1)data文件夾中的.rss文件與src中的.cpp源文件相分離,為實現(xiàn)應(yīng)用程序本地化提供了便利的條件。后面的內(nèi)容將詳細剖析它的具體實現(xiàn)機制。
(2)Aif文件夾中包含可選的應(yīng)用程序信息文件(.aif文件),用于指定應(yīng)用程序的本地化圖標(biāo)、標(biāo)題及系統(tǒng)特性(如可嵌入性)。
評論