我愛微笑單車 Windows Phone App 開發心得分享

最近一方面為了自用,另一方面為了實驗新的 Windows Phone Store 的開發後台,所以做了一個「我愛微笑單車」(英文版: I Love YouBike) 的 Windows Phone app,同時支援 WP7 及 WP8,雖然還有很多功能沒做完,不過應該可以把我完成這個 App 的心得分享給大家。 同時支援 WP7/WP8 的問題 若您在 Windows Phone 7 時期就已經開發過 Windows Phone app,那不論是否有更新 app 或是特別對 WP8 做新的版本,WP8 的使用者還是能夠在市集裡找到你的應用程式,並且安裝來使用都不會有什麼問題,而且 WP7 的 app 即使不做任何的調整,由於 WP8 機器效能不錯,執行這些 WP7 app 甚至感覺變快了不少,硬要說有什麼美中不足的地方 (先撇開不能用 WP8 的新功能),那就是解析度的小問題了。 在 WP7 時代,所有的 Windows Phone 手機的螢幕解析度都是 WVGA (800×480),不過到了 WP8 之後,系統除了…

0

Windows Phone 7.5 (Mango) 線上教學資源

這篇文章主要是整理一下,目前由微軟官方所提供的線上教材、或是範例 Labs 檔案等等。其它內容可以參考 Windows Phone 開發人員中心。 官方訓練課程 Windows Phone 7 RTM 訓練教材 介紹 Windows Phone 7 的開發基礎,並且以各式各樣的範例來展示如何開發 Windows Phone 7 應用程式。 Windows Phone Mango 訓練教材 針對 Mango 更新的 API 部份,設計了更多範例程式來顯示如何在 Mango 上面使用者這新增的功能。 參考文件 Windows Phone 開發手冊 所有關於 Windows Phone 開發的說明文件都會在這裡,是開發中的參考或學習最完整的資源。 XNA Game Studio 4.0 Refresh 開發手冊 關於 XNA 開發的所有說明文件都在這裡。 Silverlight for Windows Phone (7.1) 介紹關於…

0

[WP7開發] 使用 Silverlight Toolkit 中的日期選擇器

在設計應用程式時,常常會用到選擇日期的欄位,這時可以利用 Silverlight for Windows Phone Toolkit 中提供的「日期選擇器」(DatePicker)控制項來做到方便輸入日期的介面。 不知道怎麼將 Silverlight for Windows Phone Toolkit 加入開發專案可以先參考這篇文章,加入 References 之後,在設計介面的 XAML 檔中只需要使用 <toolkit:DatePicker x:Name="TheDate" Value="5/31/2011″ /> 這個標籤就可以在應用程式中塞入日期選擇器了。 這個控制項有一個好處--它已經自動處理了不同語系的說明文字、年月日的排列,下面兩張圖就是 en-US 以及 zh-TW 的不同:   不過別忘了要從 Silverlight for Windows Phone Toolkit 中取出 ApplicationBar.Check.png 以及 ApplicationBar.Cancel.png 放置於專案中的 Toolkit.Content 目錄中(別忘了這兩個檔案的 Build Action 屬性都要設成 Content,Copy to Output 也要設成 Copy if newer),這樣介面才會正常出現下方的按鈕圖案。 而處理日期選擇更動的事件,只要處理 ValueChanged 事件即可: [XAML]…

0

開發試用版 Windows Phone 應用程式

在 Windows Phone 的 Marketplace 中,開發者可以為同一個 app 來開發試用版本(不必另外寫一個 lite 版本的 app 來處理),一般而言,提供試用下載的應用程式將更能吸引消費者來試用你的 app。 在 Windows Phone 的 app 開發中,不論你是要以 Silverlight 還是 XNA 為開發 app 的基礎,都有很簡單的方式來處理或模擬試用模式。 Silverlight 要判斷程式是在試用模式還是一般模式上執行,只需要下列的程式碼: using Microsoft.Phone.Marketplace; … LicenseInformation licenseInfo = new LicenseInformation(); if (licenseInfo.IsTrial) { // 試用模式 } else { // 一般模式 } 而在開發時期,要在模擬器上測試試用模式的設計是否正確,可以把判斷是否為試用模式的程式碼再包裝一下: bool IsTrial() { #if DEBUG return true; #else…

0

為 Mango 更新的 Silverlight Toolkit

Silverlight Toolkit 是一套 Silverlight 控制項/元件的專案,除了提供功能更多的控制項之外,它還能讓你在 Visual Studio 中,在工具箱(Toolkit)中加入視覺化的拖拉元件,加速介面開發的速度。而基於 Silverlight 的 Windows Phone,這個專案也提供了一套 Silverlight for Windows Phone Toolkit,內容當然是針對 Windows Phone 上面的介面控制項,而在 Windows Phone 即將推出正式版的 Mango 版本開發工具時,Silverlight for Windows Phone Toolkit 也為 Mango 有了一次更新,提供更多的控制元件。 安裝方式很簡單,首先到這裡下載最新版本(或是透過 NuGet 工具來安裝),安裝完畢後,可以依照下列步驟在 Visual Studio 中加入控制項元件: 在開啟 Windows Phone 專案的時候,打開「Toolbox」(也就是拖拉介面控制項的地方),於下方空白處按下右鍵選擇「Add Tab」:   將新增出來的 tab 命名為「Silverlight for Windows Phone Toolkit」(這裡可以隨你高興):   在新增出來的 tab 中,按下右鍵選擇「Choose Items…」:   最後,將…

0

[WP7開發] 利用 SystemTray 做進度提示 (Mango)

Windows Phone 7 在 Mango 更新(Windows Phone 7.5)之後新增了不少 APIs,其中一個部份就是能在程式中操作 SystemTray 的控制項,這個控制項本身就有提供 ProgressIndicator 的物件設計,所以很適合用來做為讀取中的提示訊息。 使用 SystemTray 可以從設計介面的 XAML 檔案以及程式碼來下手,首先如果要在 XAML 中最上層的 <phone:PhoneApplicationPage>標籤中加入下列的屬性: <phone:PhoneApplicationpage … xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone" … shell:SystemTray.BackgroundColor="<背景顏色>" shell:SystemTray.ForegroundColor="<前景顏色>" shell:SystemTray.Opacity="<透明度>" shell:SystemTray.IsVisible="<啟動時是否顯示>"> … </phone:phoneapplicationpage> 這些屬性是用來指定 SystemTray 控制項一些基本視覺元素,但光是這樣還沒辦法讓它成為讀取的提示,還需要在程式裡面指定 ProgressIndicator 才行,程式的操作範例如下: using Microsoft.Phone.Shell; … // 建立 ProgressIndicator 並設定給 SystemTray ProgressIndicator pi = new ProgressIndicator(); pi.Text = “Loading…"; pi.IsIndeterminate = true;…

0