Windows 8.1 市集應用程式:指定安裝在裝置上的預設資源
當使用者安裝應用程式時,裝置的作業系統會在應用程式中嘗試識別並安裝符合該裝置規格的各種資源 (例如使用者介面字串以及符合特定解析度的影像)。舉例來說,如果裝置的地區設定為西班牙文,那麼裝置在安裝內建西班牙文字串的應用程式時,就可以安裝此西班牙文字串資源。不過,您的應用程式包含的資源可能無法滿足使用者擁有的每個裝置和地區設定。在這種情況下,使用者裝置的作業系統預設會安裝適合您的開發電腦、地區設定和其他設定使用的資源。如果您希望在裝置上安裝不同的資源,可以加入組態檔來指定這些資源。如果您有自信可以直接編輯專案檔,也可以直接編輯專案檔來完成這項工作。
選項 1:將組態檔加入至方案
在 [方案總管] 中,於應用程式的專案上按一下滑鼠右鍵,然後指向 [加入] 再按一下 [新增項目]。
按一下 [加入新項目] 對話方塊中的 [XML 檔案],然後將檔案命名為 priconfig.default.xml,然後再按一下 [加入]。
以下列 XML 取代檔案的內容。
<default> <qualifier name="Language" value=Value /> <qualifier name="Contrast" value=Value /> <qualifier name="Scale" value=Value /> <qualifier name="HomeRegion" value=Value /> <qualifier name="TargetSize" value=Value /> <qualifier name="LayoutDirection" value=Value /> <qualifier name="DXFeatureLevel" value=Value /> <qualifier name="Configuration" value=Value /> <qualifier name="AlternateForm" value=Value /> </default>
在下一個步驟中,您要以有效的資源限定詞取代 [值] 預留位置。請參閱如何:使用限定詞的名稱資源 (使用 C#/VB/C++ 與 XAML 的應用程式) 或如何:使用限定詞的名稱資源 (使用 JavaScript 與 HTML 的應用程式)。
請以有效的資源限定詞取代每個 [值] 預留位置。
下列範例顯示在以有效的資源限定詞取代 [值] 預留位置之後 XML 可能出現的樣子。
<default> <qualifier name="Language" value="en-us" /> <qualifier name="Contrast" value="standard" /> <qualifier name="Scale" value="120" /> <qualifier name="HomeRegion" value="001" /> <qualifier name="TargetSize" value="256" /> <qualifier name="LayoutDirection" value="LTR" /> <qualifier name="DXFeatureLevel" value="DX9" /> <qualifier name="Configuration" value="" /> <qualifier name="AlternateForm" value="" /> </default>
儲存後關閉 priconfig.default.xml 檔案。
在 [方案總管] 中,按一下 [priconfig.default.xml] 檔案。
在 [屬性] 視窗中,視專案語言之不同,變更下列屬性的值。
若是 C# 與 VB 專案,請將 [建置動作] 屬性設定為 [無]。
若是 JavaScript 專案,請將 [封裝動作] 屬性設定為 [無]。
若是 C++ 專案,請將 [內容] 屬性設定為 [False]。
在 [建置] 功能表上,按一下 [建置方案]。
在 ProjectFolder**\obj\**ReleaseConfiguration 資料夾中,以「記事本」開啟 priconfig.xml 檔案。
確定您加入的限定詞都已出現在檔案中。
重新命名 priconfig.default.xml 檔案
您可以隨意命名組態檔。但如果您將檔案命名為 priconfig.default xml 以外的任何名稱,則必須將建置屬性加入專案檔。
在 [方案總管] 中應用程式的專案上按一下滑鼠右鍵,然後按一下 [卸載專案]。
再於專案上按一下滑鼠右鍵,然後按一下 [編輯 AppName.csproj] 或 [編輯 AppName.vbproj]。
在專案檔中,於第一個 <PropertyGroup> 項目的開頭和結尾標記之間,加入下列 XML 行。
<AppxPriConfigXmlDefaultSnippetPath>FilePath</AppxPriConfigXmlDefaultSnippetPath>
重要
以包含檔案名稱在內的組態檔路徑,取代 [FilePath]。
儲存並關閉專案檔。
在 [方案總管] 中的專案上按一下滑鼠右鍵,然後按一下 [重新載入專案],接著再建置該方案。
選項 2:修改專案檔 (進階)
以「記事本」開啟該應用程式的專案檔。
在專案檔中,於第一個 <PropertyGroup> 項目的開頭和結尾標記之間,加入下列 XML 行。如果應用程式沒有特定裝置、地區設定或其他設定適用的資源,這段 XML 會識別裝置的作業系統將安裝的資源。
<AppxDefaultResourceQualifiers>Language=ValueContrast=Value|Scale=Value|HomeRegion=Value|TargetSize=Value| LayoutDirection=Value|DXFeatureLevel=Value|Configuration=Value|AlternateForm=Value</AppxDefaultResourceQualifiers>
在下一個步驟中,您要以有效的資源限定詞取代 [值] 預留位置。例如,您會對 {DefaultResourceLanguage} moniker 設定 Language 限定詞。當您建立應用程式封裝時,Visual Studio 會以 [預設語言] 屬性的值會取代這個 Moniker,而您則可以在資訊清單設計工具的 [應用程式] 索引標籤中設定這個屬性值。或者,您也可以將語言限定詞設定為特定地區設定值,例如 en-us。請參閱如何:使用限定詞的名稱資源 (使用 C#/VB/C++ 與 XAML 的應用程式) 或如何:使用限定詞的名稱資源 (使用 JavaScript 與 HTML 的應用程式)。
請以有效的資源限定詞取代每個 [值] 預留位置。
下列範例顯示在以有效的資源限定詞取代 [值] 預留位置之後 XML 可能出現的樣子。
<AppxDefaultResourceQualifiers>Language={DefaultResourceLanguage}|Contrast=high|Scale=140|HomeRegion=419|TargetSize=256| LayoutDirection=LTR|DXFeatureLevel=DX10|Configuration=|AlternateForm=altform-msft-phonetic</AppxDefaultResourceQualifiers>
儲存後關閉專案檔。然後,在 Visual Studio 中重新載入該專案。
建置方案。
在 ProjectFolder**\obj\**ReleaseConfiguration 資料夾中,以「記事本」開啟 priconfig.xml 檔案。
確定您加入的限定詞都已出現在檔案中。
請參閱
定義應用程式資源 (使用 C#/VB/C++ 與 XAML 的應用程式)
定義應用程式資源 (使用 JavaScript 與 HTML 的應用程式)
Windows 8.1 市集應用程式:確保不論裝置是否需要,一律在裝置上安裝資源
應用程式套件組合
決定是否產生應用程式套件組合
資源套件
資源管理系統