[S60]Symbian 應用軟件開發、測試與 S60 平臺安全常見問題問答
|
|
||||||||||||||||||||
|
本常見問題問答由 WoSign 根據 Forum Nokia(諾基亞開發者論壇)以下文章翻譯整理,請同時參考英文原文: http://forum.nokia.com/main/technical_services/testing/index.html 軟件測試是一個應用軟件開發過程中最主要的環節,一般包括模塊測試、系統測試、可用性測試和權威認證測試 ( 如: Symbian Signed 認證測試和 Java Veriified 認證測試 ) 。所有通過諾基亞銷售渠道推廣的移動應用軟件都必須通過 Symbian Signed 認證測試或 Java Veriified 認證測試。請同時參考 諾基亞測試標準和其他重要文檔 。 Symbian Signed 認證已經成為移動應用軟件測試和認證的事實工業標準,采用業界廣泛接受的軟件質量規范來推動基于 Symbian 操作系統的應用軟件的開發和內容的開發。 測試和認證主要是為了保證 Symbian 開發平臺的安全和最終用戶的更加安全。從 Symbian 操作系統 V9.x(S60 第 3 版 ) 開始,“ capability( 能力 ) ”模式限制了許多敏感 API 的訪問,一些“能力”只能通過 Symbian Signed 認證才能獲得,而有些“能力”還需要手機廠商的認證。 Symbian Signed 認證主要流程如下圖所示,首先在 Symbiansigned.com 網上注冊用戶,再申請購買 TC Publisher ID 認證證書,再簽名 SIS 文件,再提交已經簽名的文件給 Symbian Signed 指定的測試公司測試,測試通過后從 Symbiansigned 網站取回由測試公司重新簽名的文件,就可以部署到手機中安全運行了。 1. S60 第 3 版的應用軟件簽名是強制要求嗎? 答:是的。 S60 第 3 版的應用軟件是必須要數字簽名才能運行的,是強制要求。請注意:數字簽名與測試認證是兩碼事,數字簽名是必須的,而測試認證不是必須的。您可以使用自簽證書 (SDK 生成 ) 簽名,或使用 TC Publisher ID(Symbian Signed 認證證書 ) 來簽名應用軟件。
答:對于 S60 第 3 版,應用軟件簽名是必須的,否則不能成功安裝到手機上。如果應用軟件不需要任何能力 (capability) ,則可以使用 SDK 生成自簽證書;如果應用軟件需要能力,則在軟件開發和自測過程中需要申請 Symbian 開發者證書來簽名應用軟件;而對于最終發布的商用應用軟件,有些能力必須通過 Symbian Signed 認證來授權,只有通過 Symbian Signed 認證才能訪問某些能力。同時,手機廠商或移動運營商的應用軟件市場推廣也要求應用軟件已經通過 Symbian Signed 認證。 三種證書簽名后的效果不同在于: (1) 使用自簽證書簽名 • 可以使用 SDK 帶的工具來生成自簽證書或直接使用 Carbide 中的自簽證書; (2) 使用開發者證書簽名 • 可以簽名 SIS 文件包 (3) 通過 Freeware 認證 • 開發者通過 Symbian Signed Freeware 認證通道提交應用軟件獲得認證 ( 如果軟件通過測試 ) (4) 通過 Symbian Signed 認證 • 開發者通過 Symbian Signed 認證通道提交應用軟件獲得認證 ( 如果軟件通過測試 ) (5) 自我認證 (Self Certified) • 開發者從 Symbian 獲得自我認證資格,自己測試和簽名應用軟件 3. 為何我需要購買 TC Publisher ID ( Symbian Signed 認證證書 )? 答:如果您要申請 Symbian Signed 認證,則一定要先購買 TC Publisher ID (免費軟件Freeware開發者除外) 。在提交 Test house 測試之前,您需要使用 TC Publisher ID 簽名 SIS 文件,用于保證軟件確實來自軟件開發商和不會在發送過程中被非法篡改。 如果您需要申請支持某些重要的能力的 Symbian 開發者證書,也需要先有 TC Publisher ID 。如果您希望在多款手機上測試您的應用軟件,也需要先有 TC Publisher ID( 僅針對 S60 第 3 版 ) 。
答: Symbian Signed 認證證書 (TC Publisher ID) 費用為 US$200( 人民幣 1600 元 )( 原 VeriSign ACS Publisher ID 價格為 US$350/ 人民幣 2800 元 ) 。 WoSign 為 TC Trustcenter 唯一指定的中國區銷售代理商 、輔助身份驗證機構和中文技術支持中心。 不同的應用軟件測試費用不一樣,請參考: Test House information 有詳細的收費說明。此測試費用與其他類似測試服務來講是非常優惠的,而且 Symbian 正在努力降低此費用,將會推出新的測試工具軟件來進一步降低測試費用。
答:如果您需要某些能力并需要在一臺手機上測試,則您需要在 Symbian Signed 網站(Request DevCerts)申請 Symbian 開發者證書 ( 僅針對 S60 第 3 版 ) 。請參考Symbian Signed網站提供的 "Symbian開發者證書申請流程(中文)" 申請開發者證書。請注意: Symbian 開發者證書只能在申請時指定的手機上測試使用。申請條件依據希望在多少臺手機上測試和希望獲得哪些能力而不同,具體規定如下表:
答: TC Publisher ID 有效期為一年,而開發者證書有效期為 6 個月。在申請開發者證書和使用開發者證書簽名時,請確保您的 TC Publisher ID 是在有效期內的。您可以雙擊證書文件 (.cer) 查看證書有效期。如果TC Publisher ID 認證證書已經過期,請重新購買新證書。
答:如果應用軟件要求某些能力,則在安裝過程中會顯示如下圖示信息(不同的軟件可能顯示不同的信息),詢問用戶是否允許(由于本文從英文原文翻譯,沒有中文顯示信息,請參考您的手機的中文警告信息,以下同)。
答:使用不同的簽名證書簽名,會顯示不同的警告信息: (1) 使用自簽證書簽名 顯示“安全警告:應用軟件不可信任,也許會損害您的手機”
(2) 通過 Freeware 認證 下圖已經涂掉 Freeware 的名稱,顯示“此應用軟件為免費軟件,不得用于商業銷售。如果您已經付款購買,請發 Email 到: symbiansigned@symbian.com ,并告之您從哪里獲得此軟件。 ”
(3) 使用開發者證書簽名 顯示“此應用軟件處于開發測試階段,如果您繼續安裝此軟件可能會帶來損害您的手機,要繼續安裝嗎?”而一旦用戶選擇繼續安裝,則不會有其他安全警告。
(4) 通過 Symbian Signed 認證 不僅沒有任何安全警告,而且不需要用戶確認和同意應用軟件中使用的能力,大大簡化安裝和方便用戶使用。
答:在 S60 第 3 版開發包的幫助文檔中有詳細說明調用哪些 API 需要什么能力,您可以通過 S60 仿真器來得到確認。當選中“ Enable EPOCWIND,OUT Logging ”和在 epoc.ini 中設置 PlatSecDiagnostics 為 ON 時,仿真器將在 Windows 臨時目錄中生成一個名為 epocwind.out 的文件,此文件中包含了應用軟件所需要的能力信息。
答: Nokia Vendor ID(VID) 用來保護系統的敏感區域,是 NOKIA 專用的,不會對任何其他方開放。也就是說,您不能訪問需要 VID 的 API 或函數。
答:不需要,除非您需要修改缺省的系統權限。
答:不需要。在消息庫中有一個類 MmsvAttachmentManager 可以原來完成此任務。
答:從一般目錄 ( nondata-caged ) 中移動 / 刪除 / 復制文件不需要。只有從 Data-caged 目錄 ( 如: /sys/bin, /private, 和 /resource ) 才需要。
答:需要 ALL - TCB (All minus TCB) 能力。
答: 如果您的應用軟件是通過 Symbian Signed 認證的,請檢查 S60 手機上的“工具” -> “設置” -> “安全” -> “證書管理”中是否有 Symbian B 根證書,并檢查手機日期和時間是否設置正確,同時檢查手機 SIM 卡是否插入和工作正常。
答:安裝應該是沒有問題的。但如果您的應用軟件僅通過某款手機的測試,則不能保證在其他手機上工作正常,推薦重新針對其他目標手機做測試。請注意:基于 S60 第 1 版和第 2 版開發的應用軟件不能在第 3 版手機上安裝,需要使用相應的 SDK 重新編譯您的軟件。
答: Unique Identifier (UID) 是系統為二進制文件 (EXE 或 DLL) 分配的唯一識別符,是為了防止可執行文件的相互干擾。對于 S60 第 3 版應用軟件需要重新申請 UID ,請參考: www.symbiansigned.com -> UIDs
答:下表能解釋什么情況下需要什么 UID range ,取決于您的應用軟件是使用什么證書簽名的:
答: S60 第 3 版缺省是不支持備份的,但您可以使用如下辦法備份和恢復您的應用軟件: 創建一個 XML 備份注冊文件: backup_registration.xml <?xml version="1.0" standalone="yes" ?> 把 "backup_registration.xml" 包括到您的項目包文件中 project .pkg : "backup_registration.xml"- |
posted on 2008-04-16 15:49 郭天文 閱讀(719) 評論(0) 編輯 收藏 引用 所屬分類: S60






