FRVR.cloudStorage 是按玩家维度的服务端键值仓库,以已登录的 FRVR ID 为键。任何必须跨设备保留的东西都丢这里:存档、解锁内容、好友邀请。
await FRVR.cloudStorage.setItem('save', JSON.stringify(state));
const raw = await FRVR.cloudStorage.getItem('save');
const state = raw ? JSON.parse(raw) : null;
await FRVR.cloudStorage.removeItem('save');
值一律是字符串,与本地存储的约定一致。
有多个键时减少往返次数:
await FRVR.cloudStorage.setItems([
{ key: 'save', value: JSON.stringify(state) },
{ key: 'unlocked', value: JSON.stringify(unlocks) },
]);
const { items } = await FRVR.cloudStorage.getItems(['save', 'unlocked']);
希望好友能看到的数据 —— 比如你的最高分摘要、当前公会 —— 走 setPublicItems / queryPublicItems:
await FRVR.cloudStorage.setPublicItems([
{ key: 'best_score', value: '42000' },
]);
// 在另一名玩家的设备上:
const result = await FRVR.cloudStorage.queryPublicItems({
userIds: ['friend_frvr_id_1', 'friend_frvr_id_2'],
keys: ['best_score'],
});
FRVR.config.cloudStorage = {
playerStorage: { env: 'production' }, // 或 'staging'
};
云端初始化失败时,SDK 会回退到内存存储 —— 游戏照常运行,但数据不会同步。把读出来是 falsy 当成「用户没存档」之前,记得加判断。