メタフレームのメソッドとイベントを探る

window.metaframeオブジェクト

スクリプトがロードされると、metaframeオブジェクトは、アプリケーションのグローバルなwindowオブジェクトで利用できるようになります。メタフレームオブジェクトには、ウェブアプリケーションでメタフレームを管理するのに必要なメソッドのリストが含まれています。

window.metaframe.createメソッド

メソッド署名:

Copy
Full screen
Small screen
 1window.metaframe.create: (parameters: {
 2 loginProjectId: string,
 3 merchantId?: number,
 4 projectId?: number,
 5 orbsApiHostId?: string,
 6 isMobile?: boolean,
 7 isCollapsed?: boolean,
 8 layoutSettings?: {
 9     desktop: {
10       widgetMarginTop?: number,
11     },
12     mobile: {
13       widgetMarginTop?: number,
14     },
15   },
16}) => void;

ウェブアプリケーションでメタフレームを初期化します。

パラメータ種類説明文
parameters
objectメタフレームを起動するためのパラメータを持つオブジェクト。
parameters.loginProjectId
stringログインID。これを取得するには、パブリッシャーアカウントを開き、プレイヤー > ログイン > ダッシュボード > ログインプロジェクトセクションに移動します。必須です。
parameters.merchantId
stringマーチャントID。このパラメータはパブリッシャーアカウントで次の場所にあります:
  • 会社設定 > 会社セクション。
  • パブリッシャーアカウントのブラウザのアドレスバーにあるURLの中で。URLのフォマットは次のとおりです:https:​//publisher.xsolla.com/<merchantId>/
パブリッシャーアカウントのプロジェクト設定で、「仮想通貨」または「バックパック」機能が有効になっている場合は必須です。
parameters.projectID
stringプロジェクトID。このパラメータは、パブリッシャーアカウントトのプロジェクト名の横にあります。
パブリッシャーアカウントのプロジェクト設定で、「バックパック」機能が有効になっている場合は必須です。
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ビューポートを基準としたメタフレームウィジェットの上余白(px単位)。デフォルト値は16
parameters.parameters.layoutSettings.mobile
objectモバイル版ウィジェットのレイアウトをカスタマイズするためのパラメータを持つオブジェクト。必須です
parameters.layoutSettings.mobile.widgetMarginTop
numberビューポートを基準としたメタフレームウィジェットの上余白(px単位)。デフォルト値は72
お知らせ
モバイル版のウィジェットの位置は、パブリッシャーアカウントで設定できます。詳細な情報は、モバイル版の設定セクションに記載されています。

window.metaframe.setIsMobileメソッド

メソッド署名:

Copy
Full screen
Small screen
1window.metaframe.setIsMobile(isMobile: boolean)

メタフレームをデスクトップ版からモバイル版に、またはその逆に切り替えます。

パラメータ種類説明文
isMobile
booleanメタフレームをモバイルバージョンに切り替えるかどうか。trueに設定すると、メタフレームはモバイル版に切り替わります。falseに設定すると、デスクトップ版に切り替わります。
お知らせ
モバイル版のウィジェットの位置は、パブリッシャーアカウントで設定できます。詳細な情報は、モバイル版の設定セクションに記載されています。

window.metaframe.partnerActionsオブジェクト

オブジェクトにはメタフレームでアクションをトリガーするメソッドが含まれます。

このオブジェクトのメソッドを使用する前に、メタフレームが完全にロードされていることを確認する必要があります。これを行うには、メタフレームのロードイベントをサブスクリプします。イベントが処理されると、このオブジェクトのメソッドが使用可能になります。

メタフレームのロードイベントにリスナーを設定する例:

Copy
Full screen
Small screen
1window.addEventListener("@metaframe-partner-events:app-loaded", () => {
2
3 //Here you can use partner actions
4
5});

window.metaframe.partnerActions.openBackpackItemPageメソッド

メソッド署名:

