URI에 대한 기본 앱 실행Launch the default app for a URI

중요 APIImportant APIs

URI(Uniform Resource Identifier)에 대한 기본 앱 시작 방법을 알아봅니다.Learn how to launch the default app for a Uniform Resource Identifier (URI). URI를 사용하면 다른 앱을 실행하여 특정 작업을 수행할 수 있습니다.URIs allow you to launch another app to perform a specific task. 이 항목에서는 Windows에 기본 제공되는 다양한 URI 스키마에 대한 개요도 제공합니다.This topic also provides an overview of the many URI schemes built into Windows. 사용자 지정 URI를 실행할 수도 있습니다.You can launch custom URIs too. 사용자 지정 URI 스키마를 등록하고 URI 활성화를 처리하는 방법에 대한 자세한 내용은 URI 활성화 처리를 참조하세요.For more info about registering a custom URI scheme and handling URI activation, see Handle URI activation.

URI 스키마를 사용하면 하이퍼링크를 클릭하여 앱을 열 수 있습니다.URI schemes let you open apps by clicking hyperlinks. mailto: 를 사용하여 새 메일을 시작하는 것처럼 http: 를 사용하여 기본 웹 브라우저를 열 수 있습니다.Just as you can start a new email using mailto:, you can open the default web browser using http:

이 항목에서는 Windows에 기본 제공되는 다음 URI 스키마를 설명합니다.This topic describes the following URI schemes built into Windows:

URI 체계URI Scheme 시작Launches
bingmaps:, ms-to: 및 ms 연습:bingmaps:, ms-drive-to:, and ms-walk-to: 지도 앱Maps app
httphttp: 기본 웹 브라우저Default web browser
mailtomailto: 기본 메일 앱Default email app
ms 호출:ms-call: 통화 앱Call app
ms 채팅:ms-chat: 메시지 앱Messaging app
ms-사람:ms-people: 피플 앱People app
ms-사진:ms-photos: 사진 앱Photos app
ms-설정:ms-settings: 설정 앱Settings app
ms 스토어:ms-store: 스토어 앱Store app
ms-tonepicker:ms-tonepicker: 톤 선택기Tone picker
ms-yellowpage:ms-yellowpage: 근처 전화 번호 앱Nearby Numbers app
msnweather:msnweather: 날씨 앱Weather app

예를 들어 다음 URI는 기본 브라우저를 열고 Bing 웹 사이트를 표시합니다.For example, the following URI opens the default browser and displays the Bing web site.

https://bing.com

사용자 지정 URI 스키마를 실행할 수도 있습니다.You can also launch custom URI schemes too. 해당 URI를 처리하는 앱이 설치되지 않은 경우 사용자가 설치할 앱을 권장할 수 있습니다.If there is no app installed to handle that URI, you can recommend an app for the user to install. 자세한 내용은 URI를 처리할 수 없는 경우 앱 권장을 참조하세요.For more info, see Recommend an app if one is not available to handle the URI.

일반적으로 개발자 앱에서는 실행된 앱을 선택할 수 없습니다.In general, your app can't select the app that is launched. 사용자가 어떤 앱이 실행되고 있는지 확인합니다.The user determines which app is launched. 두 개 이상의 앱을 등록하여 동일한 URI 스키마를 처리할 수 있습니다.More than one app can register to handle the same URI scheme. 예약된 URI 스키마는 예외입니다.The exception to this is for reserved URI schemes. 예약된 URI 스키마의 등록은 무시됩니다.Registrations of reserved URI schemes are ignored. 예약된 URI 스키마의 전체 목록은 URI 활성화 처리를 참조하세요.For the full list of reserved URI schemes, see Handle URI activation. 둘 이상의 앱에서 동일한 URI 스키마를 등록할 수 있는 경우 앱에서 실행할 특정 앱을 권장할 수 있습니다.In cases where more than one app may have registered the same URI scheme, your app can recommend a specific app to be launched. 자세한 내용은 URI를 처리할 수 없는 경우 앱 권장을 참조하세요.For more info, see Recommend an app if one is not available to handle the URI.

