更新日志
本页列出 Web SDK(@frvraps/frvr-sdk)对游戏开发者可见的变化,包括新增和变更的 API。内部修复不在此列。
FRVR 通过 CDN 提供最新发布的 bundle,所以游戏不需要重新构建就能获得这些变化。新增的 API 都可以安全地做特性检测,写法见各链接页面。
已合并,尚未发布。它们随 14.27.0 之后的下一个版本到来。
FRVR.profile.getLocale():以 BCP 47 标签返回玩家的 locale。在 YouTube Playables 和 Facebook Instant 上用渠道的语言,其他渠道用浏览器的,最后回退到en-US。见个人资料 › Locale。FRVR.notifications.supportsLocalNotifications():同步检查是否支持本地通知,不会向玩家弹提示。FRVR.notifications.unscheduleLocalNotification(code)和cancelAllLocalNotifications()。见通知。
- 国际化要求现在指定使用
FRVR.profile.getLocale()。本文档早期版本写的是FRVR.locale.get()和FRVR.locale.onChange(),它们在 SDK 里从未存在过。
14.19.1 → 14.27.0
Section titled “14.19.1 → 14.27.0”发布于 2026 年 6 月 23 日至 10 月 3 日之间。
| 内容 | 起始版本 | 详情 |
|---|---|---|
FRVR.audio:宿主为玩家绘制的声音和音乐开关 | 14.23.0 | 音频状态 |
FRVR.channelCharacteristics.hasNativeAudioControls 和 allowSharing | 14.23.0 | 渠道特性 |
FRVR.hostUI.titlebar:读取、隐藏并跟随 FRVR 原生 App 的标题栏 | 14.27.0 | 宿主 UI |
FRVR.config.host:标题栏、宿主会话和存储沙箱选项 | 14.27.0 | 配置 › host |
FRVR.auth.requestLogin():打开宿主的登录界面 | 14.27.0 | 登录 |
FRVR.auth.getLoginCapabilities():渠道提供的登录方式和 provider | 14.27.0 | 登录 |
Web 支付:web 渠道上的 Google Pay、Apple Pay 和银行卡结账 | 14.22.0 | 内购 › Web 上的购买 |
FRVR.iap.getPurchaseOptions() 和 purchase(id, meta, { provider }) | 14.22.0 | 内购 › Web 上的购买 |
IAPPurchaseErrorPending、IAPPurchaseErrorPopupBlocked、IAPPurchaseErrorHeldByEconomy、IAPPurchaseErrorInProgress | 14.24.0 | 内购 › 购买 |
FRVR.config.iap.enabled:为某个构建关闭内购 | 14.21.0 | 配置 |
| 支持 frvr.com 游戏页面:游戏外层的页面负责加载界面、登录、分享按钮和音频开关 | 14.23.0 | 渠道 |
| 在 Google Play、iOS 和 Samsung Galaxy Store 的 App 里用 FRVR 账号登录 | 14.27.0 | 登录 |
- **
FRVR.iap.onReady可能触发不止一次。**玩家在会话中途登录另一个账号时它会再次执行,让游戏恢复该账号的购买。确保回调执行两次也没问题。见内购 › 账号变化。(14.26.0) - 已付款但未确认的 Web 购买现在会 reject。
FRVR.iap.purchase()抛出IAPPurchaseErrorPending而不是 resolve,这笔购买稍后通过getUnconsumedPurchases()返回。(14.24.0) - **
FRVR.cloudStorage在每个渠道上都可用。**没有云端后端的渠道现在把数据存在设备上,而不是让模块不可用。这些数据不会跟随玩家到另一台设备。(14.20.0) - **Facebook Instant 上提交分数不再需要玩家名字。**平台不提供名字的玩家,其分数以前会被丢弃。(14.25.0)
- YouTube Playables 上关闭了内购,该平台没有站内支付。那里
FRVR.iap.isReady()一直为false。(14.23.0)
以下是文档写错了,SDK 本身没有变化: