无法恢复作为礼物赠送的 lifetimevirtualgood 项目

Cannot restore lifetimevirtualgood item that was given as a gift

我用这个方法

soomla::CCStoreInventory::sharedStoreInventory()->giveItem(REMOVE_ADS_ITEM_ID, 1);

给玩家一件 remove-ads 物品。在那之后,玩家再次删除并重新安装应用程序并单击 Restore Purchase button 但没有 remove-ads 项目被恢复。

我很困惑,给定的项目无法恢复,或者我错过了什么?请帮忙。

恢复功能通过查找用户拥有的 IAP(在应用程序 Store/Google Play/etc 上)来工作,并在本地提供每个非消耗品,以便 Soomla 知道它。

由于您只是直接在本地提供该项目,restore items 不知道该项目已被授予(因为您正在擦除表明它已授予的数据)。还是只看官方店。

您可以做的是将用户拥有的项目同步到云中,并使用 UID 从中恢复。如果你想要完全控制,这是最好的选择,但这涉及到你自己的服务器,并提出一种纯粹从设备信息生成 UID 的方法,而不是一刀切。然后,当您可以验证同一用户在您的服务器上拥有这些物品时,您可以在本地提供这些物品。

但是有一个更简单的方法。 Soomla 有一个官方实现,他们为您完成所有这些:Grow Sync.

更新(2016 年 5 月):Soomla 现在正在关闭 Grow Sync、Highway 等,因此您不能再依赖这些服务。