LaunchUriAsync를 호출하여 URI 실행Call LaunchUriAsync to launch a URI

LaunchUriAsync 메서드를 사용하여 URI를 실행합니다.Use the LaunchUriAsync method to launch a URI. 이 메서드를 호출할 때 앱은 포그라운드 앱이어야 합니다. 즉, 사용자에게 표시되어야 합니다.When you call this method, your app must be the foreground app, that is, it must be visible to the user. 이 요구 사항은 사용자가 제어권을 갖도록 하는 데 도움이 됩니다.This requirement helps ensure that the user remains in control. 이 요구 사항을 충족하려면 모든 URI 실행을 앱의 UI에 직접 연결해야 합니다.To meet this requirement, make sure that you tie all URI launches directly to the UI of your app. 사용자는 항상 URI 실행을 시작하기 위해 일부 작업을 수행해야 합니다.The user must always take some action to initiate a URI launch. URI를 실행하려는 경우 앱이 포그라운드에 없으면 URI가 실행되지 않으며 오류 콜백이 호출됩니다.If you attempt to launch a URI and your app isn't in the foreground, the launch will fail and your error callback will be invoked.

먼저 URI를 나타내는 System.Uri 개체를 만든 다음 이 개체를 LaunchUriAsync 메서드로 전달합니다.First create a System.Uri object to represent the URI, then pass that to the LaunchUriAsync method. 반환되는 결과를 사용하여 다음 예제에 표시된 대로 호출에 성공했는지 확인합니다.Use the return result to see if the call succeeded, as shown in the following example.

private async void launchURI_Click(object sender, RoutedEventArgs e)
{
   // The URI to launch
   var uriBing = new Uri(@"http://www.bing.com");

   // Launch the URI
   var success = await Windows.System.Launcher.LaunchUriAsync(uriBing);

   if (success)
   {
      // URI launched
   }
   else
   {
      // URI launch failed
   }
}

경우에 따라 운영 체제에서 사용자에게 실제로 앱을 전환할 것인지 묻는 메시지를 표시합니다.In some cases, the operating system will prompt the user to see if they actually want to switch apps.

회색으로 표시된 앱 배경에 오버레이된 경고 대화 상자.

이 메시지가 항상 발생하도록 하려면 Windows.System.LauncherOptions.TreatAsUntrusted 속성을 사용하여 운영 체제에 경고를 표시하라고 지시합니다.If you always want this prompt to occur, use the Windows.System.LauncherOptions.TreatAsUntrusted property to tell the operating system to display a warning.

// The URI to launch
var uriBing = new Uri(@"http://www.bing.com");

// Set the option to show a warning
var promptOptions = new Windows.System.LauncherOptions();
promptOptions.TreatAsUntrusted = true;

// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriBing, promptOptions);

URI를 처리할 수 없는 경우 앱 권장Recommend an app if one is not available to handle the URI

경우에 따라 사용자는 시작할 URI를 처리하는 앱을 설치하지 않으려 할 수 있습니다.In some cases, the user might not have an app installed to handle the URI that you are launching. 기본적으로 운영 체제는 스토어에서 적절한 앱을 검색할 수 있는 링크를 사용자에게 제공하여 이러한 경우를 처리합니다.By default, the operating system handles these cases by providing the user with a link to search for an appropriate app on the store. 이러한 경우 사용자에게 필요한 앱에 대한 특정 권장 지침을 제공하려면 시작할 URI와 함께 해당 권장 지침을 전달할 수 있습니다.If you want to give the user a specific recommendation for which app to acquire in this scenario, you can do so by passing that recommendation along with the URI that you are launching.

