基於 Windows Mobile 的 Pocket PC 和 Smartphone 的開發工具簡介

來源:互聯網
上載者:User

Microsoft Corporation

2003 年 8 月

適用於:
    Microsoft eMbedded Visual Tools 3.0 - 2002 Edition
    Microsoft eMbedded Visual C++ 4.0 SP2
    Microsoft Visual Studio .NET
    Microsoft.NET Compact Framework
    Pocket PC 2002
    Pocket PC 2003
    Smartphone 2002
    Smartphone 2003

摘要:本文主要介紹為基於 Windows Powered 和 Windows Mobile 的裝置開發應用程式的工具和支援技術。文中不僅列出了各種工具支援的平台,還提供了一些開發方案以及針對各種方案選擇工具和技術的指南。(本文包含一些指向英文網站的連結。)

目錄

簡介
行動裝置 App程式開發工具
工具對比表
開發方案
小結
附錄:行動裝置 App程式開發工具的推薦安裝順序

簡介

自 1996 年推出 Microsoft Windows CE 作業系統,以及之後不久推出 Handheld PC 1.0 版產品以來,Microsoft 已經提供了很多功能強大且日益專業化的工具,協助開發人員在基於 Windows Mobile 的平台上滿足特定的需求並完成應用程式任務。目前,Microsoft 又推出多種工具軟體包,用於在基於 Windows Mobile 的 Pocket PC 和 Smartphone 上構建應用程式。

本白皮書向開發人員介紹了 Windows Mobile 應用程式開發工具的現狀以及這些工具的發展前景。它可以協助開發人員確定哪些開發工具最適合他們的需求,各種工具應該在什麼情況下使用,以及在開始行動裝置 App程式項目之前,行動裝置 App程式開發人員需要做哪些準備工作。本文還對比了幾種工具的優點。

雖然目前移動開發工具的選擇多種多樣,而且還將繼續增加,但 Microsoft 的最終目標是建立一個統一的開發環境以滿足所有行動裝置 App程式開發的需要,包括將移動開發工具整合到 Microsoft Visual Studio .NET 的核心產品中。

行動裝置 App程式開發工具

以下幾節概要介紹目前可在基於 Windows Mobile 的 Pocket PC 和 Smartphone 上使用的工具。閱讀工具的說明時,開發人員應該將這些工具放在使用本機、託管或伺服器端代碼的背景下來考慮:

  • 使用機器碼是為了獲得較高的效能,當您需要直接存取硬體或者資源有限的情況下使用。
  • 使用Managed 程式碼是為了開發以使用者介面為中心的應用程式,這種應用程式要求儘快面世或者要求開發速度很快。如果想輕鬆地訪問 Web 服務,也可以使用Managed 程式碼。
  • 使用伺服器端代碼是為了使用一個代碼集開發適用於多種裝置的應用程式,這需要保證裝置有足夠的資料頻寬。
eMbedded Visual Tools 3.0

Microsoft eMbedded Visual Tools 3.0 為構建行動裝置 App程式提供了一個入口級的整合式開發環境,包括必要的編譯器、調試和平台文檔。eMbedded Visual Tools 3.0 包括 Microsoft eMbedded Visual C++ 3.0 (eVC 3.0) 和 eMbedded Visual Basic 3.0 (eVB 3.0)。這兩種工具都是獨立的開發環境,不需要運行任何其他開發環境,如 Microsoft Visual Studio 或 Visual Studio .NET。

要開發基於 Windows Mobile 的裝置,所有工具都需要使用目標裝置的平台軟體開發套件(SDK)。eMbedded Visual Tools 3.0 的 2002 版包括用於目前所有 Windows Mobile 裝置(包括 Pocket PC 2002 和 Smartphone 2002)的 SDK。非 Windows Mobile 系列的裝置的 SDK 應該從裝置的製造商處獲得。

您可以從 http://www.microsoft.com/windowsmobile/resources/downloads/developer/default.mspx 免費下載 eMbedded Visual Tools 3.0 - 2002 Edition。

有關 eMbedded Visual Tools 的詳細資料,請參閱 http://msdn.microsoft.com/vstudio/device/embedded/default.asp。

eMbedded Visual C++ 3.0

Microsoft eMbedded Visual C++ 3.0 開發系統為基於 Windows Mobile 的開發提供了機器碼的 C++ 編譯器。如果安裝了正確的 SDK,可以用它為所有基於 Windows CE 2.11 和 3.0 的裝置開發應用程式。eMbedded Visual C++ 調試器通過 Microsoft ActiveSync 使用有線、無線區域網路 或基座串連工作。

