Product

class in UnityEngine.Purchasing

マニュアルに切り替える

説明

Product クラスは、IAP で購入されるプロダクトを表します。

以下は、Store クラスでのプロダクトへの参照の利用例です。

using System;
using UnityEngine;
using UnityEngine.Purchasing;

public class MyStoreClass : MonoBehaviour, IStoreListener { static string kProductID100Currency = "virtualcurrency_100"; IStoreController m_StoreController; void Awake() { ConfigurationBuilder builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance()); builder.AddProduct(kProductID100Currency, ProductType.Consumable); UnityPurchasing.Initialize(this, builder); }

public void PurchaseCurrency() { if (m_StoreController != null) { // Fetch the currency Product reference from Unity Purchasing Product product = m_StoreController.products.WithID(kProductID100Currency); if (product != null && product.availableToPurchase) { m_StoreController.InitiatePurchase(product); } } }

public void OnInitialized(IStoreController controller, IExtensionProvider extensions) { m_StoreController = controller; }

public void OnInitializeFailed(InitializationFailureReason error) {} public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs e) { if (String.Equals(e.purchasedProduct.definition.id, kProductID100Currency, StringComparison.Ordinal)) { Debug.Log("Purchased 100 coins"); } return PurchaseProcessingResult.Complete; }

public void OnPurchaseFailed(Product item, PurchaseFailureReason r) {} }

変数

availableToPurchaseストアのサブシステムに基づいて、このプロダクトが購入可能かを判断します。
definitionプロダクトの不変の基本的属性
hasReceipt購入済みの NonConsumable (非消耗型) や Subscription (購読) が常にレシートを持つべきかどうか。
metadataストアのシステムによって提供されるローカライズされたメタデータ
receipt可能な場合は、プロダクトの購入レシート。ない場合は null。
transactionIDある場合は、このプロダクトのトランザクションの一意の識別子。ない場合は、null。

Public 関数

Equals集合内で等しいかを判定します。
GetHashCodeGetHashCode は集合内で使用されます。