권장 사항은 둘 이상의 앱이 URI 스키마를 처리하도록 등록된 경우에도 유용합니다.Recommendations are also useful when more than one app has registered to handle a URI scheme. 특정 앱을 권장하면 Windows에서 해당 앱(이미 설치된 경우)을 엽니다.By recommending a specific app, Windows will open that app if it is already installed.

권장하려면 LauncherOptions.preferredApplicationPackageFamilyName을 스토어에서 권장하려는 앱의 패키지 패밀리 이름으로 설정하여 Windows.System.Launcher.LaunchUriAsync(Uri, LauncherOptions) 메서드를 호출합니다.To make a recommendation, call the Windows.System.Launcher.LaunchUriAsync(Uri, LauncherOptions) method with LauncherOptions.preferredApplicationPackageFamilyName set to the package family name of the app in the store that you want to recommend. 운영 체제에서는 이 정보를 사용하여 스토어에서 앱을 검색하는 일반적인 옵션을 스토어에서 권장 앱을 다운로드하는 특정 옵션으로 바꿉니다.The operating system uses this info to replace the general option to search for an app in the store with a specific option to acquire the recommended app from the store.

// Set the recommended app
var options = new Windows.System.LauncherOptions();
options.PreferredApplicationPackageFamilyName = "Contoso.URIApp_8wknc82po1e";
options.PreferredApplicationDisplayName = "Contoso URI Ap";

// Launch the URI and pass in the recommended app
// in case the user has no apps installed to handle the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriContoso, options);

나머지 보기 기본 설정 지정Set remaining view preference

LaunchUriAsync를 호출하는 원본 앱은 URI가 시작된 후 화면에 유지되도록 요청할 수 있습니다.Source apps that call LaunchUriAsync can request that they remain on screen after a URI launch. 기본적으로 Windows는 URI를 처리하는 대상 앱과 원본 앱 사이에 모든 사용 가능한 공간을 동일하게 공유하려고 합니다.By default, Windows attempts to share all available space equally between the source app and the target app that handles the URI. 원본 앱은 DesiredRemainingView 속성을 사용하여 앱 창이 거의 모든 사용 가능한 공간을 사용하려고 한다는 것을 운영 체제에 나타냅니다.Source apps can use the DesiredRemainingView property to indicate to the operating system that they prefer their app window to take up more or less of the available space. DesiredRemainingView를 사용하여 URI가 시작된 후 원본 앱이 화면에서 유지될 필요가 없고 대상 앱으로 완전히 대체될 수 있다는 것을 나타낼 수도 있습니다.DesiredRemainingView can also be used to indicate that the source app doesn't need to remain on screen after the URI launch and can be completely replaced by the target app. 이 속성은 호출 앱의 기본 창 크기만 지정합니다.This property only specifies the preferred window size of the calling app. 화면에 동시에 나타날 수도 있는 다른 앱의 동작은 지정하지 않습니다.It doesn't specify the behavior of other apps that may happen to also be on screen at the same time.

참고@no__t은 원본 앱의 최종 창 크기 (예: 원본 앱의 기본 설정, 화면에 있는 앱의 수, 화면 방향 등)를 결정할 때 여러 가지 요인을 고려 합니다.Note  Windows takes into account multiple different factors when it determines the source app's final window size, for example, the preference of the source app, the number of apps on screen, the screen orientation, and so on. DesiredRemainingView를 설정해도 원본 앱에 대한 특정 창 관리 동작이 보장되지 않습니다.By setting DesiredRemainingView, you aren't guaranteed a specific windowing behavior for the source app.

// Set the desired remaining view.
var options = new Windows.System.LauncherOptions();
options.DesiredRemainingView = Windows.UI.ViewManagement.ViewSizePreference.UseLess;

// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriContoso, options);

URI 스키마URI Schemes

다음은 다양한 URI 스키마에 대한 설명입니다.The various URI schemes are described below.

통화 앱 URI 스키마Call app URI scheme