此外,它還提供了可用於 Pocket PC 2002 和 Smartphone 2002 裝置的軟體模擬器。在發布 Pocket PC 2002 時,Microsoft 推出了一種用於 Pocket PC 2002 SDK 的新型模擬器,它更接近於真正的基於 Windows Mobile 的裝置。這種新型的模擬器可以在虛擬 PC Shell 中運行真正的 Windows CE 二進位檔案。Smartphone 2002、Pocket PC 2003 和 Smartphone 2003 的 SDK 也使用這種新型的模擬器。

eMbedded Visual C++ 可用於:

  • Pocket PC 或任何其他基於 Windows Mobile 的裝置的驅動程式
  • 在裝置上本機啟動並執行應用程式
  • 通過 Game API (GAPI) 使用高速圖形的遊戲
  • 具有很高處理需求的應用程式
  • COM 伺服器或 Microsoft ActiveX 控制項
eMbedded Visual Basic 3.0

eMbedded Visual Basic 3.0 支援使用 Visual Basic 語言編寫的應用程式,得到的 P 代碼在運行時解釋。儘管大多數基於 Windows Mobile 的裝置具備內建的功能,以運行使用 eMbedded Visual Basic 構建的應用程式,但一些自訂的基於 Windows CE 的嵌入式硬體平台可能不包含 eMbedded Visual Basic 運行時。Pocket PC 的 Windows Mobile 2003 軟體就不包含 Visual Basic 運行時,但可以從 Windows Mobile Developer Downloads 下載。

eMbedded Visual Basic 是一種指令碼語言,而不是具備全部功能的 Visual Basic 語言。因此,Visual Basic 6.0 中為案頭系統提供的很多語言功能在 eMbedded Visual Basic 3.0 中都不受支援。例如:

  • 預設情況下,所有變數均為 Variant 類型,嚴格類型不受支援
  • 不能使用 eMbedded Visual Basic 開發 ActiveX 控制項,但是可以整合
  • 幾個 Visual Basic 原有的控制項不受支援,而且還缺少一些屬性

eMbedded Visual Basic 不能用於為基於 Windows Mobile 2002 的 Smartphone 開發應用程式。鑒於此,加之其他一些原因(包括為了進一步發展壯大 Visual Basic .NET 開發團體),eMbedded Visual Basic 技術已逐漸被淘汰,取而代之的是功能更加強大的 Visual Basic .NET 語言。Microsoft 建議開發人員使用 Visual Basic .NET 建立所有新的 Pocket PC 應用程式,使用 eMbedded Visual Basic 維護早期版本的應用程式。

eMbedded Visual C++ 4.0

Microsoft eMbedded Visual C++ 4.0 支援新的基於 Windows CE. NET 4.2 裝置的開發,而且安裝發布的 Service Pack 之後,支援用於 Pocket PC 和 Smartphone 的 Windows Mobile 2003 軟體(以前的代碼名為“Ozone”)。eMbedded Visual C++ 4.0 是使用機器碼在 Windows CE .NET 4.2 上為移動或嵌入式裝置開發應用程式的理想軟體。eMbedded Visual C++ 4.0 的增強功能包括:

  • Just-in-Time 偵錯,以診斷未處理的異常
  • C++ 結構化的異常處理
  • “附加到”進程,以獲得增強進程調試能力
  • 更好地與新型模擬器整合

您可以從 Developer Downloads 下載 eMbedded Visual C++ 4.0、eVC 4.0 Service Pack 2,以及用於 Pocket PC 的 Windows Mobile 2003 軟體的 SDK。

請從 Windows Mobile 2003-based Smartphones Downloads 下載 Smartphone 2003 SDK。

Visual Studio .NET 2003 的 Smart Device Programmability 功能

Visual Studio .NET 的 Smart Device Programmability (SDP) 功能(以前稱作 Smart Device Extensions [SDE])可以協助開發人員利用 Microsoft .NET Compact Framework 編寫行動裝置 App程式,從而在串連或斷開的情況下啟用分布式的移動計算。使用 .NET Compact Framework 中提供的大量類庫,開發人員編寫應用程式的速度可以比使用傳統工具快得多。

使用 Visual Studio .NET 2003,開發人員可以使用在案頭系統開發中用到的相同工具和技術來開發 Pocket PC 2002(如果具備相應的 SDK)以及 Pocket PC 和 Smartphone 2003。它將安裝 .NET Compact Framework,這是專門為資源有限的裝置設計的。開發人員可以使用新的 C# 語言或者 Visual Basic .NET 語言來開發移動和嵌入式裝置。它還可以很好地用於使用 XML Web Service 或 ADO.NET 的應用程式。

