熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 移動開發 >> 正文

開發WindowsMobile應用程序入門

2013-11-12 23:33:35  來源: 移動開發 
適用於
Windows Mobile&#; Second Edition software for Pocket PC
Windows Mobile&#; Second Edition software for Smartphones
Windows Mobile&#; software for Pocket PC
Windows Mobile&#; software for Smartphones
Windows Mobile&#; software for Pocket PC
Windows Mobile&#; software for Smartphones
Microsoft® eMbedded Visual Basic®
Microsoft® eMbedded Visual C++®
Microsoft® NET Compact Framework
Microsoft® Visual Studio® NET

  摘要本文為以 Pocket PC 和 Smartphone 為目標或者考慮以其為目標的開發人員常常詢問的問題提供了答案

  常見問題

  問什麼是 Windows Mobile?
 
  答Windows Mobile 是 Microsoft 用於 Pocket PC 和 Smartphone 的軟件平台Windows Mobile 將熟悉的 Windows 桌面擴展到了個人設備中
 
  問Pocket PC 和 Smartphone 之間有什麼不同?
 
  答考慮 Pocket PC 和 Smartphone 的主要使用特性方面Smartphone 主要是在格式因素和使用兩方面作為一種電話設備而設計的它經過良好的微調可以用於發出和接收呼叫並且還可以作為消息處理設備Pocket PC 主要是作為一種小型個人計算機而設計的對於查看和管理數據與增強消息處理而言很不錯某些 Pocket PC 設備也具有電話功能您應當盡量根據目標 Windows Mobile 設備的使用特性來調整您的應用程序
 
  問Pocket PC 和 Smartphone 有哪些不同的版本(例如 )?
 
  答Windows Mobile 軟件的每個新版本都是在可供開發人員使用的豐富的現有開發平台上構建的而同時保持了一致的核心這樣應用程序就可以面向各種設備了目前有三種通用的 Windows Mobile 軟件版本? Windows Mobile 軟件運行設備的軟件有時稱為 Pocket PC 和 Smartphone 新的開發人員功能包括 MAPI 和連接管理器? Windows Mobile 軟件 軟件版本將 NET Compact Framework 添加到基於 的設備 ROM這使得開發人員能夠為基於 Windows Mobile 的設備編寫托管代碼應用程序其他的新功能包括配置管理器藍牙可編程性和 SMS 截獲支持? Windows Mobile Second EditionSecond Edition 版本使得設備制造商能夠通過該版本的主要功能(例如對 Pocket PC 的橫向方形和高分辨率屏幕以及 Smartphone 的 QVGA 屏幕的支持)進行創新其命名反映了開發平台的一致性這對於此版本也沒有改變所有支持新屏幕方向和分辨率的 API 始終是平台的一部分
 
  問我如何識別不同的軟件版本?
 
  答Pocket PC 和 Smartphone 在 Settings 中都有一個 About 面板Settings 可以從兩種設備的 Start 菜單找到
 
  根據代碼您可以使用 GetVersionEx 函數查詢最高和最低的 OS 版本以及軟件的確切內部版本號? Windows Mobile – OS Version ? Windows Mobile – OS Version ? Windows Mobile Second Edition– OS Version 為了支持 Windows Mobile Second Edition 的增強功能(例如高分辨率或橫向屏幕)我應該在我的應用程序中做些什麼?
 
  答Windows Mobile Second Edition 提供了全新的屏幕方向和分辨率包括針對 Pocket PC 的橫向方形和 VGA 支持以及針對 Smartphone 的 QVGA 支持這種版本不需要新的 SDK 閱讀Windows Mobile Second Edition Developer Resources 軟件包中白皮書上的最佳做法
 
  測試您的應用程序使用 Pocket PC 與 Smartphone 的 Windows Mobile Second Edition 模擬器
 
  使應用程序屏幕方向和分辨率保持獨立這樣您就可以使用一個代碼基以 Windows Mobile 平台上的全部硬件創新為目標了
 
  下載新的 Windows Mobile Developer 資源包 其中包括新的和更新的代碼示例及白皮書
 
  Pocket PC 開發問什麼工具可用於 Pocket PC 開發?
 
  答要構建 Pocket PC 本機 C++ 應用程序您需要 Microsoft? eMbedded Visual C++? Microsoft? eMbedded Visual C++? Service Pack 以及 Pocket PC 軟件開發工具包您可以下載 eMbedded Visual C++ 工具和 Pocket PC SDKWindows Mobile Second Edition 模擬器包使您可以在 Second Edition 設備上測試您的應用程序注意Pocket PC SDK 不支持 Microsoft? eMbedded Visual Basic? 開發要構建 Pocket PC 托管代碼應用程序您需要 Visual Studio NET 和 Pocket PC SDK要構建 Pocket PC 移動 Web 應用程序可以使用 Visual Studio NET 中的 ASPNET 移動控件
 
  問Pocket PC 應用程序可以在 Pocket PC 設備上工作嗎?
 
  答使用文檔化 API 且功能良好的 Pocket PC 應用程序無需重新編譯即可在 Pocket PC 設備上運行
 
  問為什麼 Pocket PC 不再支持 eVB 開發?
 
  答在 Pocket PC 設備中我們將繼續支持 eVB 運行時作為一個可安裝的 RAM 組件這樣舊的 eVB 應用程序就能夠在新的設備上運行但是離開 Visual Basic? NETVisual C#? NET 和 Microsoft? NET Compact Framework 更強大健壯的開發體驗Pocket PC 設備的新 eVB 開發將不受支持
 
  根據客戶的反饋Pocket PC 設備將在 ROM 中包含 NET Compact FrameworkNET Compact Framework 是完整的 NET Framework 的一個子集是專門為智能設備設計的它是一種比 Pocket PC 和 Pocket PC 設備中提供的特定於 eVB 運行時的更加全面且與語言無關的應用程序引擎
 
  問如何從 eVB 遷移到 Visual Basic NET?
 
  答從 eVB 遷移到 Visual Basic NET 並不容易但遷移的好處遠遠超過了成本? 數據類型更豐富eVB 只有 字節的 VARIANTVisual Basic NET 使用 NET Framework 通用類型系統? 執行更快eVB 需要解釋Visual Basic NET 在執行前 JIT(實時)編譯為本機代碼? 錯誤處理更完善eVB 僅支持On ErrorVisual Basic NET 支持結構化異常處理? 支持結構eVB 不支持Visual Basic NET 支持命名空間類和結構? 面向對象eVB 是過程性的Visual Basic NET 支持完全的 OOP(面向對象編程)? 一流公民eVB 總是想迎頭趕上 MFCVisual Basic NET 是核心 NET? 本機 XML 支持eVB 不支持Visual Basic NET 支持本機 XML 和 XML Web 服務? 數據模型更完善ADONET 遠遠超過了 ADOCE它仍是最好的數據模型? 執行更安全更可靠eVB 是一種腳本語言Visual Basic NET 為托管代碼? 還有許許多多!
 
  同時還有各種各樣的資源(從移植實驗到技術文章)可以幫助開發人員進行這種過渡一個例子就是一篇概述如何從 eVB 遷移到 Visual Basic NET 及其優點的技術文章 Moving from eMbedded Visual Basic to Visual Basic NET我使用什麼開發工具來編寫基於 NET Compact Framework 的 Pocket PC 應用程序?
 
  答Microsoft? Visual Studio? NET 允許 Visual Basic NET 或 C# 編程人員創建 Pocket PC Pocket PC 和 Pocket PC 設備的托管代碼應用程序(即那些以 NET 公共語言運行庫為目標的應用程序)要開發 Pocket PC 和 Pocket PC 設備的托管代碼應用程序您可以使用即裝即用的 Visual Studio NET 在開發過程中Visual Studio NET 將會自動地將 NET Compact Framework 安裝到這些設備的 RAM 中NET Compact Framework 已經在所有 Pocket PC 設備的 ROM 中而且 Visual Studio NET 通過 Pocket PC SDK 支持它
 

  問有什麼資源可以用於進行 Windows Mobile Second Edition 開發?
 
  下載新的 Windows Mobile Developer 資源包 其中包括白皮書以及新的和更新的代碼示例該版本不需要全新的 SDK可以用新的模擬器軟件包測試您的應用程序
 
  eMbedded Visual C++ 開發人員應當下載 eMbedded Visual C++ Service Pack Smartphone 開發問什麼工具可用於 Smartphone 開發?
 
  答要開始開發 Microsoft Smartphone 應用程序您需要 eMbedded Visual C++ 和 Smartphone SDK兩者都可以在 Windows Mobile Developer 獲得
 
  問何時可以將 NET Compact Framework 用於 Smartphone
 
  答NET Compact Framework 的第一個版本重點為成功的 Pocket PC 類別設備提供智能設備編程支持NET Compact Framework 添加到 Smartphone 的 Smartphone 版本中沒有發布用於 Smartphone NET Compact Framework 版本的計劃
 
  問MFC 或 ATL 可用於 Smartphone 開發嗎?
 
  答不可以Smartphone 不支持 MFC 與 ATL 開發
 
  問可以使用 eMbedded Visual Basic 來構建 Smartphone 應用程序嗎?
 
  答不可以不支持以 Smartphone 為目標的 eVB 開發
 
  問什麼工具可用於進行 Microsoft Smartphone 編程?
 
  答對於 Smartphone 版本有兩種開發選擇或者通過帶有 Service Pack 的 eMbedded Visual C++ 開發本機代碼或者通過 Visual Studio NET 開發托管代碼兩種情況都需要下載 Smartphone SDKWindows Mobile Second Edition 模擬器軟件包使您可以在 Second Edition 設備上測試應用程序
 
  eMbedded Visual C++ 和 Smartphone SDK 都可以在 Windows Mobile Developer 獲得
 
  問在 Smartphone 上可以使用 NET Compact Framework 的哪一個版本?
 
  答Smartphone 允許開發人員使用 NET Compact Framework Service Pack 進行編碼NET Compact Framework 可以放在 Smartphone 的 ROM 中NET Compact Framework Service Pack 放在 Smartphone Second Edition 的 ROM 中
 
  問Smartphone 應用程序可以在 Smartphone 設備上工作嗎?
 
  答使用文檔化 API 且功能良好的 Smartphone 應用程序無需重新編譯即可在 Smartphone 設備上運行
 
  問什麼是示例 Smartphone 設備和 Smartphone 設備?
 
  答原始的 Orange SPV 與 Orange SPV e 運行 Windows Mobile Orange 和 AT&T 上的 MPX 都是基於 Windows Mobile 的 SmartphoneOrange SPV e 運行 Windows Mobile MFC 或 ATL 可用於 Smartphone 開發嗎?
 
  答MFC 不可用於 Smartphone 可以使用 ATL 進行 Smartphone 開發有關 ATL 的更多信息請參閱 SDK 文檔
 
  問在何處我可以找到更多有關 Smartphone 應用程序安全模型的信息?
 
  答為了幫助開發人員了解基於 Windows Mobile 的 Smartphone 應用程序安全模型我們創作了一本白皮書請參見 rityasp什麼是提示模式?
 
  答OEM 或運營商可以將提示模式包含在他們的 Smartphone 應用程序安全策略中從而允許用戶來決定在安裝或運行時是否安裝或運行一個應用程序
 
  問可以使用 eMbedded Visual Basic 來構建 Smartphone 應用程序嗎?
 
  答不可以不支持以 Smartphone 為目標的 eVB 開發如果您希望利用 Visual Basic 的開發技巧可以考慮使用 Visual Basic NET 並以 NET Compact Framework 為目標
 
  問有什麼資源可以用於進行 Windows Mobile Second Edition 開發?
 
  下載新的 Windows Mobile Developer 資源包 其中包括白皮書以及新的和更新的代碼示例
 
  可以使用新的模擬器軟件包來測試您的應用程序
 
  eMbedded Visual C++ 開發人員應當下載用於 eMbedded Visual C++ 的 Service Pack 移動開發工具問什麼是 Microsoft eMbedded Visual Tools
 
  答eMbedded Visual Tools 是一種集成開發環境 (IDE)移動開發人員用來為基於 Microsoft Windows CE 操作系統的 位設備編寫軟件應用程序包括完整版的 Microsoft eMbedded Visual C++ 語言Microsoft eMbedded Visual Basic 語言特定於平台的 SDK遠程工具和文檔
 
  問eMbedded Visual Tools 支持什麼設備平台?
 
  答eMbedded Visual Tools Edition 附帶於 Pocket PC Pocket PC 和 Smartphone 的 SDK並支持開發自定義的 Windows CE 設備
 
  注Pocket PC SDK 可以與 eMbedded Visual Basic 和 eMbedded Visual C++ 一起使用但是 Smartphone SDK 卻只受 eMbedded Visual C++ 支持
 

  問什麼是 eMbedded Visual C++
 
  答eMbedded Visual C++ 是一種強大的開發工具在為下一代基於 Windows CE 的設備(包括 Pocket PC 和 Smartphone )構建本機代碼應用程序時可以為企業提供相當大的好處這種獨立的集成開發環境 (IDE) 帶來了新水平的 Windows CE 開發效率但卻沒有犧牲靈活性性能或控制要使用 eMbedded Visual C++ 工具構建 Pocket PC 與 Smartphone 應用程序您還需要 eMbedded Visual C++ Service Pack 和 Pocket PC 以及 Smartphone SDK下載 eMbedded Visual C++ 工具
 
  問我可以使用 eMbedded Visual C++ 開發 Pocket PC 或 Smartphone 應用程序嗎?
 
  答可以使用帶有 Service Pack 的 eMbedded Visual C++ 來開發包括 Windows Mobile Second Edition 在內的 Pocket PC 與 Smartphone 應用程序也可以用它來開發 Pocket PC 或 Smartphone 應用程序
 
  問我可以使用 Windows CE Standard SDK 開發 Pocket PC 或 Smartphone 應用程序嗎?
 
  答Windows CE SDK 提供了一個通用的功能子集使得編寫的應用程序能夠符合 Standard SDK以便運行在基於自定義顯示的 Windows CE NET 平台上為了構建 Pocket PC 和 Smartphone 智能設備應用程序來利用這些平台提供的豐富的設備功能集需要使用特定於設備的 SDKeMbedded Visual Tools 和 Visual Studio NET 之間有什麼不同?
 
  答eMbedded Visual Tools 是一種專門針對移動與嵌入式技術開發人員的獨立開發環境對於 Pocket PC 和 Smartphone可以利用 eMbedded Visual Tools 和適當的平台 SDK 來構建豐富的本機代碼客戶端應用程序Visual Studio NET 是 Microsoft 的最流行桌面開發工具的最新版本可以使用 Visual Studio NET 來構建基於 NET Compact Framework 的 Pocket PC 智能客戶端應用程序同時還可以使用 Visual Studio NET 和 ASPNET 移動控件構建以各種設備(包括 Pocket PC 和 Smartphone 類別的設備)為目標的基於浏覽器的應用程序
 
  問為什麼沒有將 eMbedded Visual C++ 集成到 Visual Studio NET 中?
 
  答根據客戶的反饋我們最初的工作主要集中於使 Visual Basic NET 開發人員能夠更輕松地對設備進行編程但是利用本機代碼 (C++) 創建設備應用程序的功能將會集成到 Visual Studio 的下一個版本中
 
  問什麼是 NET Compact Framework?
 
  答NET Compact Framework 是 NET Framework 的子集設計為能運行在資源受限的設備上以便為托管代碼和 XML Web 服務提供支持NET Compact Framework 大大降低了編寫運行在諸如 Pocket PC 設備上的應用程序和服務的開發成本由於 NET Compact Framework 是開發人員用來編寫桌面和服務器應用程序的 NET Framework 的一個子集所以他們已經具備了編寫 Pocket PC 和 Smartphone 設備應用程序所必需的全部技巧
 
  問使用 NET Compact Framework 的主要好處是什麼?
 
  答目前編寫設備應用程序的一個最大障礙在於大多數設備都要求開發人員了解不同的 API 和使用不同的編程工具(與用於桌面應用程序相比)由於 NET Compact Framework 使用的 NET Framework 編程模型和 Visual Studio NET 開發工具與開發人員已經在桌面和服務器上使用的相同所以它可以大大降低開發設備應用程序的成本並提高開發人員的工作效率而這些好處又能夠使企業以新的方式使用智能設備從而改進他們的業務NET Compact Framework 也是唯一帶有 XML Web 服務本機支持的移動開發平台
 
  問什麼設備可以運行 NET Compact Framework?
 
  答NET Compact Framework 可以用作 Pocket PC 和 Pocket PC 設備(包括 Phone Edition)的 RAM 安裝並且可以放在 Pocket PC 的 ROM 中Smartphone 設備包含 NET Compact Framework Service Pack 所有的 Windows Mobile Second Edition 設備均包含 NET Compact Framework Service Pack 何時可以使用 NET Compact Framework?
 
  答NET Compact Framework 的 版可以作為 Visual Studio NET 版本的一部分使用有關更多信息請參閱 Device DevelopmentNET Compact Framework 可以運行所有的 NET 語言嗎?
 
  答最初NET Compact Framework 可以運行 Visual C# 和 Visual Basic只要其他 NET 語言符合 NET Compact Framework 支持的公共語言運行庫子集它們就可以運行
 
  問NET Compact Framework 應用程序和 eMbedded Visual C++ 應用程序的執行情況一樣嗎?
 
  答在大多數情況下用 eMbedded Visual C++ 編寫的應用程序的運行速度比用 Visual Basic NET 或 Visual C# NET 編寫的應用程序快但是對於應用程序計算密集的部分開發人員將會看到他們的 Visual Basic NET 應用程序比他們的 eMbedded Visual Basic 應用程序有實質性的改善
 
  問NET Compact Framework 與 ASPNET 移動控件之間有什麼不同?
 
  答對設備進行編程有兩種不同的方法一種方法是將應用程序放置在智能設備上另一種方法是將代碼放置在服務器上並通過浏覽器呈現用戶界面NET Compact Framework 支持前者而 ASPNET 移動控件(以前稱為 Microsoft Mobile Internet 工具包)則支持後者
 
  使用設備上的代碼構建移動應用程序使應用程序在沒有 Internet 連接的情況下可以繼續工作直接在設備上運行的應用程序還支持更豐富的用戶界面以及與操作系統上的可用資產(例如多媒體和其他的應用程序)進行集成的可能性可以使用 NET Compact Framework 將高效模型用於構建智能設備應用程序
 
  構建代碼位於服務器的移動應用程序也有其優點在必須使用 Internet 支持的各種移動設備時這種體系結構非常有用這些應用程序也不受資源的限制因為它們作為桌面 Web 應用程序運行在相同的服務器上在 Visual Studio NET 中使用 ASPNET 移動控件可以完成這些應用程序的編寫
 
  技術與市場支持問我如何獲得技術支持?
 
  答技術支持有許多選擇從免費的新聞組到付費的專門支持有關這些選擇的詳細信息請參閱 Windows Mobile Support什麼是 MobileMarket 程序?
 
  答 Microsoft MobileMarket 是一個綜合程序設計為能使開發人員和獨立軟件供應商通過移動運營商關系增加收入同時擴展客戶范圍並減少進入市場的時間MobileMarket 過程由包括應用程序徽標認證的各個步驟組成並且包括在 Microsoft 應用程序目錄中訪問 /windowsmobile/mobilemarket() 以獲得更多信息
 
  問應用程序徽標認證和應用程序簽名之間有什麼不同?
 
  答應用程序徽標認證是設計和構建應用程序以便遵守一組最佳做法設計指導原則的過程通過讓獨立軟件供應商 (ISV) 的應用程序獲得徽標認證他們可以使其應用程序在市場上顯得與眾不同從而大大受益並確保最終用戶的滿意度要查看 Pocket PC 和 Smartphone 的具體徽標認證指導原則請參閱 Windows Mobile Participate Now應用程序簽名適用於 Smartphone 而且指的是一種設備安全概念具體地說應用程序簽名指的是對應用程序進行數字簽名(即驗證和身份驗證)的過程這樣就可以將其部署到實際的 Smartphone 設備上並加以運行進行應用程序簽名的要求是由移動運營商及其提供的具體 Smartphone 設備設置的


  Microsoft MobileMarket 程序提供了一種框架可幫助開發人員以一種有效的方式將他們的應用程序推向市場並描述了應用程序簽名徽標認證和銷售的過程有關詳細信息請參閱 Windows Mobile Participate Now所有的 Smartphone 應用程序在實際部署到設備之前都需要經過徽標認證嗎?
 
  答不是應用程序徽標認證對於開發 Pocket PC 或者 Smartphone 上的應用程序而言不是必需的然而獨立軟件供應商 (ISV) 可以通過這個過程使其應用程序在市場上顯得與眾不同從而大大受益並確保最終用戶的滿意度獲得徽標認證的另一個好處是可以包含在 Microsoft 應用程序目錄中它使得 ISV 可以獲得廣泛的客戶要查看 Pocket PC 與 Smartphone 的具體徽標認證指導員則請參閱 Windows Mobile Participate Now所有的 Smartphone 應用程序在可以實際部署到設備之前都需要進行數字簽名嗎?
 
  答不必應用程序簽名的要求是由移動運營商及其提供的具體 Smartphone 設備設置的Microsoft MobileMarket 程序提供了一種框架來幫助開發人員以一種有效的方式將他們的應用程序推向市場並描述了應用程序簽名徽標認證和銷售的過程有關詳細信息請參閱 Windows Mobile ParticipateNow


From:http://tw.wingwit.com/Article/program/yd/201311/11093.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.