基于 Windows Mobile 的 Pocket PC 和 Smartphone 的開(kāi)發(fā)工具簡(jiǎn)介Microsoft Corporation 2003 年 8 月 適用于: 摘要:本文主要介紹為基于 Windows Powered 和 Windows Mobile 的設(shè)備開(kāi)發(fā)應(yīng)用程序的工具和支持技術(shù)。文中不僅列出了各種工具支持的平臺(tái),還提供了一些開(kāi)發(fā)方案以及針對(duì)各種方案選擇工具和技術(shù)的指南。(本文包含一些指向英文站點(diǎn)的鏈接。) 目錄簡(jiǎn)介 自 1996 年推出 Microsoft® Windows® CE 操作系統(tǒng),以及之后不久推出 Handheld PC 1.0 版產(chǎn)品以來(lái),Microsoft 已經(jīng)提供了很多功能強(qiáng)大且日益專(zhuān)業(yè)化的工具,幫助開(kāi)發(fā)人員在基于 Windows Mobile™ 的平臺(tái)上滿(mǎn)足特定的需求并完成應(yīng)用程序任務(wù)。目前,Microsoft 又推出多種工具軟件包,用于在基于 Windows Mobile 的 Pocket PC 和 Smartphone 上構(gòu)建應(yīng)用程序。 本白皮書(shū)向開(kāi)發(fā)人員介紹了 Windows Mobile 應(yīng)用程序開(kāi)發(fā)工具的現(xiàn)狀以及這些工具的發(fā)展前景。它可以幫助開(kāi)發(fā)人員確定哪些開(kāi)發(fā)工具最適合他們的需求,各種工具應(yīng)該在什么情況下使用,以及在開(kāi)始移動(dòng)應(yīng)用程序項(xiàng)目之前,移動(dòng)應(yīng)用程序開(kāi)發(fā)人員需要做哪些準(zhǔn)備工作。本文還對(duì)比了幾種工具的優(yōu)點(diǎn)。 雖然目前移動(dòng)開(kāi)發(fā)工具的選擇多種多樣,而且還將繼續(xù)增加,但 Microsoft 的最終目標(biāo)是創(chuàng)建一個(gè)統(tǒng)一的開(kāi)發(fā)環(huán)境以滿(mǎn)足所有移動(dòng)應(yīng)用程序開(kāi)發(fā)的需要,包括將移動(dòng)開(kāi)發(fā)工具集成到 Microsoft Visual Studio® .NET 的核心產(chǎn)品中。 移動(dòng)應(yīng)用程序開(kāi)發(fā)工具以下幾節(jié)概要介紹目前可在基于 Windows Mobile 的 Pocket PC 和 Smartphone 上使用的工具。閱讀工具的說(shuō)明時(shí),開(kāi)發(fā)人員應(yīng)該將這些工具放在使用本機(jī)、托管或服務(wù)器端代碼的背景下來(lái)考慮:
eMbedded Visual Tools 3.0Microsoft eMbedded Visual Tools 3.0 為構(gòu)建移動(dòng)應(yīng)用程序提供了一個(gè)入口級(jí)的集成開(kāi)發(fā)環(huán)境,包括必要的編譯器、調(diào)試和平臺(tái)文檔。eMbedded Visual Tools 3.0 包括 Microsoft eMbedded Visual C++® 3.0 (eVC 3.0) 和 eMbedded Visual Basic® 3.0 (eVB 3.0)。這兩種工具都是獨(dú)立的開(kāi)發(fā)環(huán)境,不需要運(yùn)行任何其他開(kāi)發(fā)環(huán)境,如 Microsoft Visual Studio 或 Visual Studio .NET。 要開(kāi)發(fā)基于 Windows Mobile 的設(shè)備,所有工具都需要使用目標(biāo)設(shè)備的平臺(tái)軟件開(kāi)發(fā)套件(SDK)。eMbedded Visual Tools 3.0 的 2002 版包括用于目前所有 Windows Mobile 設(shè)備(包括 Pocket PC 2002 和 Smartphone 2002)的 SDK。非 Windows Mobile 系列的設(shè)備的 SDK 應(yīng)該從設(shè)備的制造商處獲得。 您可以從 http://www.microsoft.com/windowsmobile/resources/downloads/developer/default.mspx 免費(fèi)下載 eMbedded Visual Tools 3.0 - 2002 Edition。 有關(guān) eMbedded Visual Tools 的詳細(xì)信息,請(qǐng)參閱 http://msdn.microsoft.com/vstudio/device/embedded/default.asp。 eMbedded Visual C++ 3.0Microsoft eMbedded Visual C++ 3.0 開(kāi)發(fā)系統(tǒng)為基于 Windows Mobile 的開(kāi)發(fā)提供了本機(jī)代碼的 C++ 編譯器。如果安裝了正確的 SDK,可以用它為所有基于 Windows CE 2.11 和 3.0 的設(shè)備開(kāi)發(fā)應(yīng)用程序。eMbedded Visual C++ 調(diào)試器通過(guò) Microsoft ActiveSync® 使用有線(xiàn)、無(wú)線(xiàn) LAN 或基座連接工作。 此外,它還提供了可用于 Pocket PC 2002 和 Smartphone 2002 設(shè)備的軟件仿真器。在發(fā)布 Pocket PC 2002 時(shí),Microsoft 推出了一種用于 Pocket PC 2002 SDK 的新型仿真器,它更接近于真正的基于 Windows Mobile 的設(shè)備。這種新型的仿真器可以在虛擬的 PC Shell 中運(yùn)行真正的 Windows CE 二進(jìn)制文件。Smartphone 2002、Pocket PC 2003 和 Smartphone 2003 的 SDK 也使用這種新型的仿真器。 eMbedded Visual C++ 可用于:
eMbedded Visual Basic 3.0eMbedded Visual Basic 3.0 支持使用 Visual Basic 語(yǔ)言編寫(xiě)的應(yīng)用程序,得到的 P 代碼在運(yùn)行時(shí)解釋。盡管大多數(shù)基于 Windows Mobile 的設(shè)備具備內(nèi)置的功能,以運(yùn)行使用 eMbedded Visual Basic 構(gòu)建的應(yīng)用程序,但一些自定義的基于 Windows CE 的嵌入式硬件平臺(tái)可能不包含 eMbedded Visual Basic 運(yùn)行時(shí)。Pocket PC 的 Windows Mobile 2003 軟件就不包含 Visual Basic 運(yùn)行時(shí),但可以從 Windows Mobile Developer Downloads 下載。 eMbedded Visual Basic 是一種腳本語(yǔ)言,而不是具備全部功能的 Visual Basic 語(yǔ)言。因此,Visual Basic 6.0 中為桌面系統(tǒng)提供的很多語(yǔ)言功能在 eMbedded Visual Basic 3.0 中都不受支持。例如:
eMbedded Visual Basic 不能用于為基于 Windows Mobile 2002 的 Smartphone 開(kāi)發(fā)應(yīng)用程序。鑒于此,加之其他一些原因(包括為了進(jìn)一步發(fā)展壯大 Visual Basic .NET 開(kāi)發(fā)團(tuán)體),eMbedded Visual Basic 技術(shù)已逐漸被淘汰,取而代之的是功能更加強(qiáng)大的 Visual Basic .NET 語(yǔ)言。Microsoft 建議開(kāi)發(fā)人員使用 Visual Basic .NET 創(chuàng)建所有新的 Pocket PC 應(yīng)用程序,使用 eMbedded Visual Basic 維護(hù)早期版本的應(yīng)用程序。 eMbedded Visual C++ 4.0Microsoft eMbedded Visual C++ 4.0 支持新的基于 Windows CE. NET 4.2 設(shè)備的開(kāi)發(fā),而且安裝發(fā)布的 Service Pack 之后,支持用于 Pocket PC 和 Smartphone 的 Windows Mobile™ 2003 軟件(以前的代碼名為“Ozone”)。eMbedded Visual C++ 4.0 是使用本機(jī)代碼在 Windows CE .NET 4.2 上為移動(dòng)或嵌入式設(shè)備開(kāi)發(fā)應(yīng)用程序的理想軟件。eMbedded Visual C++ 4.0 的增強(qiáng)功能包括:
您可以從 Developer Downloads 下載 eMbedded Visual C++ 4.0、eVC 4.0 Service Pack 2,以及用于 Pocket PC 的 Windows Mobile 2003 軟件的 SDK。 請(qǐng)從 Windows Mobile 2003-based Smartphones Downloads 下載 Smartphone 2003 SDK。 Visual Studio .NET 2003 的 Smart Device Programmability 功能Visual Studio .NET 的 Smart Device Programmability (SDP) 功能(以前稱(chēng)作 Smart Device Extensions [SDE])可以幫助開(kāi)發(fā)人員利用 Microsoft .NET Compact Framework 編寫(xiě)移動(dòng)應(yīng)用程序,從而在連接或斷開(kāi)的情況下啟用分布式的移動(dòng)計(jì)算。使用 .NET Compact Framework 中提供的大量類(lèi)庫(kù),開(kāi)發(fā)人員編寫(xiě)應(yīng)用程序的速度可以比使用傳統(tǒng)工具快得多。 使用 Visual Studio .NET 2003,開(kāi)發(fā)人員可以使用在桌面系統(tǒng)開(kāi)發(fā)中用到的相同工具和技術(shù)來(lái)開(kāi)發(fā) Pocket PC 2002(如果具備相應(yīng)的 SDK)以及 Pocket PC 和 Smartphone 2003。它將安裝 .NET Compact Framework,這是專(zhuān)門(mén)為資源有限的設(shè)備設(shè)計(jì)的。開(kāi)發(fā)人員可以使用新的 C# 語(yǔ)言或者 Visual Basic .NET 語(yǔ)言來(lái)開(kāi)發(fā)移動(dòng)和嵌入式設(shè)備。它還可以很好地用于使用 XML Web Service 或 ADO.NET 的應(yīng)用程序。 Visual Studio .NET 2003 可用于:
有關(guān) Visual Studio .NET 的 Smart Device Programmability 功能的詳細(xì)信息,請(qǐng)參閱 Smart Device Programmability。 ASP.NET Mobile ControlsASP.NET Mobile Controls(以前稱(chēng)作 Microsoft Mobile Internet Toolkit [MMIT]),是對(duì) Smart Device Programmability 和 .NET Compact Framework 的補(bǔ)充。ASP.NET Mobile Controls 通過(guò)啟用 ASP.NET 將標(biāo)記發(fā)送到多種多樣的移動(dòng)設(shè)備中,從而擴(kuò)展了 .NET Compact Framework 和 Visual Studio .NET 構(gòu)建移動(dòng) Web 應(yīng)用程序的功能。使用這種方法,開(kāi)發(fā)人員可以利用 Visual Studio .NET 構(gòu)建一個(gè)移動(dòng) Web 應(yīng)用程序,這個(gè)程序可以自動(dòng)調(diào)整其頁(yè)面呈現(xiàn)方式以適應(yīng)各種設(shè)備,如啟用 Internet 的移動(dòng)電話(huà)、尋呼機(jī)和 PDA(如 Pocket PC 等)。它還能簡(jiǎn)化開(kāi)發(fā)任務(wù),因?yàn)樗鸭傻?Visual Studio .NET 集成設(shè)計(jì)環(huán)境 (IDE) 中,允許開(kāi)發(fā)人員通過(guò)將控件拖到移動(dòng) Web 窗體上來(lái)構(gòu)建移動(dòng) Web 應(yīng)用程序。 ASP.NET 不會(huì)在客戶(hù)端設(shè)備上安裝任何組件。相反,它會(huì)利用服務(wù)器端邏輯,以適應(yīng)特定設(shè)備的 Web 瀏覽器的呈現(xiàn)方式。它可以生成無(wú)線(xiàn)標(biāo)記語(yǔ)言 (WML)、HTML 和精簡(jiǎn)的 HTML (cHTML)。 除了適應(yīng)性很強(qiáng)的 Web 頁(yè)面呈現(xiàn)之外,ASP.NET 還為實(shí)現(xiàn)自定義和可擴(kuò)展提供了豐富的框架,并提供了一種簡(jiǎn)單的擴(kuò)展控件的方法,以使控件可以適應(yīng)即將上市的各種新型設(shè)備。另外,ASP.NET 還允許開(kāi)發(fā)人員在同一編程模型內(nèi)控制針對(duì)特定設(shè)備或設(shè)備類(lèi)別的呈現(xiàn)方式,允許開(kāi)發(fā)人員輕松地添加對(duì)新設(shè)備的支持,而不必重新編寫(xiě)他們的移動(dòng) Web 應(yīng)用程序。 ASP.NET Mobile Controls 可用于:
注意:ASP.NET Mobile Controls 不需要安裝任何客戶(hù)端。但是,目標(biāo)設(shè)備必須具備客戶(hù)端 Web 瀏覽器。 有關(guān) Microsoft ASP.NET Mobile Controls 的詳細(xì)信息,請(qǐng)參閱 Mobile Web Development with ASP.NET。 Microsoft SQL Server 2000 Windows CE Edition 2.0 版Microsoft SQL Server 2000 Windows CE Edition (SQL Server CE) 2.0 版是精簡(jiǎn)的數(shù)據(jù)庫(kù),可用于迅速開(kāi)發(fā)將企業(yè)數(shù)據(jù)管理能力擴(kuò)展至移動(dòng)設(shè)備的應(yīng)用程序。SQL Server CE 是一種功能強(qiáng)大的工具,它支持用戶(hù)熟悉的結(jié)構(gòu)化查詢(xún)語(yǔ)言 (SQL) 語(yǔ)法,并提供與 SQL Server 一致的開(kāi)發(fā)模型和 API,從而使移動(dòng)應(yīng)用程序的開(kāi)發(fā)更加簡(jiǎn)單易行。 SQL Server CE 引擎提供了一套基本的關(guān)系數(shù)據(jù)庫(kù)功能,如優(yōu)化查詢(xún)處理器和對(duì)事務(wù)及各種數(shù)據(jù)類(lèi)型的支持,同時(shí)它還維護(hù)保留重要系統(tǒng)資源的精簡(jiǎn)內(nèi)存空間。遠(yuǎn)程數(shù)據(jù)訪(fǎng)問(wèn)和合并復(fù)制可以確??煽康匕l(fā)送 SQL Server 數(shù)據(jù)庫(kù)中的數(shù)據(jù);既可以脫機(jī)操作,又可以在日后與服務(wù)器同步,這些優(yōu)勢(shì)使得 SQL Server CE 成為用于移動(dòng)和無(wú)線(xiàn)環(huán)境的理想軟件。 SQL Server CE 2.0 可以通過(guò) Visual Studio .NET 與 .NET Compact Framework 集成,從而簡(jiǎn)化了智能設(shè)備的數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)。使用新的 SQL Server CE 數(shù)據(jù)提供程序通過(guò)公共語(yǔ)言運(yùn)行庫(kù)管理代碼,移動(dòng)應(yīng)用程序開(kāi)發(fā)人員可以在斷開(kāi)的情況下,建立具有脫機(jī)數(shù)據(jù)管理功能的高度可擴(kuò)展應(yīng)用程序。 在以下情況下,可以將 SQL Server CE 作為開(kāi)發(fā)工具的補(bǔ)充:
有關(guān) SQL Server CE 的詳細(xì)信息,請(qǐng)參閱 Build Better Applications with SQL Server CE 2.0。 工具對(duì)比表下表概要介紹了不同工具的各種功能。
在短期內(nèi),開(kāi)發(fā)基于 Windows Mobile 設(shè)備的最常用工具仍是用于 Pocket PC 2000 和 2002 的 eMbedded Visual Tools 3.0、用于 Smartphone 2002 的 eMbedded Visual C++ 3.0,以及用于 Pocket PC 和 Smartphone 2003 的 eMbedded Visual C++ 4.0。最終,Visual Studio .NET 及其提供的 Smart Device Programmability (SDP) 功能將成為所有基于 Windows Mobile 設(shè)備的開(kāi)發(fā)平臺(tái)。 服務(wù)器端代碼還是客戶(hù)端代碼?使用服務(wù)器端代碼還是使用客戶(hù)端代碼,取決于幾個(gè)條件。應(yīng)用程序的方案雖然各不相同,但是這些條件能夠幫助您為應(yīng)用程序的用戶(hù)選擇最佳的解決方案。
在開(kāi)發(fā)基于 Windows Mobile 的 Pocket PC 和 Smartphone 之前,您需要準(zhǔn)備什么呢?在開(kāi)發(fā) Pocket PC 和 Smartphone 之前,您要準(zhǔn)備的內(nèi)容取決于您要開(kāi)發(fā)什么,以及要開(kāi)發(fā)的設(shè)備。在大多數(shù)情況下,您需要具備集成的開(kāi)發(fā)環(huán)境,以及要開(kāi)發(fā)的設(shè)備的 SDK 或擴(kuò)展。幸運(yùn)的是,您可以在一臺(tái)計(jì)算機(jī)上開(kāi)發(fā)所有的基于 Windows Mobile 的設(shè)備,因?yàn)樗泄ぞ叨伎梢栽谶@兩類(lèi)設(shè)備上共存。有關(guān)我們推薦的安裝順序,請(qǐng)參閱附錄。 目前,eMbedded Visual Tools IDE 和所需的 SDK 都是免費(fèi)的,可以通過(guò) Web 下載。 哪種工具 . . . 何時(shí)?性能、控制或資源對(duì)我來(lái)說(shuō)非常重要。例如,我要編寫(xiě)一個(gè)游戲、設(shè)備驅(qū)動(dòng)程序或者一個(gè) Active X 組件…… 如果您打算開(kāi)發(fā)運(yùn)行 Windows Mobile 2003 軟件的 Pocket PC 和 Smartphone,只需從 Developer Downloads 下載 eMbedded Visual C++ 4.0 Service Pack 2 和 Pocket PC 2003 SDK。您還可以使用 Smartphone 2003 SDK 為 Smartphone 開(kāi)發(fā) Windows Mobile™ 2003 軟件。 要支持早期的 Pocket PC、Pocket PC 2002 和 Smartphone 2002 設(shè)備,您還需要下載 eMbedded Visual Tools 3.0 - 2002 Edition。 如果您需要維護(hù)開(kāi)發(fā) Handheld PC Professional Edition、Handheld PC 2000 或 Palm Size PC 1.2 的應(yīng)用程序,可以下載 SDKs for eMbedded Visual Tools 3.0。 我要在一個(gè)安全、可靠的環(huán)境中快速開(kāi)發(fā)應(yīng)用程序,我可能要訪(fǎng)問(wèn) Web 服務(wù)…… 我要編寫(xiě)一個(gè)具有最大的代碼可移植性的客戶(hù)端應(yīng)用程序…… 我要利用自己掌握的 Visual Studio .NET 2003、Visual C#、Visual Basic.Net 或 .NET Framework 知識(shí)…… 我們建議您使用 Visual Studio .NET 2003 中的 Smart Device Programmability 功能。.NET Compact Framework 是內(nèi)置到基于 Windows Mobile 2003 的 Pocket PC 和 Smartphone 中的。它可以用于 Pocket PC 2002,但必須安裝到設(shè)備上。 我要開(kāi)發(fā) Smartphone 2002…… 您應(yīng)該下載 eMbedded Visual Tools 3.0 - 2002 Edition。 如果您希望在真正的設(shè)備上測(cè)試應(yīng)用程序,但是您所在的地區(qū)尚無(wú) Smartphone,或者 Smartphone 不支持開(kāi)發(fā),您可以購(gòu)買(mǎi) Smartphone Developer Kit。 我要使用一個(gè)代碼庫(kù)開(kāi)發(fā) Pocket PC 2002 和 Pocket PC 2003…… 您可以用兩種方法構(gòu)建您的應(yīng)用程序:
我要使用一個(gè)代碼庫(kù)開(kāi)發(fā) Smartphone 2002 和 Smartphone 2003…… .NET Compact Framework 不能用于 Smartphone 2002。要編寫(xiě)一個(gè)代碼庫(kù)以在 Smartphone 2002 和 Smartphone 2003 上運(yùn)行,您必須使用本機(jī)代碼并使用 eMbedded Visual C++ 3.0 編譯您的應(yīng)用程序。 我要維護(hù)用 eMbedded Visual Basic 編寫(xiě)的應(yīng)用程序…… 您應(yīng)該下載 eMbedded Visual Tools 3.0 - 2002 Edition,它包含 eMbedded Visual Basic 的開(kāi)發(fā)環(huán)境、仿真器和 SDK。 請(qǐng)考慮使用 Visual Basic .NET 2003 將應(yīng)用程序?qū)С龅?.NET Compact Framework。 我要為可以在瘦客戶(hù)端環(huán)境中運(yùn)行的各種移動(dòng)設(shè)備編寫(xiě)應(yīng)用程序。我要維護(hù)用 eMbedded Visual Basic 編寫(xiě)的應(yīng)用程序…… 您應(yīng)該在 Visual Studio .NET 2003 中使用 ASP.Net Mobile Controls。有關(guān)詳細(xì)信息,請(qǐng)參閱 Mobile Web Development with ASP.NET。 小結(jié)Microsoft 致力于在移動(dòng)設(shè)備市場(chǎng)取得長(zhǎng)期成功,并幫助開(kāi)發(fā)人員為他們的企業(yè)用戶(hù)和客戶(hù)提供功能豐富、強(qiáng)大的移動(dòng)應(yīng)用程序。目前的基于 Windows Mobile 的應(yīng)用程序開(kāi)發(fā)語(yǔ)言提供了一系列令人難以置信的能力和靈活性。 隨著新的移動(dòng)設(shè)備不斷問(wèn)世,Microsoft 將繼續(xù)推出更加尖端、更加統(tǒng)一的開(kāi)發(fā)工具,幫助開(kāi)發(fā)人員快速地設(shè)計(jì)和開(kāi)發(fā)利用 Web 服務(wù)等技術(shù)的新的應(yīng)用程序,以及利用基于 .NET 集成能力的系統(tǒng)。有了這些實(shí)用的工具,移動(dòng)應(yīng)用程序開(kāi)發(fā)團(tuán)體將不斷為快速發(fā)展的市場(chǎng)提供滿(mǎn)足市場(chǎng)要求的應(yīng)用程序。 附錄:移動(dòng)應(yīng)用程序開(kāi)發(fā)工具的推薦安裝順序為確保在 Windows Mobile 軟件的各種開(kāi)發(fā)工具之間獲得最大的互操作性,我們建議您按照以下順序安裝這些工具和 SDK。如果您沒(méi)有或者不需要其中的某種工具,則不必專(zhuān)門(mén)來(lái)獲取這種工具,因?yàn)檫@不會(huì)影響其他工具之間的互操作。 以下安裝步驟要求您使用具有本機(jī)管理員權(quán)限的帳戶(hù)登錄到計(jì)算機(jī)。
|
|
|