Visual Studio .NET 2003 可用於:

  • 利用 Web 服務的應用程式
  • 在串連或斷開的環境中都必須正常啟動並執行應用程式
  • 使用 Visual Basic .NET 或 C# 開發應用程式
  • 當您希望使用相同的工具進行案頭、伺服器和裝置編程時
  • 快速開發的行動裝置 App程式
  • 提供可靠且安全的環境的軟體
  • 可移植到具有不同 CPU 或各種 Windows 版本的不同裝置的應用程式

有關 Visual Studio .NET 的 Smart Device Programmability 功能的詳細資料,請參閱 Smart Device Programmability。

ASP.NET Mobile Controls

ASP.NET Mobile Controls(以前稱作 Microsoft Mobile Internet Toolkit [MMIT]),是對 Smart Device Programmability 和 .NET Compact Framework 的補充。ASP.NET Mobile Controls 通過啟用 ASP.NET 將標記發送到多種多樣的行動裝置中,從而擴充了 .NET Compact Framework 和 Visual Studio .NET 構建移動 Web 應用程式的功能。使用這種方法,開發人員可以利用 Visual Studio .NET 構建一個移動 Web 應用程式,這個程式可以自動調整其頁面呈現方式以適應各種裝置,如啟用 Internet 的行動電話、呼叫器和 PDA(如 Pocket PC 等)。它還能簡化開發工作單位,因為它已整合到 Visual Studio .NET 整合設計環境 (IDE) 中,允許開發人員通過將控制項拖到移動 Web Form上來構建移動 Web 應用程式。

ASP.NET 不會在用戶端裝置上安裝任何組件。相反,它會利用伺服器端邏輯,以適應特定裝置的 網頁瀏覽器的呈現方式。它可以產生無線傳輸標記語言 (WML)、HTML 和精簡的 HTML (cHTML)。

除了適應性很強的 Web 頁面呈現之外,ASP.NET 還為實現自訂和可擴充提供了豐富的架構,並提供了一種簡單的擴充控制項的方法,以使控制項可以適應即將上市的各種新型裝置。另外,ASP.NET 還允許開發人員在同一編程模型內控制針對特定裝置或裝置類別的呈現方式,允許開發人員輕鬆地添加對新裝置的支援,而不必重新編寫他們的移動 Web 應用程式。

ASP.NET Mobile Controls 可用於:

  • 支援各種啟用 Web 的裝置(行動電話、呼叫器、PDA)
  • 支援各種標記語言(WML、cHTML、HTML)

注意:ASP.NET Mobile Controls 不需要安裝任何用戶端。但是,目標裝置必須具備用戶端 網頁瀏覽器。

有關 Microsoft ASP.NET Mobile Controls 的詳細資料,請參閱 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 版是精簡的資料庫,可用於迅速開發將企業資料管理能力擴充至行動裝置的應用程式。SQL Server CE 是一種功能強大的工具,它支援使用者熟悉的結構化查詢語言 (SQL) (SQL) 文法,並提供與 SQL Server 一致的開發模型和 API,從而使行動裝置 App程式的開發更加簡單易行。

SQL Server CE 引擎提供了一套基本的關聯式資料庫功能,如最佳化查詢處理器和對事務及各種資料類型的支援,同時它還維護保留重要系統資源的精簡記憶體空間。遠端資料存取和合併式複寫可以確保可靠地發送 SQL Server 資料庫中的資料;既可以離線操作,又可以在日後與伺服器同步,這些優勢使得 SQL Server CE 成為用於移動和無線環境的理想軟體。

SQL Server CE 2.0 可以通過 Visual Studio .NET 與 .NET Compact Framework 整合,從而簡化了智慧型裝置的資料庫應用程式開發。使用新的 SQL Server CE 資料提供者通過公用語言運行庫管理代碼,行動裝置 App程式開發人員可以在斷開的情況下,建立具有離線資料管理功能的高度可擴充應用程式。

在以下情況下,可以將 SQL Server CE 作為開發工具的補充:

  • 將企業資料管理功能擴充至 Pocket PC
  • 開發用來儲存和處理行動裝置上大量資料的應用程式
  • 在串連狀況不穩定的環境中,需要使用行動裝置進行可靠的資料複製

有關 SQL Server CE 的詳細資料,請參閱 Build Better Applications with SQL Server CE 2.0。

工具對比表

下表概要介紹了不同工具的各種功能。

開發方案

在短期內,開發基於 Windows Mobile 裝置的最常用工具仍是用於 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 裝置的開發平台。

伺服器端代碼還是用戶端代碼?