Ms 호출 을 사용 합니다. 호출 앱을 시작 하는 URI 체계입니다.Use the ms-call: URI scheme to launch the Call app.

URI 체계URI Scheme 결과Result
ms-call:settingsms-call:settings 호출 앱 설정 페이지입니다.Calls app settings page.

메일 URI 스키마Email URI scheme

Mailto: 기본 메일 앱을 시작 하는 URI 체계입니다.Use the mailto: URI scheme to launch the default mail app.

URI 체계URI Scheme 결과Results
mailto:mailto: 기본 메일 앱을 실행합니다.Launches the default email app.
mailto: @no__t 전자 메일 주소 @ no__t-1mailto:[email address] 메일 앱을 실행하고 받는 사람 줄에 메일 주소를 지정한 새 메서드를 작성합니다.Launches the email app and creates a new message with the specified email address on the To line. 메일은 사용자가 보내기를 탭해야 전송됩니다.Note that the email is not sent until the user taps send.

HTTP URI 스키마HTTP URI scheme

Http를 사용 합니다 . 기본 웹 브라우저를 시작 하는 URI 체계입니다.Use the http: URI scheme to launch the default web browser.

URI 체계URI Scheme 결과Results
http:http: 기본 웹 브라우저를 실행합니다.Launches the default web browser.

지도 앱 URI 스키마Maps app URI schemes

Bingmaps: , ms 드라이브-대상:ms 연습을 사용 합니다. 특정 맵, 방향 및 검색 결과에 대 한 Windows Maps 앱을 시작 하는 URI 체계입니다.Use the bingmaps:, ms-drive-to:, and ms-walk-to: URI schemes to launch the Windows Maps app to specific maps, directions, and search results. 예를 들어 다음 URI는 Windows 지도 앱을 열고 뉴욕시를 중심으로 지도를 표시합니다.For example, the following URI opens the Windows Maps app and displays a map centered over New York City.

bingmaps:?cp=40.726966~-74.006076

Windows 지도 앱의 예

자세한 내용은 Windows 지도 앱 실행을 참조하세요.For more info, see Launch the Windows Maps app. 사용자 고유의 앱에서 지도 컨트롤을 사용하려면 2D, 3D 및 Streetside 뷰로 지도 표시를 참조하세요.To use the map control in your own app, see Display maps with 2D, 3D, and Streetside views.

메시징 앱 URI 스키마Messaging app URI scheme

Ms chat 를 사용 합니다. Windows 메시징 앱을 시작 하는 URI 체계입니다.Use the ms-chat: URI scheme to launch the Windows Messaging app.

URI 스키마URI scheme 결과Results
ms-chat:ms-chat: 메시지 앱을 실행합니다.Launches the Messaging app.
ms-chat:?ContactID={contacted}ms-chat:?ContactID={contacted} 메시지 응용 프로그램이 특정 연락처의 정보를 사용하여 실행되도록 허용합니다.Allows the messaging application to be launched with a particular contact’s information.
ms-chat:?Body={body}ms-chat:?Body={body} 메시지 응용 프로그램이 메시지 내용으로 사용할 문자열을 사용하여 실행되도록 허용합니다.Allows the messaging application to be launched with a string to use as the content of the message.
ms-chat:?Addresses={address}&Body={body}ms-chat:?Addresses={address}&Body={body} 메시지 응용 프로그램이 특정 주소 정보 및 메시지 내용으로 사용할 문자열을 사용하여 실행되도록 허용합니다.Allows the messaging application to be launched with a particular addresses' information, and with a string to use as the content of the message. 참고: 주소를 연결할 수 있습니다.Note: Addresses can be concatenated.
ms-chat:?TransportId={transportId}ms-chat:?TransportId={transportId} 메시지 응용 프로그램이 특정 전송 ID를 사용하여 실행되도록 허용합니다.Allows the messaging application to be launched with a particular transport ID.

톤 선택기 URI 스키마Tone picker URI scheme

