URI(Uniform Resource Identifier)에 대한 기본 앱을 시작하는 방법을 알아봅니다. URI를 사용하면 다른 앱을 시작하여 특정 작업을 수행할 수 있습니다. 또한 이 항목에서는 Windows에 기본 제공되는 많은 URI 체계에 대한 개요를 제공합니다. 사용자 지정 URI도 시작할 수 있습니다. 사용자 지정 URI 체계를 등록하고 URI 활성화를 처리하는 방법에 대한 자세한 내용은 핸들 URI 활성화참조하세요.
URI 체계를 사용하면 하이퍼링크를 클릭하여 앱을 열 수 있습니다. mailto:를 사용하여 새 전자 메일을 시작할 수 있는 것처럼 http: 또는 https:를 사용하여 기본 웹 브라우저를 열 수 있습니다.
이 항목에서는 Windows에 기본 제공되는 다음 URI 체계에 대해 설명합니다.
URI 체계 | 출시 |
---|---|
http: 및 https: | 기본 웹 브라우저 |
mailto: | 기본 전자 메일 앱 |
microsoft-edge: | Microsoft Edge 브라우저 |
ms-chat: | 메시징 앱 |
ms-people: | 피플 앱 |
ms-photos: | 사진 앱 |
ms-clicktodo: | 할 일 기능( 회수의 일부)을 클릭합니다. |
ms-settings: | 설정 앱 |
ms-store: | 스토어 앱 |
msnweather: | 날씨 앱 |
예를 들어 다음 URI는 기본 브라우저를 열고 Microsoft Bing 웹 사이트를 https://bing.com/
표시합니다.
사용자 지정 URI 스키마도 시작할 수 있습니다. 해당 URI를 처리하기 위해 설치된 앱이 없는 경우 사용자가 설치할 앱을 추천할 수 있습니다. 자세한 내용은 URI처리할 수 없는 경우 앱 추천을 참조하세요.
일반적으로, 앱은 실행된 앱을 선택할 수 없습니다. 사용자가 어떤 앱을 시작할지 결정합니다. 둘 이상의 앱이 동일한 URI 체계를 처리하기 위해 등록할 수 있습니다. 이 예외는 예약된 URI 스키마에 대한 것입니다. 예약된 URI 스키마의 등록은 무시됩니다. 예약된 URI 스키마의 전체 목록은 URI 활성화 처리을 참조하세요. 둘 이상의 앱이 동일한 URI 체계를 등록한 경우 앱에서 특정 앱을 시작하도록 권장할 수 있습니다. 자세한 내용은 URI처리할 수 없는 경우 앱 추천을 참조하세요.
중요 API
이 항목에서는 다음 WinRT(Windows 런타임) API가 사용됩니다.
많은 WinRT API는 패키지 ID가 있는 다른 데스크톱 앱에서 작동합니다. 몇 가지 예외가 있으며, 이들 대부분은 UI 렌더링 또는 입력과 관련된 API와 관련이 있습니다. TreatAsUntrusted와 같은 일부 LauncherOptions는 UWP 앱에서만 작동합니다. 데스크톱 앱이 WinRT API로 작동하도록 설정하는 방법에 대한 자세한 내용은 데스크톱 앱에서 Windows 런타임 API 호출을 참조하세요.
LaunchUriAsync를 호출하여 URI를 실행하십시오.
LaunchUriAsync 메서드를 사용하여 URI를 시작합니다. 이 메서드를 호출할 때 앱은 포그라운드 앱이어야 합니다. 즉, 사용자에게 표시되어야 합니다. 이 요구 사항은 사용자가 계속 제어할 수 있도록 하는 데 도움이 됩니다. 이 요구 사항을 충족하려면 모든 URI 시작 내용을 앱의 UI에 직접 연결해야 합니다. 사용자는 항상 URI 시작을 시작하기 위해 몇 가지 조치를 취해야 합니다. UWP 앱에서 URI를 시작하려고 시도하고 앱이 포그라운드에 없는 경우 시작이 실패하고 오류 콜백이 호출됩니다.
먼저 URI를 나타내는 System.Uri 개체를 만든 다음 LaunchUriAsync 메서드에 전달합니다. 다음 예제와 같이 반환 결과를 사용하여 호출이 성공했는지 확인합니다.
private async void launchURI_Click(object sender, RoutedEventArgs e)
{
// The URI to launch
var bingUri = new Uri(@"https://www.bing.com");
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(bingUri);
if (success)
{
// URI launched
}
else
{
// URI launch failed
}
}
경우에 따라 운영 체제는 사용자에게 실제로 앱을 전환할지 확인하라는 메시지를 표시합니다.
중요합니다
이 프롬프트는 UWP 앱에서만 지원됩니다. Windows에서 데스크톱 앱에 대한 이 프롬프트를 표시하려고 하면 시작이 실패합니다.
앱이 UWP 앱이고 항상 이 프롬프트가 발생하도록 하려면 Windows.System.LauncherOptions.TreatAsUntrusted 속성을 사용하여 운영 체제에 경고를 표시하도록 지시합니다.
// 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
{
TreatAsUntrusted = true
};
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriBing, promptOptions);
URI를 처리할 앱이 없는 경우 앱을 추천하세요.
경우에 따라 사용자에게 시작하는 URI를 처리하는 앱이 설치되어 있지 않을 수 있습니다. 기본적으로 운영 체제는 스토어에서 적절한 앱을 검색할 수 있는 링크를 사용자에게 제공하여 이러한 사례를 처리합니다. 이 시나리오에서 가져올 앱에 대한 특정 권장 사항을 사용자에게 제공하려는 경우 시작 중인 URI와 함께 해당 권장 사항을 전달하여 수행할 수 있습니다.
권장 사항은 둘 이상의 앱이 URI 체계를 처리하기 위해 등록된 경우에도 유용합니다. 특정 앱을 추천하여 이미 설치된 경우 Windows에서 해당 앱을 엽니다.
권장 사항을 만들려면 권장하려는 스토어에서 앱의 패키지 패밀리 이름으로 설정된 LauncherOptions.preferredApplicationPackageFamilyName을 사용하여 Windows.System.Launcher.LaunchUriAsync(Uri, LauncherOptions) 메서드를 호출합니다. 운영 체제는 이 정보를 사용하여 스토어에서 앱을 검색하는 일반적인 옵션을 스토어에서 권장 앱을 획득하는 특정 옵션으로 바꿉니다.
// Set the recommended app
var options = new Windows.System.LauncherOptions
{
PreferredApplicationPackageFamilyName = "Contoso.URIApp_8wknc82po1e",
PreferredApplicationDisplayName = "Contoso URI App"
};
// 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);
나머지 보기 기본 설정 설정
중요합니다
이 기능은 UWP 앱에서만 사용할 수 있습니다. 데스크톱 앱에서 사용되는 경우 속성은 무시됩니다.
LaunchUriAsync를 호출하는 원본 앱은 URI를 실행한 후 화면에 유지하도록 요청할 수 있습니다. 기본적으로 Windows는 원본 앱과 URI를 처리하는 대상 앱 간에 사용 가능한 모든 공간을 동일하게 공유하려고 합니다. 원본 앱 은 DesiredRemainingView 속성을 사용하여 사용 가능한 공간을 더 많거나 적게 차지하도록 앱 창을 선호한다는 것을 운영 체제에 나타낼 수 있습니다. DesiredRemainingView 사용하여 원본 앱이 URI 시작 후 화면에 남아 있을 필요가 없으며 대상 앱으로 완전히 바꿀 수 있음을 나타낼 수도 있습니다. 이 속성은 호출 앱의 기본 설정 창 크기만 지정합니다. 동시에 화면에 표시될 수 있는 다른 앱의 동작은 지정하지 않습니다.
비고
Windows는 원본 앱의 최종 창 크기(예: 원본 앱의 기본 설정, 화면의 앱 수, 화면 방향 등)를 결정할 때 여러 가지 요인을 고려합니다. DesiredRemainingView를 설정하면 원본 앱에 대한 특정 창 동작이 보장되지 않습니다.
// Set the desired remaining view.
var options = new Windows.System.LauncherOptions
{
DesiredRemainingView = Windows.UI.ViewManagement.ViewSizePreference.UseLess
};
// Launch the URI
var success = await Windows.System.Launcher.LaunchUriAsync(uriContoso, options);
URI 체계
이 섹션에서는 다양한 URI 체계에 대해 설명합니다.
전자 메일 URI 체계
mailto: URI 체계를 사용하여 기본 메일 앱을 시작합니다.
URI 체계 | 결과 |
---|---|
mailto: |
기본 전자 메일 앱을 시작합니다. |
mailto:\[email address\] |
전자 메일 앱을 시작하고 To 줄에 지정된 전자 메일 주소를 사용하여 새 메시지를 만듭니다. 사용자가 탭하여 보낼 때까지 전자 메일이 전송되지 않습니다. |
HTTP URI 체계
http: URI 체계를 사용하여 기본 웹 브라우저를 시작합니다.
URI 체계 | 결과 |
---|---|
http: 또는 https: |
기본 웹 브라우저를 시작합니다. |
지도 앱 URI 스키마
중요합니다
Windows Maps 앱은 더 이상 사용되지 않으며 2025년 7월까지 Microsoft Store에서 제거됩니다. 이때 스토어에서 앱에 대한 최종 업데이트가 있으며, 이로 인해 앱이 작동하지 않습니다. 2025년 7월 이전에 앱을 제거한 경우에도 스토어에서 다시 설치할 수 있지만 2025년 7월이 지나면 다시 설치할 수 없습니다.
자세한 내용은 사용되지 않는 기능에 대한 리소스 - 지도 앱을 참조하세요.
bingmaps:, ms-drive-to:, ms-walk-to: URI 스키마를 사용하여 특정 지도, 방향 및 검색 결과에 대한 Windows Maps 앱을 시작합니다. 예를 들어 다음 URI는 Windows Maps 앱을 열고 뉴욕시를 중심으로 지도를 표시합니다.
bingmaps:?cp=40.726966~-74.006076
UWP 앱에서 지도 컨트롤을 사용하려면 2D, 3D 및 Streetside 보기가 있는 지도 표시를 참조하세요. WinUI 앱 또는 다른 데스크톱 앱에서 Windows 앱 SDK 1.5 이상을 사용하는 경우 MapControl을 사용할 수 있습니다.
메시징 앱 URI 스키마
ms-chat: URI 스키마를 사용하여 Microsoft 메시징 앱을 시작합니다.
URI 체계 | 결과 |
---|---|
ms-chat: |
메시징 앱을 시작합니다. |
ms-chat:?ContactID={contacted} |
특정 연락처의 정보를 사용하여 메시징 애플리케이션을 시작할 수 있습니다. |
ms-chat:?Body={body} |
메시지 콘텐츠로 사용할 문자열을 사용하여 메시징 애플리케이션을 시작할 수 있습니다. |
ms-chat:?Addresses={address}&Body={body} |
메시지의 콘텐츠로 사용할 특정 주소의 정보와 문자열을 사용하여 메시징 애플리케이션을 시작할 수 있습니다. 참고: 주소는 연결할 수 있습니다. |
ms-chat:?TransportId={transportId} |
특정 전송 ID를 사용하여 메시징 애플리케이션을 시작할 수 있습니다. |
피플 앱 URI 스키마
ms-people: URI 체계를 사용하여 피플 앱을 시작합니다. 자세한 내용은 피플 앱을 실행을 참조하세요.
중요합니다
피플 앱이 새 Outlook으로 이동하고 있습니다. 피플 앱의 도구 모음에서 연락처 내보내기를 선택한 다음 새 Outlook으로 가져와 연락처를 가져올 수 있습니다. 자세한 내용은 새 Windows용 Outlook(미리 보기)을 통해 연락처 관리 및 사용자와의 연결을 참조하세요 .
사진 앱 URI 스키마
ms-photos: URI 체계를 사용하여 사진 앱을 시작하여 이미지를 보거나 비디오를 편집합니다. 다음은 그 예입니다.
수술 | URI(유알아이) |
---|---|
이미지 보기 | ms-photos:viewer?fileName=c:\users\userName\Pictures\image.jpg |
비디오 편집 | ms-photos:videoedit?InputToken=123abc&Action=Trim&StartTime=01:02:03 |
비고
UWP 앱에서 사진 앱을 시작하는 경우 비디오를 편집하거나 이미지를 표시하는 URI는 데스크톱에서만 사용할 수 있습니다.
다음 표에서는 사진 앱에 대해 지원되는 추가 URI 체계를 나열합니다.
URI 체계 | 결과 |
---|---|
ms-photos:viewer?fileName={filename} |
지정된 이미지를 보기 위해 {filename}이 완전한 경로 이름인 사진 앱을 실행합니다. 예: c:\users\userName\Pictures\ImageToView.jpg |
ms-photos:videoedit?InputToken={input token} |
파일 토큰이 나타내는 파일에 대한 비디오 편집 모드에서 사진 앱을 시작합니다. InputToken 필요합니다. SharedStorageAccessManager 사용하여 파일에 대한 토큰을 가져옵니다. |
ms-photos:videoedit?Action={action} |
사진 앱을 열 비디오 편집 모드를 나타내는 매개 변수입니다. 여기서 {action}은 SlowMotion, FrameExtraction, Trim, View, Ink중 하나입니다. 작업 필요합니다. |
ms-photos:videoedit?StartTime={timespan} |
비디오 재생을 시작할 위치를 지정하는 선택적 매개 변수입니다.
{timespan} 은 "hh:mm:ss.ffff" 형식이어야 합니다. 지정하지 않으면 기본값은 00:00:00.0000 |
설정 앱 URI 체계
ms-settings: URI 체계를 사용해서 Windows 설정 앱을 실행합니다. 설정 앱으로 시작하는 것은 개인 정보 보호 앱을 작성하는 데 중요한 부분입니다. 앱이 중요한 리소스에 액세스할 수 없는 경우 사용자에게 해당 리소스의 개인 정보 설정에 대한 편리한 링크를 제공하는 것이 좋습니다.
예를 들어 다음 URI는 설정 앱을 열고 카메라 개인 정보 설정을 표시합니다.
ms-settings:privacy-webcam
자세한 내용은 Windows 설정 앱 및보안 및 ID 시작을 참조하세요.
스토어 앱 URI 체계
ms-windows-store: URI 체계를 사용하여 Microsoft Store 앱을 시작합니다. 제품 세부 정보 페이지, 제품 검토 페이지 및 검색 페이지 등을 엽니다. 예를 들어 다음 URI는 Microsoft Store 앱을 열고 스토어의 홈페이지를 시작합니다.
ms-windows-store://home/
자세한 내용은 ms-windows-store URI 사용을 참조하세요.
날씨 앱 URI 스키마
msnweather: URI 체계를 사용하여 날씨 앱을 시작합니다.
URI 체계 | 결과 |
---|---|
msnweather://forecast?la=\[latitude\]&lo=\[longitude\] |
위치의 지리적 좌표를 기반으로 일기 예보 페이지에서 날씨 앱을 시작합니다.latitude 위치의 위도를 나타냅니다.longitude 위치의 경도를 나타냅니다. |
Microsoft Edge URI 스키마
microsoft-edge: URI 체계를 사용하여 Microsoft Edge 브라우저를 지정된 URL로 시작합니다.
URI 체계 | 결과 |
---|---|
microsoft-edge:https://example.com/ |
Microsoft Edge 브라우저를 열고 https://example.com/ 으로 이동합니다. |
이 URI 체계를 사용하여 사용자의 기본 브라우저 설정에 관계없이 Microsoft Edge 브라우저를 시작할 수 있습니다.
관련 콘텐츠
Windows developer