앱 리소스 및 리소스 관리 시스템App resources and the Resource Management System

이 섹션에서는 앱의 문자열, 이미지 및 파일 리소스를 작성, 패키징 및 사용하는 방법을 보여 줍니다.This section shows you how to author, package, and consume your app's string, image, and file resources. 예를 들어 게임의 수준에 대한 정의가 포함된 가벼운 게임과 함께 파일을 패키지하고 런타임 시 파일을 로드할 수 있습니다.For example, you might package a file along with your casual game containing a definition of the game's levels, and load the file at run-time. 또한 앱의 논리와 별도로 리소스를 유지 관리하여 다양한 로캘, 디바이스 디스플레이, 접근성 설정, 기타 사용자 및 머신 컨텍스트에 맞게 앱을 쉽게 지역화하고 사용자 지정하는 방법을 보여 줍니다.We also show you how maintaining your resources independently of the app's logic makes it easy to localize and customize your app for different locales, device displays, accessibility settings, and other user and machine contexts. 문자열 및 이미지와 같은 리소스는 일반적으로 여러 언어, 배율 및 대비 변형으로 존재해야 합니다.Resources such as strings and images typically need to exist in multiple language, scale, and contrast variants. 이러한 리소스의 경우 리소스 관리 시스템에서 지원할 수 있습니다.For resources such as that, you have the support of the Resource Management System.

앱 리소스에는 다음 두 가지 종류가 있습니다.There are two types of app resource.

  • 파일 리소스는 디스크에 파일로 저장된 리소스입니다.A file resource is a resource stored as a file on disk. 파일 리소스에는 비트맵 이미지, XAML, XML, HTML, 또는 다른 종류의 데이터가 포함될 수 있습니다.A file resource can contain a bitmap image, XAML, XML, HTML, or any other kind of data.
  • 포함된 리소스는 이를 포함하는 일부 리소스 파일에 포함된 리소스입니다.An embedded resource is a resource that is embedded within some containing resource file. 가장 일반적인 예는 리소스 파일(.resw 또는.resjson)에 포함된 문자열 리소스입니다.The most common example is a string resource embedded within a Resources File (.resw or .resjson).

앱 지역화의 가치 제안에 대한 자세한 내용은 세계화 및 지역화를 참조하세요.For more info about the value proposition of localizing your app, see Globalization and localization.

