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