Unity IAP - 根据购买价格获取货币

问题描述 投票:0回答:1

我正在尝试适用于 Android 和 iOS 的 Unity IAP,通过“IAP 按钮”脚本我连接了一个打印产品价格的文本组件,但我无法打印货币,例如欧元或美元。我还考虑过编写一个脚本来确定用户的区域,但从文档中我找到了该组件:

product.metadata.localizedPriceString;

它应该自动返回货币。问题是我无法在不遇到空异常错误的情况下实现此方法。有人能给我一个这个工作代码的例子吗?谢谢大家的帮助。

我还附上了应该返回值的代码行,但没有任何反应。 (我指定我已经创建了该产品并测试了 IAP,它可以正常工作)。

private string price_Symbol;
public Text priceSymbol;
IStoreController m_storeController;
Product product;
string productId;

private void Start()
{
    productId = "product_test";
    product = m_storeController.products.WithStoreSpecificID(productId);
    symbol();
}

public string symbol()
{
    price_Symbol = product.metadata.localizedPriceString;
    Debug.Log($"price_Symbol: {price_Symbol}");
    return price_Symbol;
    
}
c# unity-game-engine in-app-purchase
1个回答
0
投票

price_Symbol = product.metadata.localizedPriceString;
行是这样写的吗?根据 docs
localizedPriceString
返回
string
,但您将结果直接分配给
Text
组件。

如果

Text priceSymbol
在您的检查器中正确分配,那么
price_Symbol.text = product.metadata.localizedPriceString;
应该按预期工作。

© www.soinside.com 2019 - 2024. All rights reserved.