Table of Contents

License Key로 EasyAR Sense 초기화

Unity에서 EasyAR를 사용하려면 license key로 EasyAR Sense를 초기화하여 기능이 활성화되었는지 확인해야 합니다. 초기화 방식에는 자동 초기화와 수동 초기화 두 가지가 있습니다.

초기화에 성공하면 Unity console 또는 운영 체제 log에서 EasyAR Sense 버전 번호와 runtime platform 정보를 볼 수 있습니다. 예:

EasyAR Sense (Android-arm64) Version 4.7.0.11800-cf8e24e30

시작하기 전에

  • EasyAR Sense 라이선스는 EasyAR Sense 라이선스(license key)를 얻는 방법을 설명합니다. EasyAR Sense를 초기화하기 전에 실제 사용하는 장치와 개발 단계에 따라 적절한 라이선스를 준비해야 합니다.

자동 초기화

자동 초기화는 대부분의 사용 시나리오에 적합합니다.

EasyAR Global Settings를 열고 Initialize On Startup 옵션을 체크한 뒤 EasyAR Sense License > LicenseKey를 입력합니다.

alt text

자동 초기화는 Unity의 BeforeSceneLoad 시점에 자동으로 호출됩니다.

참고

editor에서 사용하는 license는 애플리케이션 package name을 검증하지 않으므로, editor에서 정상적으로 사용할 수 있는 license라도 platform application 또는 app으로 패키징하여 실행할 때 실패할 수 있습니다. 이때 다음 두 가지 상황에 주의해야 합니다.

  1. 입력한 license의 package name은 Unity Player Settings에 입력한 bundle id/package name과 일치해야 합니다.
  2. Unity 패키징 후 gradle 또는 XCode project에서 package name을 수정한 경우, Unity에서는 gradle 또는 XCode 안의 package name을 사용해야 합니다.

[선택 사항] 수동 초기화

수동 초기화는 주로 custom initialization workflows에 사용됩니다. 예를 들어 EasyAR interface를 호출하기 전에 사용자 privacy 안내를 표시하는 경우 등입니다(compliance 가이드 참조).

EasyAR Global Settings를 열고 Initialize On Startup 옵션 체크를 해제합니다.

alt text

그런 다음 EasyARController.Initialize() interface를 사용하여 초기화를 수동으로 호출합니다.

parameter로 license를 전달할 수 있습니다.

EasyARController.Initialize("my-license");

EasyAR Global Settings에 입력된 license를 사용할 수도 있습니다.

EasyARController.Initialize();
중요

EasyARController.Initialize()ARSession 시작 전에 호출해야 합니다.

특수한 경우 EasyARController.Initialize()를 여러 번 호출해야 한다면, EasyARController.Initialize()를 실행할 때마다 이후 EasyARController.Deinitialize()를 통해 deinitialize하도록 해야 합니다.

초기화 실패 해결 방법

ARSession을 포함한 scene이 실행된 후 log에 유사한 정보가 없다면 초기화에 실패한 것입니다.

EasyAR Sense (Android-arm64) Version 4.7.0.11800-cf8e24e30

Unity Editor에서는 다음과 같은 pop-up이 표시될 수도 있습니다.

alt text

참고

pop-up에 표시된 문자 정보를 주의 깊게 읽어야 합니다. 모든 pop-up이 초기화 실패를 의미하는 것은 아닙니다.

일반적인 오류 정보와 원인은 다음과 같습니다.

  • EasyARSettings is not found
    • EasyAR Global Settings asset file이 생성되지 않았습니다(license를 입력하지 않았을 때 흔함)
  • License Key is empty
    • EasyAR Global Settings에 license가 입력되지 않았거나, project에 여러 EasyAR Global Settings asset files가 존재합니다
  • EasyARController.Initialize is not called (InitializeOnStartup = false)
    • 수동 초기화가 올바른 시점에 호출되지 않았습니다
  • EasyAR stops after script change in play mode
    • editor 실행 중 script가 변경되었습니다. 다시 실행하면 됩니다

관련 주제