个人资料
FRVR.profile 暴露当前玩家由渠道分配的身份 —— 一个稳定的 ID,以及(在仍然暴露这些字段的渠道上)显示名和头像。它始终可用,即使 auth 还没完成,因为这些数据来自渠道本身。
用 FRVR.profile.id() 给任何「应当跟着这个玩家在本机存活」的本地数据做主键。如果需要跨设备身份,改用 FRVR.auth.getFRVRID()。
Facebook Instant:不再提供 name 与 photo
Section titled “Facebook Instant:不再提供 name 与 photo”在其他渠道(Google Play、iOS、各 Web 渠道)上,name 和 photo 在可用时仍按以前的行为返回。读取时永远用 ?.() 守卫。
Locale
Section titled “Locale”FRVR.profile.getLocale() 以 BCP 47 标签返回玩家的 locale,例如 en-US、pt-BR、ja。
它按顺序取第一个可用的值:
- 渠道上报的语言。YouTube Playables 和 Facebook Instant 有自己的设置,也就是玩家在宿主 App 里选的语言。
- 浏览器的:先
navigator.languages,再navigator.language。 en-US。
结果会做归一化,所以 Facebook 的 en_US 返回的是 en-US。这个调用不会抛异常,也不会返回空字符串。宿主只上报语言时,它可能只返回语言部分(ja),所以匹配时先比语言,再比地区。
在 FRVR.bootstrapper.init() resolve 之后再调用。在那之前渠道可能还不知道自己的语言,你拿到的是浏览器的。没有语言变化事件,启动时读一次即可。
Profile:读取玩家 id
loading SDK…