메타프레임 메서드 및 이벤트 살펴보기
window.metaframe 개체
스크립트가 로드되면 애플리케이션의 글로벌 window
개체에서 metaframe
개체를 사용할 수 있습니다. 메타프레임 개체에는 웹 애플리케이션에서 메타프레임을 관리하는 데 필요한 메서드 목록이 포함되어 있습니다.
window.metaframe.create 메서드
메서드 시그니처:
window.metaframe.create: (parameters: {
loginProjectId: string,
merchantId?: number,
projectId?: number,
orbsApiHostId?: string,
isMobile?: boolean,
isCollapsed?: boolean,
layoutSettings?: {
desktop: {
widgetMarginTop?: number,
},
mobile: {
widgetMarginTop?: number,
},
},
}) => void;
웹 애플리케이션에서 메타프레임을 초기화합니다.
매개 변수 | 유형 | 설명 |
---|---|---|
parameters | object | 메타프레임 실행을 위한 매개 변수가 있는 개체입니다. |
parameters.loginProjectId | string | 로그인 ID. 이를 얻으려면 관리자 페이지를 열고 로그인 > 대시보드 > 로그인 프로젝트 섹션으로 이동합니다. 필수 항목입니다. |
parameters.merchantId | string | 판매자 ID. 이 매개변수는 관리자 페이지의 다음 위치에서 확인할 수 있습니다.
|
parameters.projectID | string | 프로젝 ID. 프로젝트의 이름 바로 옆에 있는 관리자 페이지에서 이 매개 변수를 찾을 수 있습니다.관리자 페이지의 프로젝트 설정에서 Backpack 기능이 활성화된 경우 필수 항목입니다. |
parameters.orbsApiHostId | string | 호스트 ID. 이를 얻으려면 integration@xsolla.com 통합 팀 또는 csm@xsolla.com 고객 성공 관리자에게 문의하여 프로젝트 ID와 판매자 ID를 전달하세요.관리자 페이지의 프로젝트 설정에서 인게임 재화 기능이 활성화된 경우 필수 항목입니다. |
parameters.isMobile | boolean | 메타프레임이 기본적으로 모바일 레이아웃을 사용하는지 여부입니다. |
parameters.isCollapsed | boolean | 위젯이 기본적으로 축소(최소화)된 상태로 표시되는지 여부입니다. 기본값은 true 입니다. |
parameters.layoutSettings | object | 위젯 레이아웃을 사용자 지정하기 위한 매개 변수가 있는 개체입니다. |
parameters.layoutSettings.desktop | object | 데스크톱 버전 위젯의 레이아웃을 사용자 지정하기 위한 매개 변수가 있는 개체입니다. 필수. |
parameters.layoutSettings.desktop.widgetMarginTop | number | 뷰포트와 상대적인 메타프레임 위젯의 상단 여백(픽셀 단위)입니다. 기본값은 16 입니다. |
parameters.parameters.layoutSettings.mobile | object | 모바일 버전 위젯의 레이아웃을 사용자 지정하기 위한 매개 변수가 있는 개체입니다. 필수. |
parameters.layoutSettings.mobile.widgetMarginTop | number | 뷰포트와 상대적인 메타프레임 위젯의 상단 여백(픽셀 단위)입니다. 기본값은 72 입니다. |
window.metaframe.setIsMobile 메서드
메서드 시그니처:
window.metaframe.setIsMobile(isMobile: boolean)
메타프레임을 데스크톱에서 모바일 버전으로 또는 그 반대로 전환합니다.
매개 변수 | 유형 | 설명 |
---|---|---|
isMobile | boolean | 메타프레임을 모바일 버전으로 전환할지 여부. true 로 설정된 경우, 메타프레임이 모바일 버전으로 전환됩니다. false 로 설정된 경우, 메타프레임이 데스크톱 버전으로 전환됩니다. |
window.metaframe.partnerActions 개체
이 개체에는 메타프레임에서 동작을 트리거하는 메서드가 포함되어 있습니다.
이 개체의 메서드를 사용하기 전에 메타프레임이 완전히 로드되었는지 확인해야 합니다. 이렇게 하려면 메타프레임 로드 이벤트를 구독합니다. 이벤트가 처리되면 개체의 메서드를 사용할 수 있습니다.
메타프레임 로드 이벤트에 리스너를 설정하는 예시:
- javascript
window.addEventListener("@metaframe-partner-events:app-loaded", () => {
//Here you can use partner actions
});
window.metaframe.partnerActions.openBackpackItemPage 메서드
메서드 시그니처:
openBackpackItemPage: (itemId: string) => void;
메서드가 적절히 작동하려면 다음 조건이 충족되어야 합니다:
- 관리자 페이지에서 Backpack 기능이 활성화됩니다.
- 사용자가 메타프레임 측에서 인증됩니다.
매개 변수 | 유형 | 설명 |
---|---|---|
itemId | string | 아이템 생성 API 메서드를 호출할 때 전달되는 아이템의 내부 ID입니다. |
window.metaframe.partnerActions.openLogin 메서드
메서드 시그니처:
openLogin: () => void;
사용자 권한 부여 양식을 엽니다. 사용자에게 이미 권한이 부여된 경우 브라우저 콘솔에 오류가 표시됩니다.
window.metaframe.partnerActions.openProfile 메서드
메서드 시그니처:
openProfile: () => void;
현재 사용자의
window.metaframe.partnerActions.openWallet 메서드
메서드 시그니처:
openWallet: () => void;
현재 사용자의
window.metaframe.partnerActions.openBackpack 메서드
메서드 시그니처:
openBackpack: () => void;
현재 사용자에 대한
- 관리자 페이지에서 Backpack 기능이 활성화됩니다.
- 사용자가 메타프레임 측에서 인증됩니다.
window.metaframe.partnerActions.openCustomMiniApp 메서드
메서드 시그니처:
openCustomMiniApp: (params: {miniAppName: string}) => void;
다음 조건 중 하나가 충족되면 Iframe 유형으로 지정된 사용자 지정 섹션을 엽니다:
- 지정된 사용자 지정 섹션 설정의 사용자 로그인 이전에 이 앱 표시 토글이 활성화될 경우 현재 사용자에게 권한이 부여되지 않습니다.
- 지정된 사용자 섹션 설정의 사용자 로그인 후 이 앱 표시 토글이 활성화될 경우 현재 사용자에게 권한이 부여됩니다.
조건이 충족되지 않으면 브라우저 콘솔에 오류가 표시됩니다.
매개 변수 | 유형 | 설명 |
---|---|---|
params | object | 매개 변수가 있는 개체입니다. |
params.miniAppName | string | 사용자 지정 섹션의 설정에서 Iframe 유형으로 지정한 앱 이름입니다. 필수. |
window.metaframe.partnerActions.pushNotification 메서드
메서드 시그니처:
pushNotification: (params: {
type: string; // use “success”, “warning”, “error” or “info”
text: string;
button?: {
text: string;
onClick: () => void;
};
durationInMs?: number;
}) => void;
새 알림을 알림 스택으로 푸시합니다.
매개 변수 | 유형 | 설명 |
---|---|---|
params | object | 매개 변수가 있는 개체입니다. |
paramps.type | string | 알림 유형입니다. 가능 값: “success” , “warning” , “error” , “info” . 필수. |
paramps.text | string | 알림 텍스트입니다. 필수. |
params.button.text | string | 복사 버튼. 필수. |
params.button.onClick | () => void | 버튼 클릭 시 호출되는 함수입니다.필수. |
params.durationInMs | number | 화면에 알림이 표시되는 시간(밀리초)입니다. |
window.metaframe.partnerActions.setIsCustomMiniAppVisible 메서드
메서드 시그니처:
setIsCustomMiniAppVisible: (params: {
miniAppName: string;
isVisible: boolean;
}) => void;
지정된 사용자 지정 섹션을 표시하거나 숨깁니다.
매개 변수 | 유형 | 설명 |
---|---|---|
params | object | 매개 변수가 있는 개체입니다. |
params.miniAppName | string | 사용자 지정 섹션의 설정에 지정된 앱 이름입니다. 필수. |
params.isVisible | boolean | 위젯에 지정된 사용자 지정 섹션을 표시할지 여부입니다. 필수. |
위젯 이벤트
다음 메타프레임 이벤트를 구독할 수 있습니다:
매개 변수 | 유형 |
---|---|
@metaframe-partner-events:app-loaded | 이 이벤트는 메타프레임이 성공적으로 로드된 후 window.metaframe.create 메서드가 호출되면 트리거됩니다. |
@metaframe-partner-events:not-authorized-mini-apps-loaded | 메타프레임이 사용자 로그인 후 이 앱 표시 토글이 활성화된 설정의 사용자 지정 섹션을 성공적으로 로드할 경우 이 이벤트가 트리거됩니다. |
@metaframe-partner-events:authorized-mini-apps-loaded | 메타프레임이 사용자 로그인 후 이 앱 표시 토글이 활성화된 설정의 사용자 지정 섹션을 포함하여 구성된 모든 위젯 섹션을 성공적으로 로드할 경우 이 이벤트가 트리거됩니다. |
@metaframe-partner-events:login-successful | 사용자가 메타프레임에 성공적으로 로그인할 때 이 이벤트가 트리거됩니다. 사용자의 인증 토큰이 있는 detail 개체를 포함합니다. |
@metaframe-partner-events:logout-successful | 이 이벤트는 사용자가 시스템에서 성공적으로 로그아웃할 때 트리거됩니다. |
@metaframe-partner-events:mini-app-menu-button-clicked:<YOUR_MINI_APP_NAME> | 사용자가 메타프레임 사용자 지정 섹션을 클릭하면 이 이벤트가 트리거됩니다. |
@metaframe:custom-action:<ACTION_ID> | 이 이벤트는 메타프레임에서 사용자가 작업 유형 사용자 지정 섹션을 선택하면 트리거됩니다. 자세한 정보는 사용자 지정 섹션의 이벤트 추적을 참조하십시오. |
사용자 지정 섹션의 이벤트 추적
메타프레임에 작업 유형이 있는 사용자 지정 섹션을 추가할 수 있습니다. 이 섹션은 클릭 시 웹사이트 열기와 같은 작업을 수행하는 버튼으로 표시됩니다.
사용자 지정 섹션 클릭 이벤트를 추적하려면 @metaframe:custom-action:<ACTION_ID>
이벤트를 구독해야 합니다. 여기에서, <ACTION_ID>
는 사용자 지정 섹션 설정 시 관리자 페이지에 생성된 작업 ID입니다.
사용자 지정 섹션 클릭 이벤트에 대한 리스너 설정 예시:
- javascript
document.addEventListener("@metaframe:custom-action:00000000-0000-0000-0000-000000000000", () => {
// Your code here...
})
오자 또는 기타 텍스트 오류를 찾으셨나요? 텍스트를 선택하고 컨트롤+엔터를 누르세요.