Xamarin.Essentials: 시작 관리자Xamarin.Essentials: Launcher

Launcher 클래스를 사용하면 애플리케이션이 시스템을 통해 URI를 열 수 있습니다.The Launcher class enables an application to open a URI by the system. 다른 애플리케이션의 사용자 지정 URI 체계에 대한 딥 링크를 설정할 때 주로 사용됩니다.This is often used when deep linking into another application's custom URI schemes. 브라우저에서 웹 사이트를 열려면 Browser API를 참조해야 합니다.If you are looking to open the browser to a website then you should refer to the Browser API.

시작Get started

이 API를 사용하기 전에 라이브러리가 제대로 설치되고 프로젝트에 설정되어 있는지 확인하기 위해 Xamarin.Essentials에 대한 시작 가이드를 읽어보세요.To start using this API, read the getting started guide for Xamarin.Essentials to ensure the library is properly installed and set up in your projects.

Launcher 사용Using Launcher

클래스에서 Xamarin.Essentials에 대한 참조를 추가합니다.Add a reference to Xamarin.Essentials in your class:

using Xamarin.Essentials;

Launcher 기능을 사용하려면 OpenAsync 메서드를 호출하고 열려는 string 또는 Uri를 전달합니다.To use the Launcher functionality call the OpenAsync method and pass in a string or Uri to open. 필요에 따라 CanOpenAsync 메서드를 사용하여 디바이스의 애플리케이션이 URI 스키마를 처리할 수 있는지 확인할 수 있습니다.Optionally, the CanOpenAsync method can be used to check if the URI schema can be handled by an application on the device.

public class LauncherTest
{
    public async Task OpenRideShareAsync()
    {
        var supportsUri = await Launcher.CanOpenAsync("lyft://");
        if (supportsUri)
            await Launcher.OpenAsync("lyft://ridetype?id=lyft_line");
    }
}

그러면 매개 변수를 열 수 있는지 확인하고 열 수 있는 경우 여는 TryOpenAsync를 사용하여 단일 호출로 결합할 수 있습니다.This can be combined into a single call with TryOpenAsync, which checks if the parameter can be opened and if so open it.

public class LauncherTest
{
    public async Task<bool> OpenRideShareAsync()
    {
        return await Launcher.TryOpenAsync("lyft://ridetype?id=lyft_line");
    }
}

파일Files

이 기능을 사용하면 앱에서 다른 앱을 열고 파일을 볼 수 있도록 요청할 수 있습니다.This features enables an app to request other apps to open and view a file. Xamarin.Essentials는 자동으로 파일 형식(MIME)을 검색하고 파일을 열도록 요청합니다.Xamarin.Essentials will automatically detect the file type (MIME) and request the file to be opened.

다음은 디스크에 텍스트를 작성하고 열도록 요청하는 샘플입니다.Here is a sample of writing text to disk and requesting it be opened:

var fn = "File.txt";
var file = Path.Combine(FileSystem.CacheDirectory, fn);
File.WriteAllText(file, "Hello World");

await Launcher.OpenAsync(new OpenFileRequest
{
    File = new ReadOnlyFile(file)
});

플랫폼의 차이점Platform Differences

CanOpenAsync에서 반환된 작업이 즉시 완료됩니다.The Task returned from CanOpenAsync completes immediately.

APIAPI