使用伺服器端代碼還是使用用戶端代碼,取決於幾個條件。應用程式的方案雖然各不相同,但是這些條件能夠協助您為應用程式的使用者選擇最佳的解決方案。

  • 使用者體驗:用戶端應用程式普遍能夠提供較好的使用者體驗,因為它們在裝置上運行,並且獨立於所有與之進行互操作的基礎結構。
  • 可用的頻寬:這與使用者體驗有關。在有足夠可靠頻寬的環境(如無線區域網路)中啟動並執行應用程式,如果使用伺服器端代碼,也可以提供良好的使用者體驗。
  • 資料安全性:用戶端應用程式必須確保裝置上敏感性資料的安全性。Windows Mobile 軟體提供的一系列 Cryptographic Service Provider,有助於實現此目的。伺服器端應用程式必須確保可以使用 SSL 等技術安全地傳輸資料。
  • 可支援性:對用戶端應用程式的更新必須下載並安裝到裝置上。如果開發用戶端應用程式,請將這個因素考慮在內。
  • 離線功能:如果需要離線資料訪問和其他離線功能,用戶端應用程式是最佳選擇。
在開發基於 Windows Mobile 的 Pocket PC 和 Smartphone 之前,您需要準備什麼呢?

在開發 Pocket PC 和 Smartphone 之前,您要準備的內容取決於您要開發什麼,以及要開發的裝置。在大多數情況下,您需要具備整合的開發環境,以及要開發的裝置的 SDK 或擴充。幸運的是,您可以在一台電腦上開發所有的基於 Windows Mobile 的裝置,因為所有工具都可以在這兩類裝置上共存。有關我們推薦的安裝順序,請參閱附錄。

目前,eMbedded Visual Tools IDE 和所需的 SDK 都是免費的,可以通過 Web 下載。

哪種工具 . . . 何時?

效能、控制或資源對我來說非常重要。例如,我要編寫一個遊戲、裝置驅動程式或者一個 Active X 組件…… 

如果您打算開發運行 Windows Mobile 2003 軟體的 Pocket PC 和 Smartphone,只需從 Developer Downloads 下載 eMbedded Visual C++ 4.0 Service Pack 2 和 Pocket PC 2003 SDK。您還可以使用 Smartphone 2003 SDK 為 Smartphone 開發 Windows Mobile 2003 軟體。

要支援早期的 Pocket PC、Pocket PC 2002 和 Smartphone 2002 裝置,您還需要下載 eMbedded Visual Tools 3.0 - 2002 Edition。

如果您需要維護開發 Handheld PC Professional Edition、Handheld PC 2000 或 Palm Size PC 1.2 的應用程式,可以下載 SDKs for eMbedded Visual Tools 3.0。

我要在一個安全、可靠的環境中快速開發應用程式,我可能要訪問 Web 服務…… 

我要編寫一個具有最大的代碼可移植性的用戶端應用程式…… 

我要利用自己掌握的 Visual Studio .NET 2003、Visual C#、Visual Basic.Net 或 .NET Framework 知識…… 

我們建議您使用 Visual Studio .NET 2003 中的 Smart Device Programmability 功能。.NET Compact Framework 是內建到基於 Windows Mobile 2003 的 Pocket PC 和 Smartphone 中的。它可以用於 Pocket PC 2002,但必須安裝到裝置上。

我要開發 Smartphone 2002…… 

您應該下載 eMbedded Visual Tools 3.0 - 2002 Edition。

如果您希望在真正的裝置上測試應用程式,但是您所在的地區尚無 Smartphone,或者 Smartphone 不支援開發,您可以購買 Smartphone Developer Kit。

我要使用一個程式碼程式庫開發 Pocket PC 2002 和 Pocket PC 2003…… 

您可以用兩種方法構建您的應用程式:

  1. 使用 Visual Studio .NET 2003 開發 .NET Compact Framework。這樣,您可以編寫一個Managed 程式碼庫,並讓它在兩種裝置上運行。Pocket PC 2002 要求在裝置上安裝 .NET Compact Framework。
  2. 使用 eMbedded Visual C++ 3.0。如果您使用可靠的 API 並編寫了一個運行良好的應用程式,而且使用 eMbedded Visual C++ 3.0 來編寫和編譯機器碼,它應該可以在 Pocket PC 2003 和 Pocket PC 2002 兩種裝置上運行。

我要使用一個程式碼程式庫開發 Smartphone 2002 和 Smartphone 2003…… 

.NET Compact Framework 不能用於 Smartphone 2002。要編寫一個程式碼程式庫以在 Smartphone 2002 和 Smartphone 2003 上運行,您必須使用機器碼並使用 eMbedded Visual C++ 3.0 編譯您的應用程式。