Tonepicker를 사용 합니다 . 벨 소리, 경보 및 시스템 톤을 선택 하는 URI 체계입니다.Use the ms-tonepicker: URI scheme to choose ringtones, alarms, and system tones. 새 벨소리를 저장하고 톤의 표시 이름을 가져올 수도 있습니다.You can also save new ringtones and get the display name of a tone.

URI 체계URI Scheme 결과Results
ms-tonepicker:ms-tonepicker: 벨소리, 알람 및 시스템 톤을 선택합니다.Pick ringtones, alarms, and system tones.

매개 변수는 ValueSet를 통해 LaunchURI API로 전달됩니다.Parameters are passed via a ValueSet to the LaunchURI API. 자세한 내용은 ms-tonepicker URI 스키마를 사용하여 신호음 선택 및 저장을 참조하세요.See Choose and save tones using the ms-tonepicker URI scheme for details.

근처 전화 번호 앱 URI 스키마Nearby Numbers app URI scheme

Yellowpage를 사용 합니다 . 가까운 숫자 앱을 시작 하는 URI 체계입니다.Use the ms-yellowpage: URI scheme to launch the Nearby Numbers app.

URI 체계URI Scheme 결과Results
yellowpage:? input = [keyword @ no__t-1 & method = [String 또는 T9 @ no__t-3ms-yellowpage:?input=[keyword]&method=[String or T9] 근처 전화 번호 앱을 시작합니다.Launches the Nearby Numbers app.
input은 검색 하려는 키워드를 참조 합니다.input refers to the keyword you want to search.
method은 검색 형식 (문자열 또는 T9 검색)을 참조 합니다.method refers to the type of search (string or T9 search).
methodT9(키보드의 일종)인 경우 keyword는 검색할 T9 키보드 문자에 매핑되는 숫자 문자열이어야 합니다.If method is T9 (a type of keyboard) then keyword should be a numeric string that maps to the T9 keyboard letters to search for.
methodString인 경우 keyword는 검색할 키워드입니다.If method is String then keyword is the keyword to search for.

피플 앱 URI 스키마People app URI scheme

Ms 사용자 를 사용 합니다. 사용자 앱을 시작 하는 URI 체계입니다.Use the ms-people: URI scheme to launch the People app. 자세한 내용은 피플 앱 실행을 참조하세요.For more info, see Launch the People app.

사진 앱 URI 스키마Photos app URI scheme

Ms 사진 사용: 이미지를 보거나 비디오를 편집 하기 위해 사진 앱을 시작 하는 URI 체계입니다.Use the ms-photos: URI scheme to launch the Photos app to view an image or edit a video. 예를 들어 다음과 같은 가치를 제공해야 합니다.For example:
이미지를 보려면: ms-photos:viewer?fileName=c:\users\userName\Pictures\image.jpgTo view an image: ms-photos:viewer?fileName=c:\users\userName\Pictures\image.jpg
비디오를 편집 하려면 다음을 수행 합니다. ms-photos:videoedit?InputToken=123abc&Action=Trim&StartTime=01:02:03Or to edit a video: ms-photos:videoedit?InputToken=123abc&Action=Trim&StartTime=01:02:03

참고

비디오를 편집하거나 이미지를 표시하는 URI는 데스크톱에서만 사용할 수 있습니다.The URIs to edit a video or display an image are only available on desktop.

URI 스키마URI scheme 결과Results
ms-photos:viewer?fileName={filename}ms-photos:viewer?fileName={filename} 사진 앱을 실행하여 지정된 이미지를 봅니다. 여기서, {filename}은 정규화된 경로 이름입니다.Launches the Photos app to view the specified image where {filename} is a fully-qualified path name. 예: c:\users\userName\Pictures\ImageToView.jpgFor example: c:\users\userName\Pictures\ImageToView.jpg
ms-photos:videoedit?InputToken={input token}ms-photos:videoedit?InputToken={input token} 파일 토큰에 의해 표시되는 파일을 위해 사진 앱을 비디오 편집 모드로 실행합니다.Launches the Photos app in video editing mode for the file represented by the file token. InputToken은 필수입니다.InputToken is required. SharedStorageAccessManager를 사용하여 파일의 토큰을 가져옵니다.Use the SharedStorageAccessManager to get a token for a file.
ms-photos:videoedit?Action={action}ms-photos:videoedit?Action={action} 지정 된 비디오 편집 모드로 사진 앱을 여는 선택적 매개 변수입니다. 여기서 {action}은 다음 중 하나입니다. SlowMotion, 프레임 추출, 트리밍, 보기, 잉크등이 있습니다.An optional parameter that opens the Photos app in the specified video editing mode where {action} is one of: SlowMotion, FrameExtraction, Trim, View, Ink. 이를 지정하지 않는 경우 기본값은 View입니다.If not specified, defaults to View
ms-photos:videoedit?StartTime={timespan}ms-photos:videoedit?StartTime={timespan} 비디오 재생을 시작할 위치를 지정하는 선택적 매개 변수입니다.An optional parameter that specifies where to start playing the video. {timespan}은-1 @no__t 형식 이어야 합니다.{timespan} must be in the format "hh:mm:ss.ffff". 지정 하지 않으면 기본값은 00:00:00.0000입니다.If not specified, defaults to 00:00:00.0000

설정 앱 URI 스키마Settings app URI scheme

Ms 설정 사용: Windows 설정 앱을 시작 하는URI 체계입니다.Use the ms-settings: URI scheme to launch the Windows Settings app. 설정 앱 실행은 개인 정보 인식 앱 작성의 중요한 부분입니다.Launching to the Settings app is an important part of writing a privacy-aware app. 앱에서 중요한 리소스에 액세스할 수 없는 경우 사용자에게 해당 리소스의 개인 정보 설정에 대한 편리한 링크를 제공하는 것이 좋습니다.If your app can't access a sensitive resource, we recommend providing the user a convenient link to the privacy settings for that resource. 예를 들어 다음 URI는 설정 앱을 열고 카메라 개인 정보 설정을 표시합니다.For example, the following URI opens the Settings app and displays the camera privacy settings.

ms-settings:privacy-webcam

카메라 개인 정보 설정

자세한 내용은 Windows 설정 앱 실행개인 정보 인식 앱에 대한 지침을 참조하세요.For more info, see Launch the Windows Settings app and Guidelines for privacy-aware apps.

스토어 앱 URI 스키마Store app URI scheme

Windows 스토어 를 사용 합니다. UWP 앱을 시작 하는URI 체계입니다.Use the ms-windows-store: URI scheme to Launch the UWP app. 제품 정보 페이지, 제품 검토 페이지 및 검색 페이지 등을 엽니다. 예를 들어 다음 URI는 UWP 앱을 열고 상점의 홈 페이지를 시작 합니다.Open product detail pages, product review pages, and search pages, etc. For example, the following URI opens the UWP app and launches the home page of the Store.

ms-windows-store://home/

자세한 내용은 UWP 앱 실행을 참조하세요.For more info, see Launch the UWP app.

날씨 앱 URI 체계Weather app URI scheme

Msnweather 사용 : 날씨 앱을 시작 하는 URI 체계입니다.Use the msnweather: URI scheme to launch the Weather app.

URI 체계URI Scheme 결과Results
msnweather:/? la = [latitude @ no__t-1 &가 = [longitude @ no__t-3msnweather://forecast?la=[latitude]&lo=[longitude] 위치 지리 좌표를 기준으로 예측 페이지에서 날씨 앱을 시작 합니다.Launches the Weather app in the Forecast page based on a location geographic coordinates.
latitude은 위치의 위도를 나타냅니다.latitude refers to the latitude of the location.
longitude은 위치의 경도를 나타냅니다.longitude refers to the longitude of the location.