了解Metaframe方法和事件

window.metaframe对象

加载脚本后,metaframe对象在应用程序的全局window对象中可用。metaframe对象包含管理Web应用中Metaframe所需的方法列表。

window.metaframe.create方法

方法签名:

Copy
Full screen
Small screen
    window.metaframe.create: (parameters: {
     loginProjectId: string,
     merchantId?: number,
     projectId?: number,
     orbsApiHostId?: string,
     isMobile?: boolean,
    
    }) => void;
    

    在您的Web应用中初始化Metaframe。该方法接受包含以下参数的parameters对象以运行Metaframe:

    参数类型描述
    loginProjectId
    string登录管理器ID。要获取该ID,请打开发布商帐户,然后前往登录管理器 > 仪表板 > 您的登录管理器项目部分。必需
    merchantId
    string商户ID。可在您的发布商帐户中找到该参数:
    • 公司设置 > 公司部分。
    • 在发布商帐户任意页面的浏览器地址栏的URL中。URL的格式如下:https:​//publisher.xsolla.com/<merchant ID>/<Publisher Account section>
    如果在发布商帐户的项目设置中启用了虚拟货币背包功能,则此项为必需
    projectID
    string项目ID。您可以在您的发布商帐户项目名称旁边。
    如果在发布商帐户的项目设置中启用了背包功能,则此项为必需
    orbsApiHostId
    string主机ID。请发送邮件至integration@xsolla.com联系集成团队或发送至csm@xsolla.com联系您的客户成功经理来获取该值并提供项目ID和商户ID。
    如果在发布商帐户的项目设置中启用了虚拟货币功能,则此项为必需
    isMobile
    booleanMetaframe是否默认使用移动版布局。
    注:
    移动版本中的小组件位置可以在发布商帐户中配置。详细信息请参阅设置移动版本部分。

    window.metaframe.setIsMobile方法

    方法签名:

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

      将Metaframe从桌面版切换到移动版或反向切换。

      参数类型描述
      isMobile
      boolean是否将Metaframe切换到移动版本。如果设置为true,Metaframe将切换到移动版本。如果设置为false,Metaframe将切换到桌面版本。
      注:
      移动版本中的小组件位置可以在发布商帐户中配置。详细信息请参阅设置移动版本部分。

      window.metaframe.partnerActions对象

      该对象包含在Metaframe中触发操作的方法。

      使用此对象的方法之前,必须确保Metaframe已完全加载。为此,请订阅Metaframe加载事件。如果该事件已处理,则此对象的方法可用。

      设置Metaframe加载事件侦听器的示例:

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

      window.metaframe.partnerActions.openBackpackItemPage方法

      方法签名:

      Copy
      Full screen
      Small screen
        window.metaframe.partnerActions.openBackpackItemPage(itemId: string)
        

        打开Backpack部分中指定商品的页面。

        要使该方法正常工作,必须满足以下条件:

        • 发布商帐户中启用了背包功能。
        • 用户已通过认证进入了Metaframe。

        参数类型描述
        itemId
        string调用API方法创建商品时传递的商品内部ID。

        跟踪事件

        您可以订阅以下Metaframe事件:

        参数类型
        @metaframe-partner-events:app-loaded调用window.metaframe.create方法后成功加载Metaframe时,触发此事件。
        @metaframe-partner-events:login-successful用户成功登录Metaframe时触发此事件。它包含一个带有用户授权令牌的detail对象。
        @metaframe-partner-events:logout-successful用户成功退出系统时触发此事件。
        @metaframe:custom-action:<ACTION_ID>用户在Metaframe中选择操作类型的自定义区段时,触发此事件。有关更多信息,请参阅跟踪自定义区段的事件

        跟踪自定义区段的事件

        您可以向Metaframe添加一个操作类型的自定义区段。此区段以按钮形式出现,单击时执行一个操作,例如打开网站。

        要跟踪单击自定义区段的事件,您需要订阅@metaframe:custom-action:<ACTION_ID>事件,其中<ACTION_ID>是在发布商帐户中设置自定义区段时生成的操作ID。

        设置自定义区段点击事件侦听器的示例:

        Copy
        Full screen
        Small screen
        document.addEventListener("@metaframe:custom-action:00000000-0000-0000-0000-000000000000", () => {
        
         // Your code here...
        
        })
        
        本文对您的有帮助吗?
        谢谢!
        我们还有其他可改进之处吗? 留言
        非常抱歉
        请说明为何本文没有帮助到您。 留言
        感谢您的反馈!
        我们会查看您的留言并运用它改进用户体验。
        上次更新时间: 2024年11月1日

        发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

        报告问题
        我们非常重视内容质量。您的反馈将帮助我们做得更好。
        请留下邮箱以便我们后续跟进
        感谢您的反馈!