기술 자료

Unity Engine

Unity Engine

딥 링크

Explains about enabling deep linking within your application and the platforms that support this feature.
읽는 시간 2분최근 업데이트: 한 달 전

딥 링크는 사용자를 웹사이트가 아닌 애플리케이션 내 특정 위치로 연결하는 하이퍼링크입니다. 사용자가 딥 링크를 선택하면 애플리케이션이 Unity 애플리케이션의 특정 씬과 같이 지정된 위치에서 열립니다. Unity는 Application.absoluteURL 프로퍼티와 Application.deepLinkActivated 이벤트를 사용하여 딥 링크를 지원합니다.

딥 링크 활성화

딥 링크를 처리하려면 먼저 딥 링크에 반응하도록 애플리케이션을 설정해야 합니다. 애플리케이션이 특정 URL에 반응하도록 설정하는 프로세스는 플랫폼마다 다릅니다. Unity는 다음 플랫폼용 딥 링크를 지원합니다.
딥 링크를 처리하는 방법에는 애플리케이션의 현재 상태에 따라 두 가지가 있습니다.
  • 애플리케이션이 실행되지 않음: 기기가 애플리케이션을 열고 Application.absoluteURL이 기기가 애플리케이션에 전달하는 딥 링크 URL을 저장합니다.
  • 애플리케이션이 실행됨: 기기가 URL을 애플리케이션에 전달하고 딥 링크 URL을 파라미터로 사용하여 Application.deepLinkActivated 이벤트를 호출합니다. Application.absoluteURL이 동시에 업데이트됩니다.
두 경우 모두 Application.absoluteURL을 사용하여 애플리케이션에서 열 씬을 선택합니다.
다음 코드 샘플은 애플리케이션의 현재 상태에 따라 딥 링크를 처리하는 방법을 보여 줍니다.
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)) { // Cold start and Application.absoluteURL not null so process Deep Link. onDeepLinkActivated(Application.absoluteURL); } // Initialize DeepLink Manager global variable. else deeplinkURL = "[none]"; DontDestroyOnLoad(gameObject); } else { Destroy(gameObject); } } private void onDeepLinkActivated(string url) { // Update DeepLink Manager global variable, so URL can be accessed from anywhere. deeplinkURL = url; // Decode the URL to determine action. // In this example, the application expects a link formatted like this:// unitydl://mylink?scene1 string sceneName = url.Split('?')[1]; bool validScene; switch (sceneName) { case "scene1": validScene = true; break; case "scene2": validScene = true; break; default: validScene = false; break; } if (validScene) SceneManager.LoadScene(sceneName); }}
딥 링크를 테스트하려면 다음 단계를 따르십시오.
  1. 테스트할 딥 링크가 포함된 HTML 파일을 생성합니다.
  2. 로컬 웹 서버에서 HTML 파일을 호스팅합니다.
  3. 기기의 웹 브라우저에서 HTML 파일을 열고 딥 링크를 클릭합니다.

예제 HTML 파일

다음은 딥 링크를 테스트하는 데 사용할 수 있는 예시 HTML 파일입니다. 링크를 리디렉션하려면
<a>
요소 중 하나의
href
속성을 변경합니다.
<html> <head> <meta charset="utf-8"> </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>