이벤트 모듈을 Unity

유니티용 now.gg 이벤트 모듈을 사용해 now.gg 클라우드 앱에서 게임이 임베딩된 웹사이트로 명령/이벤트를 전달하여 앱을 보다 편리하게 제어 및 관리하실 수 있습니다.

방법:

  • 이벤트 모듈을 다운로드하고 임포트합니다.

1. 플러그인 다운로드 및 임포트

now.gg 이벤트 모듈은 유니티 패키지 파일 nowgg-events.unitypackage에 포함됩니다.

방법:

  1. 최신 버전의 유니티용 now.gg 이벤트 모듈이 포함된 패키지를 다운로드합니다.
  2. 모듈을 다운로드한 후 프로젝트에 임포트합니다.
    방법:

    • 아래와 같이 에셋 > 임포트 패키지 > 커스텀 패키지.
    • 다운로드한 패키지 내에서 모듈 > 이벤트로 이동합니다.
      • nowgg-events.unitypackage를 선택합니다.
    • 나열된 파일을 모두 선택하고 임포트합니다.

중요

  • 임포트 후 ‘NowGGSdk‘라는 폴더가 프로젝트에 추가되며 해당 폴더는 에셋 폴더 최상위 루트에서 확인하실 수 있습니다.
  • NowGGSdk 폴더에는 now.gg 유틸리티 모듈과 관련된 모든 에셋이 포함되어 있으므로 수정하지 않습니다.

2. now.gg 이벤트 모듈 사용

이제 안드로이드 앱/게임에 명령/이벤트를 보내실 수 있습니다.

아래에 참고하실 만한 일부 샘플 명령/이벤트를 나열했습니다.

NowGGEventsSdkManager 클래스를 사용하여 아래와 같이 이벤트를 호출하실 수 있습니다.

1. URL 열기

아래와 같이 NowGGEventsSDKManager 클래스의 OpenURL 함수를 호출하여 새 브라우저 창에서 URL을 열 수 있습니다.

string url = "https://example.com";

 NowGGEventsSdkManager.Instance.OpenURL(url);

참조 OpenURL() 관련 추가 정보

2. 이벤트 및 데이터를 HTML 페이지로 전달

필요한 변수와 함께 NowGGEventsSDKManager 클래스의 SendEventToBrowser 함수를 호출하여 이벤트와 데이터를 HTML 페이지로 전달할 수 있습니다.

a. HTML 페이지로 이벤트 전달

string eventName = "test-event";
 string eventData = "test-data";

 NowGGEventsSdkManager.Instance.SendEventToBrowser(eventName, eventData);

참조 SendEventToBrowser() 관련 추가 정보

b. HTML 페이지에서 이벤트 처리

HTML로 데이터를 전달받은 후 아래와 같이 처리할 수 있습니다.

const eventCallbackFunction = (event) => {
   console.log(event.eventName); // event1
   console.log(event.eventData); // eventData1
  
   // 여기에서 이벤트를 처리 합니다
 }; 

3. Android 앱으로 이벤트 및 데이터 전송

now.gg Embed ModulesendEventToApp 함수를 필요한 인수와 함께 호출하여 Android 앱으로 이벤트와 데이터를 전송하고 처리할 수 있습니다.

a. Android 앱으로 이벤트 전송

sendEventToApp 함수는 NowIfp 인터페이스를 사용하여 커스텀 이벤트 및 관련 데이터를 앱으로 전송합니다. 아래의 예제를 참조하세요:

const sendEventToApp = () => {
     const eventName = 'CustomEvent';
     const eventData = JSON.stringify({
         sample: 'case'
     });
     NowIfp.sendEventToApp(eventName, eventData);
 };

b. Android 앱에서 이벤트 처리

데이터가 Android 앱으로 전송된 후, 다음 단계를 구현하여 처리할 수 있습니다:

1. 이벤트 콜백 선언 및 리스너 등록

수신된 이벤트를 처리하려면 콜백 함수를 정의하고 NowGGEventsSdkManager에 등록하세요. 이를 통해 이벤트 발생 시 앱이 반응할 수 있습니다.

 // 이벤트 리스너 등록
 NowGGEventsSdkManager.Instance.OnEventReceivedFromBrowser += OnEventReceived;

 // 이벤트 시스템 초기화
 NowGGEventsSdkManager.Instance.InitializeEvents();
 
 // 수신된 이벤트를 처리하기 위한 콜백 함수 정의
 private void OnEventReceived(String eventName, String eventData) {
     // eventName과 eventData를 기반으로 동작 수행
 }
2. 이벤트 리스너 해제

부모 액티비티를 폐기할 때는 메모리 누수와 불필요한 콜백을 방지하기 위해 이벤트 리스너를 해제해야 합니다. 이는 일반적으로 앱의 OnDestroy() 메서드에서 수행합니다.

NowGGEventsSdkManager.Instance.DestroyEventsReceiver();

참고: DestroyEventsReceiver 메서드는 리스너 등록을 해제하고 관련 리소스를 해제합니다.


4. 앱에서 앱 실행 데이터 수령

HTML 페이지에서 안드로이드 앱으로 전달한 앱 실행 데이터를 수령하는 두 가지 방법은 총 두 가지입니다.

a. 딕셔너리를 사용하여 모든 앱 실행 데이터 변수 검색 및 수령

아래와 같이 NowGGEventsSdkManager 클래스의 GetAppLaunchDataDictionary() 함수를 호출합니다.

// 모든 앱 실행 데이터 변수를 가지고 있는 딕셔너리를 가져옵니다

 Dictionary<string, string> AppLaunchData = NowGGEventsSdkManager.Instance.GetAppLaunchDataDictionary(); 

참조 – GetAppLaunchDataDictionary() 관련 추가 정보

b. 속성 이름으로 특정 앱 실행 데이터 변수 검색 및 수령

아래와 같이 속성 이름으로 NowGGEventsSdkManager 클래스의 GetAppLaunchDataProperty() 함수를 호출하여 특정 앱 실행 데이터 변수를 가져올 수 있습니다.

// 이름으로 앱 실행 데이터 속성을 가져옵니다

 string property = NowGGEventsSdkManager.Instance.GetAppLaunchDataProperty("property_name");

참조 GetAppLaunchDataProperty() 관련 추가 정보

×

목차

이벤트 모듈을 Unity

목차

문서 Rev. 1.0

클립보드에 복사된 텍스트
copyLinkText
질문이 있으신가요? 다음 주소로 문의하세요. dev-support@now.gg