標籤:style blog class code c java
原文:Windows 8.1 應用再出發 - 建立我的第一個應用
轉眼間Windows 8.1已經發布了四個多月,之前因為開發需要對Windows 8.1新特性進行過零散的學習和使用,一直沒有靜下心來系統的學習過。近日部門有幾名新同事加入,需要進行Windows 商店應用開發的培訓,所以借這個機會,重新梳理一下Windows 8.1 應用開發的知識。閑言碎語不多講,接下來開始第一站,建立第一個應用。
首先我們看一下開發環境要求:Windows 8.1 + Visual Studio 2013
緊接著我們建立一個Windows 8.1 商店應用的項目,起名為HelloWorld(好吧,這可能是用的最多的名字了吧),來觀察一下項目的構成
- Properties目錄中的AssemblyInfo.cs檔案控製程序集的常規資訊,如程式集標題、描述、公司、著作權和版本等;
- 引用是大家都很熟悉的一個目錄,我們對其他程式集的引用都會列在這裡,我們可以添加引用或刪除引用;
- Assets目錄存放的是應用表徵圖和啟動螢幕相關的圖片檔案;
- App.xaml包含了應用所需的資源,App.xaml.cs為應用提供入口;
- HelloWorld_TemporaryKey.pfx是應用的數位憑證檔案;
- MainPage.xaml是應用啟動後出現的第一個介面;
- Package.appxmainfest是應用程式的資訊清單檔,可以在檔案中設定應用程式名稱、表徵圖、入口、功能等等。
接下來我們詳細說明一下資訊清單檔:
1. 應用程式
主要設定應用的名稱、語言、支援旋轉、支援的通知方式等屬性。其中與Windows 8 較大的不同是可以設定最小寬度,Windows 8中處於Snapped狀態的應用固定寬度為320px,而Windows 8.1 中使用者可以通過拖拽改變Snapped狀態應用的寬度,同時開發人員可以設定最小寬度為320px、500px 或 預設值。
2. 可見資產
主要設定應用的各種表徵圖和啟動螢幕,所用圖片都存放在前面提到的Assets目錄中,與Windows 8較為不同的是可以設定應用的預設大小,還可以設定應用的310 * 310徽標。
3. 功能
主要指定應用可使用的系統功能,例如我們需要擷取使用者位置座標,那我們需要勾選“位置”功能。
4. 聲明
主要添加應用的可用聲明,例如我們需要實現搜尋協議,就要添加“搜尋”聲明,然後填寫相關屬性。
5. 內容 URI
主要添加可嚮應用程式發送ScriptNotify事件的HTTPS URI。因為Windows 8.1 中不支援 WebView 控制項的 AllowedScriptNotifyUris、AnyScriptNotifyUri 和 AllowedScriptNotifyUrisProperty。所以允許引發ScriptNotify事件的URI都需要列在這裡。
6. 打包
主要指定安裝包的屬性資訊
然後我們對MainPage做一些修改,嘗試調試應用程式。我們在頁面中加入一個文本控制項:
<Page x:Class="HelloWorld.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:HelloWorld" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"> <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <TextBlock Text="My First App, Hello World." HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="50"/> </Grid></Page>
接下來我們就可以調試應用了,在調試之前,我們先來看看調試方法。Windows 商店應用的調試方法有:模擬器、本機電腦 和 遠端電腦。模擬器和本機電腦,顧名思義,就是在本機啟動模擬器調試和在本機調試,而遠端電腦多用於在串連到原生平板上調試時。這裡我們選擇在模擬器調試,運行效果如:
運行後,模擬器的應用介面中顯示出我們添加的文字框。到這裡我們的第一個應用的建立和調試就完成了,謝謝。