我为android实现了Soomla inn app的购买,它工作得很好,但是当我成功完成购买时,我的分数没有更新。我设置了购买的"android.test.purchased“。以下是我的代码
void Start ()
{
PlayerPrefs.SetInt("Score" ,0)
}
void CheckIAP_PurchaseStatus()
{
//What I do here ????? below check not working for me
if (StoreInventory.IsVirtualGoodEquipped ("coinspack_a_item_id"))
{
PlayerPrefs.SetInt("Score" , PlayerPrefs.GetInt("Score") + 8000);
}}
void OnGUI ()
{
if (GUI.Button(new Rect(10, 10, 50, 50), "Buy"))
{
try {
StoreInventory.BuyItem ("coinspack_a_item_id");
}
catch (Exception e)
{
Debug.Log ("SOOMLA/UNITY" + e.Message);
}
}
}发布于 2015-06-29 15:11:17
你做错了这件事。您真的应该阅读SOOMLA文档。这是我组装的一个快速的YouTube tutorial。
首先,如果我是你,我不会自己管理经济,我宁愿让SOOMLA来做。如果您已经定义了货币包,则SOOMLA将自动充值您的余额。
2-否则,如果你想自己做,那么设置SOOMLA提供的事件处理程序,并在成功的市场购买后触发的OnItemPurchased事件中进行。
3-确保核心和商店前置在整个游戏持续时间内只加载一次的场景/页面上。
4-如果你想捕获存储中的错误,那么不要使用try catch来实现,而是设置OnUnexpectedErrorInTheStore事件。
请阅读文档here,作为附注,不确定您是否知道,但是SOOMLA在answers.soom.la上有一个专门的支持论坛,在那里您可以更快地获得答案。
发布于 2015-06-29 15:14:07
以下是几点建议:
onSoomlaStoreInitialized事件,并仅在此事件之后才开始查询库存。PlayerPrefs来解决这个问题:http://answers.soom.la/https://stackoverflow.com/questions/31098790
复制相似问题