Copy
Full screen
Small screen
1openBackpackItemPage: (itemId: string) => void;

Backpackセクションで指定したアイテムのページを開きます。

このメソッドが正しく機能するためには、次の条件を満たす必要があります:

パラメータ種類説明文
itemId
stringアイテムを作成するAPIメソッドを呼び出した際に渡されるアイテムの内部IDです。

window.metaframe.partnerActions.openLoginメソッド

メソッド署名:

Copy
Full screen
Small screen
1openLogin: () => void;

ユーザー認証フォームを開きます。ユーザーが既に認証されている場合は、ブラウザコンソールにエラーが表示されます。

window.metaframe.partnerActions.openProfileメソッド

メソッド署名:

Copy
Full screen
Small screen
1openProfile: () => void;

現在のユーザーのProfileセクションを開きます。ユーザーが認証されていない場合は、ブラウザコンソールにエラーが表示されます。

window.metaframe.partnerActions.openWalletメソッド

メソッド署名:

Copy
Full screen
Small screen
1openWallet: () => void;

現在のユーザーのWalletセクションを開きます。ユーザーが認証されていない場合は、ブラウザコンソールにエラーが表示されます。

お知らせ
このメソッドが正しく機能するためには、ウィジェットでWalletセクションを構成する必要があります

window.metaframe.partnerActions.openBackpackメソッド

メソッド署名:

Copy
Full screen
Small screen
1openBackpack: () => void;

現在のユーザーのBackpackセクションを開きます。ユーザーが認証されていない場合は、ブラウザコンソールにエラーが表示されます。

お知らせ
このメソッドが正しく機能するためには、次の条件を満たす必要があります:

window.metaframe.partnerActions.openCustomMiniAppメソッド

メソッド署名:

Copy
Full screen
Small screen
1openCustomMiniApp: (params: {miniAppName: string}) => void;

以下のいずれかの条件を満たす場合、指定されたカスタムセクションをiframeタイプで開きます:

  • 指定したカスタムセクションの設定でユーザーログイン前にこのアプリを表示するトグルが有効で、現在のユーザーが認証されていない場合。
  • 指定したカスタムセクションの設定でユーザーログイン後にこのアプリを表示するトグルが有効で、現在のユーザーが認証された場合。

条件が満たされない場合は、ブラウザコンソールにエラーが表示されます。

お知らせ
この方法が正しく機能するためには、ウィジェットでiframeタイプのカスタムセクションを構成する必要があります。 メソッドを呼び出す前に、メタフレームウィジェットが指定したカスタムセクションを正常に読み込みました。これを行うには、カスタムセクションをロードするのイベントを追跡します
パラメータ種類説明文
params
objectパラメータを持つオブジェクト。
params.miniAppName
stringiframeタイプのカスタムセクションの設定で指定されたアプリ名。必須です

window.Metaframe.partnerActions.pushNotificationメソッド

メソッド署名:

Copy
Full screen
Small screen
1pushNotification: (params: {
2  type: string; // use “success”, “warning”, “error” or “info”
3  text: string;
4  button?: {
5    text: string;
6    onClick: () => void;
7  };
8  durationInMs?: number;
9}) => 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メソッド

メソッド署名:

Copy
Full screen
Small screen
1setIsCustomMiniAppVisible: (params: {
2  miniAppName: string;
3  isVisible: boolean;
4}) => 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です。

カスタムセクションクリックイベントのリスナーを設定する例:

Copy
Full screen
Small screen
1document.addEventListener("@metaframe:custom-action:00000000-0000-0000-0000-000000000000", () => {
2
3 // Your code here...
4
5})
この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
最終更新日: 2025年9月19日

誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。

問題を報告する
当社は常にコンテンツを見直しています。お客様のご意見は改善に役立ちます。
フォローアップ用のメールをご提供してください
ご意見ありがとうございました!
フィードバックを送信できませんでした
後でもう一度お試しいただくか、doc_feedback@xsolla.comまでお問い合わせください。