Unity 딥 링크 사용 가이드
개요
이 문서는 Unity에서 딥 링크를 사용하는 방법에 대한 가이드입니다. 딥 링크는 사용자가 애플리케이션의 특정 위치로 직접 접근할 수 있도록 돕는 URL 링크입니다. 이 기능은 여러 플랫폼에서 지원됩니다.
지원 플랫폼
딥 링크는 다음의 플랫폼에서 지원됩니다: - iOS - Android - 유니버설 Windows 플랫폼(UWP) - macOS
딥 링크 활성화
딥 링크를 사용하기 위해서는 애플리케이션이 해당 링크에 반응하도록 설정해야 합니다. 플랫폼에 따라 설정 방법이 다릅니다.
딥 링크 처리 방법
딥 링크를 처리하기 위해서 두 가지 방법이 있습니다: 1. 애플리케이션 시작 시 Application.absoluteURL
확인하기 2. 애플리케이션 실행 중 Application.deepLinkActivated
이벤트 구독하기
딥 링크 URL을 클릭하여 애플리케이션을 여는 경우, Unity는 Application.deepLinkActivated
이벤트를 발생시킵니다.
코드 예제
다음은 URL에 따라 씬을 로드하고 딥 링크를 처리하는 방법을 보여주는 코드 샘플입니다.
using UnityEngine;
using UnityEngine.SceneManagement;
public class ProcessDeepLinkMngr : MonoBehaviour
{
public static ProcessDeepLinkMngr Instance { get; private set; }
public string deeplinkURL;
private void Awake()
{
if (Instance == null)
{
Instance = this;
Application.deepLinkActivated += onDeepLinkActivated;
if (!string.IsNullOrEmpty(Application.absoluteURL))
{
onDeepLinkActivated(Application.absoluteURL);
}
else deeplinkURL = "[none]";
DontDestroyOnLoad(gameObject);
}
else
{
Destroy(gameObject);
}
}
private void onDeepLinkActivated(string url)
{
deeplinkURL = url;
string sceneName = url.Split('?')[1];
bool validScene;
switch (sceneName)
{
case "scene1":
case "scene2":
validScene = true;
break;
default:
validScene = false;
break;
}
if (validScene) SceneManager.LoadScene(sceneName);
}
}
딥 링크 테스트
딥 링크를 테스트하기 위해서는 다음과 같은 단계를 따르세요: 1. 테스트할 딥 링크가 포함된 HTML 파일을 작성합니다. 2. 로컬 웹 서버에서 해당 HTML 파일을 호스팅합니다. 3. 기기의 웹 브라우저에서 HTML 파일에 접근하여 링크를 클릭합니다.
예제 HTML 파일
딥 링크를 테스트하는 데 사용할 수 있는 예제 HTML 파일입니다. 링크의 href
속성을 변경하여 리디렉션 할 수 있습니다.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
</head>
<body>
<h1>My Deep Link Test page</h1>
<p><a href="unitydl://mylink">Launch</a></p>
<p><a href="unitydl://mylink?parameter">Launch with Parameter</a></p>
</body>
</html>
요약
이 문서에서는 Unity에서 딥 링크를 설정하고 처리하는 방법에 대해 설명했습니다. 이러한 방법을 사용하면 사용자에게 보다 나은 경험을 제공할 수 있습니다.