모듈 설치 및 초기화
서비스 접근 제어 모듈을 Hive Axyl SDK에 설치하고 초기화합니다. Hive Axyl SDK를 아직 설치하지 않았다면 먼저 Hive Axyl SDK를 설치하세요.
1. 서비스 접근 제어 모듈 설치
1.1. 공통 모듈 선택
Hive Axyl SDK를 사용하기 위한 최소 기능인 공통 모듈을 선택합니다.
com.com2usplatform.hiveaxyl.core: SDK를 시작할 때 호출하는 초기화와 다른 모듈이 공통으로 사용하는 기본 기능
1.2. 서비스 접근 제어 기능을 위한 모듈 선택
서비스 접근 제어 기능을 사용하려면 아래 모듈도 함께 선택합니다.
com.com2usplatform.hiveaxyl.serviceaccess: 서비스 국가 제한, 서버 점검, 클라이언트 업데이트 확인 기능
서비스 접근 제어 모듈 하나를 등록하면 서비스 국가 제한, 서버 점검, 클라이언트 업데이트 기능을 모두 하나의 IServiceAccessService로 호출합니다.
1.3. 모듈 설치
서비스 접근 제어 모듈은 SDK 설치와 같은 방법으로 설치합니다. Hive Axyl SDK는 Scoped Registry로만 설치하므로, SDK를 설치할 때 등록한 Hive Axyl Scoped Registry에 서비스 접근 제어 모듈을 추가로 선언합니다.
Packages/manifest.json의 dependencies에 com.com2usplatform.hiveaxyl.core와 더불어 서비스 접근 제어 기능 모듈인 com.com2usplatform.hiveaxyl.serviceaccess를 함께 추가합니다.
1.4. 설치 확인
using 문에서 설치한 SDK와 서비스 접근 제어 모듈의 네임스페이스를 사용할 수 있는지 확인합니다.
Unity Package Manager에서 설치한 모듈이 Installed 상태로 표시되면 설치가 완료된 것입니다.
2. SDK 초기화
Initialize
서비스 접근 제어 기능을 사용하려면 앱 시작 시 Hive Axyl SDK를 한 번 초기화해야 합니다. 초기화하면 국가 제한, 서버 점검, 클라이언트 업데이트 확인에 필요한 SDK 런타임을 준비합니다.
- 앱 정보에서 만든 App ID를 확인합니다.
- App ID를 가지고
CoreConfig.CreateBuilder를 실행해CoreConfig객체를 생성합니다. HiveBootstrap.Initialize로 초기화를 실행합니다.builder에 서비스 접근 제어 모듈인AddServiceAccess()를 등록합니다.- 초기화 후
HiveCore.Resolve<IServiceAccessService>()로 서비스 접근 제어 기능을 가져와 사용합니다.
호출 파라미터
| 필드명 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| config | CoreConfig | Required | App ID를 담은 CoreConfig 객체입니다. CoreConfig.CreateBuilder로 생성합니다. |
| assemble | Action<IHiveBuilder> | Required | 사용할 기능 모듈을 등록하는 빌더 콜백입니다. 서비스 접근 제어 기능을 쓰려면 builder.AddServiceAccess()를 포함합니다. |
호출 예시
using Hive.Axyl.Core;
using Hive.Axyl.Core.Unity; // HiveBootstrap
using Hive.Axyl.ServiceAccess; // AddServiceAccess 확장
var config = CoreConfig.CreateBuilder("{appId}").Build();
HiveBootstrap.Initialize(config, builder =>
{
builder.AddServiceAccess();
// 다른 모듈도 사용한다면 같은 초기화 호출에서 함께 등록합니다.
// builder.AddAuth().AddToken().AddServiceAccess();
});
이미 다른 모듈을 초기화했다면 같은 Initialize 호출에 AddServiceAccess()만 추가하면 됩니다. 등록한 모듈은 이후 HiveCore.Resolve<IServiceAccessService>()로 가져와 사용합니다.
초기화에 사용한 App ID는 이후 모든 서비스 접근 제어 호출에 SDK가 자동으로 함께 전달합니다. 따라서 서비스 국가 제한, 서버 점검, 클라이언트 업데이트 메서드를 호출할 때 App ID를 다시 지정하지 않습니다.
콘솔에 언어별로 등록한 안내 문구 중 어떤 언어를 받을지도 SDK가 자동으로 전달합니다. 별도로 설정하지 않으면 초기화 시점의 기기 언어를 사용합니다. 앱이 자체 언어 설정을 사용한다면 초기화를 마친 뒤 HiveCore.SetLanguage("ko-KR")처럼 언어 태그를 지정하세요. 콘솔에 해당 언어의 문구가 없으면 기본 언어로 등록한 문구를 대신 전달합니다.
응답 데이터
성공 시 별도 반환 데이터가 없습니다.
응답 예시
응답 상태
초기화와 모듈 등록이 성공했는지는 HiveCore.Resolve<IServiceAccessService>()의 결과로 확인합니다. 예외가 발생하지 않고 서비스 접근 제어 모듈 핸들을 반환하면 두 단계를 모두 완료한 것입니다.
초기화는 다음 경우에 예외를 발생시킵니다.
config에null을 넘기면ArgumentNullException이 발생- 이미 초기화를 완료한 상태에서 초기화 메서드를 다시 호출하면
InvalidOperationException이 발생
이 예외는 메서드 호출 결과의 Failure와 달리 초기 설정을 즉시 실패시키는 경우입니다. Resolve<T>()의 등록 누락 예외를 포함한 공통 원칙은 공통 오류 처리를 참조하세요.