아티클Article 설명Description
리소스 관리 시스템Resource Management System 빌드 시 리소스 관리 시스템은 앱과 함께 패키지되는 다양한 모든 리소스 변형에 대한 인덱스를 만듭니다.At build time, the Resource Management System creates an index of all the different variants of the resources that are packaged up with your app. 런타임 시 시스템에서 적용되는 사용자 및 머신 설정을 검색하고 이러한 설정에 가장 적합한 리소스를 로드합니다.At run-time, the system detects the user and machine settings that are in effect and loads the resources that are the best match for those settings.
리소스 관리 시스템에서 리소스를 일치시키고 선택하는 방법How the Resource Management System matches and chooses resources 리소스가 요청되면 현재 리소스 컨텍스트와 어느 정도 일치하는 몇 가지 후보가 있을 수 있습니다.When a resource is requested, there may be several candidates that match the current resource context to some degree. 리소스 관리 시스템은 모든 후보를 분석하여 반환할 가장 적합한 후보를 결정합니다.The Resource Management System will analyze all of the candidates and determine the best candidate to return. 이 문서에서는 이 프로세스를 자세히 설명하고 예제를 제공합니다.This topic describes that process in detail and gives examples.
리소스 관리 시스템에서 언어 태그를 일치시키는 방법How the Resource Management System matches language tags 앞의 문서(리소스 관리 시스템에서 리소스를 일치시키고 선택하는 방법)에서는 일반적으로 한정자 일치를 살펴보았지만,The previous topic (How the Resource Management System matches and chooses resources) looks at qualifier-matching in general. 여기서는 언어 태그 일치에 집중하고 있습니다.This topic focuses on language-tag-matching in more detail.
언어, 배율, 고대비 및 기타 한정자에 맞게 리소스 조정Tailor your resources for language, scale, high contrast, and other qualifiers 이 문서에서는 리소스 한정자의 일반적인 개념, 사용 방법 및 각 한정자 이름의 목적에 대해 설명합니다.This topic explains the general concept of resource qualifiers, how to use them, and the purpose of each of the qualifier names.
UI 및 앱 패키지 매니페스트의 문자열 지역화Localize strings in your UI and app package manifest 앱에서 다른 표시 언어를 지원하도록 하고 코드, XAML 태그 또는 앱 패키지 매니페스트에 문자열 리터럴이 있으면 해당 문자열을 리소스 파일(.resw)로 이동합니다.If you want your app to support different display languages, and you have string literals in your code or XAML markup or app package manifest, then move those strings into a Resources File (.resw). 그러면 앱에서 지원하는 언어별로 해당 리소스 파일의 변환된 복사본을 만들 수 있습니다.You can then make a translated copy of that Resources File for each language that your app supports.
배율, 테마, 고대비 등에 맞춘 이미지 및 자산 로드Load images and assets tailored for scale, theme, high contrast, and others 앱은 디스플레이 배율 인수, 테마, 고대비 및 기타 런타임 컨텍스트에 맞게 조정된 이미지를 포함하는 이미지 리소스 파일을 로드할 수 있습니다.Your app can load image resource files containing images tailored for display scale factor, theme, high contrast, and other runtime contexts.
URI 체계URI schemes 앱의 패키지, 앱의 데이터 폴더 또는 클라우드에서 제공하는 파일을 참조하는 데 사용할 수 있는 몇 가지 URI(Uniform Resource Identifier) 체계가 있습니다.There are several URI (Uniform Resource Identifier) schemes that you can use to refer to files that come from your app's package, your app's data folders, or the cloud. URI 체계를 사용하여 앱의 리소스 파일(.resw)에서 로드되는 문자열을 참조할 수도 있습니다.You can also use a URI scheme to refer to strings loaded from your app's Resources Files (.resw).
앱에서 사용하는 기본 리소스 지정Specify the default resources that your app uses 앱에 고객 디바이스의 특정 설정과 일치하는 리소스가 없으면 앱의 기본 리소스가 사용됩니다.If your app doesn't have resources that match the particular settings of a customer device, then the app's default resources are used. 이 문서에서는 이러한 기본 리소스를 지정하는 방법에 대해 설명합니다.This topic explains how to specify what those default resources are.
리소스 팩 대신 앱 패키지에 리소스 빌드Build resources into your app package, instead of into a resource pack 몇 가지 종류의 앱(다국어 사전, 번역 도구 등)은 앱 번들의 기본 동작을 재정의하고, 리소스를 별도의 리소스 패키지에 포함하지 않고 앱 패키지에 빌드해야 합니다.Some kinds of apps (multilingual dictionaries, translation tools, etc.) need to override the default behavior of an app bundle, and build resources into the app package instead of having them in separate resource packages. 이 문서에서는 이러한 작업을 수행하는 방법에 대해 설명합니다.This topic explains how to do that.
PRI(패키지 리소스 인덱싱) API 및 사용자 지정 빌드 시스템Package resource indexing (PRI) APIs and custom build systems PRI(패키지 리소스 인덱싱) API를 사용하여 UWP 앱의 리소스에 대한 사용자 지정 빌드 시스템을 개발할 수 있습니다.With the package resource indexing (PRI) APIs, you can develop a custom build system for your UWP app's resources. 빌드 시스템은 UWP 앱에 필요한 복잡도 수준에 관계없이 PRI(패키지 리소스 인덱스) 파일을 만들고, 버전 관리하고, 덤프할 수 있습니다(XML로).The build system will be able to create, version, and dump (as XML) package resource index (PRI) files to whatever level of complexity your UWP app needs.
MakePri.exe를 사용하여 수동으로 리소스 컴파일Compile resources manually with MakePri.exe MakePri.exe는 PRI 파일을 만들고 덤프하는 데 사용할 수 있는 명령줄 도구입니다.MakePri.exe is a command line tool that you can use to create and dump PRI files. Microsoft Visual Studio 내에서 MSBuild의 일부로 통합되었지만 패키지를 수동으로 또는 사용자 지정 빌드 시스템을 통해 만드는 데 유용할 수 있습니다.It is integrated as part of MSBuild within Microsoft Visual Studio, but it could be useful to you for creating packages manually or with a custom build system.
레거시 앱 또는 게임에서 Windows 10 리소스 관리 시스템 사용Use the Windows 10 Resource Management System in a legacy app or game .NET 또는 Win32 앱 또는 게임을 .msix 또는 .appx 패키지로 패키징하면 리소스 관리 시스템을 활용하여 런타임 컨텍스트에 맞는 앱 리소스를 로드할 수 있습니다.By packaging your .NET or Win32 app or game as an .msix or .appx package, you can leverage the Resource Management System to load app resources tailored to the run-time context. 이 문서에서는 해당 기술에 대해 자세히 설명합니다.This in-depth topic describes the techniques.

언어, 배율, 고대비에 대한 타일 및 알림 메시지 지원도 참조하세요.Also see Tile and toast notification support for language, scale, and high contrast.