我要維護用 eMbedded Visual Basic 編寫的應用程式…… 

您應該下載 eMbedded Visual Tools 3.0 - 2002 Edition,它包含 eMbedded Visual Basic 的開發環境、模擬器和 SDK。

請考慮使用 Visual Basic .NET 2003 將應用程式匯出到 .NET Compact Framework。

我要為可以在瘦用戶端環境中啟動並執行各種行動裝置編寫應用程式。我要維護用 eMbedded Visual Basic 編寫的應用程式…… 

您應該在 Visual Studio .NET 2003 中使用 ASP.Net Mobile Controls。有關詳細資料,請參閱 Mobile Web Development with ASP.NET。

小結

Microsoft 致力於在行動裝置市場取得長期成功,並協助開發人員為他們的企業使用者和客戶提供功能豐富、強大的行動裝置 App程式。目前的基於 Windows Mobile 的應用程式開發語言提供了一系列令人難以置信的能力和靈活性。

隨著新的行動裝置不斷問世,Microsoft 將繼續推出更加尖端、更加統一的開發工具,協助開發人員快速地設計和開發利用 Web 服務等技術的新的應用程式,以及利用基於 .NET 整合能力的系統。有了這些實用的工具,行動裝置 App程式開發團體將不斷為快速發展的市場提供滿足市場要求的應用程式。

附錄:行動裝置 App程式開發工具的推薦安裝順序

為確保在 Windows Mobile 軟體的各種開發工具之間獲得最大的互通性,我們建議您按照以下順序安裝這些工具和 SDK。如果您沒有或者不需要其中的某種工具,則不必專門來擷取這種工具,因為這不會影響其他工具之間的互操作。

以下安裝步驟要求您使用具有本機管理員權限的帳戶登入到電腦。

  1. 在安裝之前,請卸載所有現有的工具、SDK 和模擬器。
    在進行此安裝之前,您應卸載以下程式:

    • eMbedded Visual Tools 3.0
    • eMbedded Visual C++ 4.0
    • eMbedded Visual C++ 4.0 Service Pack 2
    • Visual Studio .NET 2003
    • Pocket PC 2003 SDK
    • Pocket PC 2002 SDK
    • Smartphone 2003 SDK
    • Smartphone 2002 SDK
    • Pocket PC 2000 SDK
    • Standard SDK for Windows CE .Net
    • Microsoft ActiveSync
  2. 安裝 Microsoft ActiveSync 3.7
    行動裝置 App程式的所有開發工具都需要使用 ActiveSync 3.7 以進行應用程式的開發和部署。
  3. 安裝 eMbedded Visual Tools - 2002 Edition、Pocket PC 2002 SDK 和 Smartphone 2002 SDK
    為在 Pocket PC 和 Smartphone 2002 平台上開發 C++ 和 Visual Basic 應用程式,您必須安裝 eMbedded Visual Tools - 2002 Edition。
    注意:安裝 eMbedded Visual Tools - 2002 Edition 還將啟動 Pocket PC 2002 和 Smartphone 2002 SDK 的安裝過程。
  4. 安裝 eMbedded Visual C++ 4.0 和 Service Pack 2
    要為 Pocket PC 2003 開發 C++ 應用程式,您必須安裝 Microsoft eMbedded Visual C++ 4.0 和 Service Pack 2。注意,您可以在安裝 eMbedded Visual C++ 4.0 之後立即安裝 Service Pack 2。
    注意:在 Windows Server 2003 上安裝 eMbedded Visual C++ 4.0 Service Pack 2 時,可能會彈出一個對話方塊,提示有一個模擬器驅動程式尚未簽名。您應該接受未簽名的驅動程式並繼續。
  5. 安裝 Visual Studio .NET 2003
    要使用 C# 或 Visual Basic .NET 為 Pocket PC 2002、Smartphone 2003 或 Pocket PC 2003 開發應用程式,您必須安裝 Visual Studio .NET 2003。
    Pocket PC 2003 裝置和 Pocket PC 2003 類比映像已經包含 .NET Compact Framework。但您必須在早期的裝置上部署 .NET Compact Framework。
  6. 安裝 Pocket PC 2003 SDK
    要使用 C++、C# 或 Visual Basic .NET 為 Pocket PC 2003 開發應用程式,您必須安裝 Pocket PC 2003 SDK。
  7. 安裝 Smartphone 2003 SDK
    要使用 C++、C# 或 Visual Basic .NET 為 Smartphone 2003 開發應用程式,您必須安裝 Smartphone 2003 SDK。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.