Windows 市集是自微軟Windows 8作業系統推出後一項重要的應用程式平台,也是近年App大戰後期的新興勢力。如同競爭對手Android與Apple一般,提供應用程式供使用者下載使用,其使用領域也越來越廣泛。為了能讓使用者與應用程式能快速增加,以彌補與對手之間的差距,甚至想要超越。因此微軟對於開發市集應用程式上,提供開發者給予相當完整而豐富的支援,以開發語言來說,微軟提供更多種程式語言可進行開發,支援HTML5+JavaScript的優勢更是令其他對手所驚嘆。
雖然開發者理論上可以在Windows開發他們想要的任何應用程式,但對於Windows 8或8.1的使用者而言,除了應用程式本身的功能性,亦會希望能夠有良好的操作經驗。微軟官方提供相當多的開發建議,其中筆者建議在開發時可參考以下幾個原則,實做容易又可發揮Windows 8.1 App的最大特色。
1.Metor Style介面
這是從Windows Phone7開始推出的使用介面,方塊與區塊的UI配置,走出了自有的風格,受到使用者與設計者的推崇,因此能夠風靡並且延續到8及8.1 市集應用程式。在此列出官方設計上建議中筆者認為幾點重要項目如下:
簡潔乾淨的配置:
只將最重要的元素留在畫面中,避免多餘的控制項。避免使用者分心。
實作上,為了給使用者更多豐富的體驗,往往會在主畫面中加入許多控制項,但過多的控制項往往會導致使用者的困惑。為符合Metro Style的設計建議,我們可以容易的在Visual Studio運用中樞頁面範本(HubPage)進行分割,分割後的區段(HubSection)再以不同的控制項(盡量使用一種,如GridView, ListView等)來顯示功能或是內容的預覽,使用者可以較清楚知道,各個區段的主題或功能。
觸控為主的設計:
讓使用者們運用自己的雙手及手指,同時顧及使用時的舒適度與慣用手勢,若是本身已有使用觸控裝置經驗的使用者來說,會更容易上手。
實作上,有很多小技巧可以配合使用者觸控手勢,舉例來說我們可以在專案中使用Appbar或CommandBar來製作我們的選單,讓使用者使用他們熟悉的撥動手勢,在需要的時候呼叫選單。
2.使用者隨時掌握最新資訊
特別是針對以提供內容為主的App而言,隨時要提供給使用者最新的資訊是相當重要的,提供資訊之服務更幾乎是基本必備功能。
要讓使用者能很快的得到最新資訊,一種是在應用程式外部顯示於動態磚上的訊息,或是在應用程式內,使用快顯通知來通知使用者最新資訊。
實作上,無論是動態磚或是快顯通知,都必須是透過特定的XML範本填入資料內容來實現,若是以動態磚而言,必須先開始宣告並開啟通知佇列,再進行動態磚顯示格式與內容的設定,依據規範,動態磚內容將會存進指定範本之XML物件中,不同大小的動態磚,每一種大小都有多種格式範本供選擇(註一),因此在應用程式取到最新內容(如透過Service)後,只需將內容填入XML,並且更新動態磚內容即可完成。
3.應用程式之間傳送內容
資料內容不僅可以呈現在目前的應用程式中,同時也可以直覺的方式傳送到其他應用程式,這也是Windows 市集應用程式一個突出的地方,最常見的,就是應用程式的分享功能。使用者在應用程式中,呼叫分享功能,並選擇要分享的目標進行分享。在這個分享的機制中,主要有兩個角色,一是提供內容分享的應用程式(Source),一則是接收內容的應用程式(Target),此部分僅先介紹提供內容分享之應用程式。
實作上,實現內容分享機制的是DataTransferManager這一個靜態類別,其負責啟用與其他APP資料的交換作業,並且在分享的動作發生時,觸發DataRequested事件:
在DataRequested事件中,我們開始設定分享內容,除了常用的文字內容,亦可支援超連結、點陣圖、HTML等內容。
設定完成後,便可在Share Charm上看到分享內容的相關資訊,以及支援分享的應用程式,如本範例可支援郵件應用程式,選擇後可看到設定的分享內容將出現在郵件內容中。
另外,同一支應用程式可以做為內容分享來源、同時也能兼具內容分享目標,可視應用程式的功能進行設置。
具設計感的介面(Metro Style)、直覺化的資訊顯示(動態磚)、可與其他應用程式進行分享的操作體驗(內容分享),是Windows 市集應用程式中幾個與眾不同的特色,建議開發者可以檢視自己的應用程式,適當的注入一些Windows Store App的靈魂,給使用者更豐富的操作體驗。
註:詳細範本介紹請見MSDN
http://msdn.microsoft.com/zh-tw/library/windows/apps/windows.ui.notifications.tiletemplatetype