Select your preferred scripting language. All code snippets will be displayed in this language.
Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.
Closeid | The store independent ID. |
type | The product type. |
storeIDs | An optional set of store-specific identifiers, for when your product has different IDs on different stores. |
ConfigurationBuilder The referenced instance. Suitable for chaining.
Add a product with a Unity IAP ID, type and optional set of store-specific IDs.
Here is an example adding a product inside a Store class.
#pragma strict public class MyStoreClass extends MonoBehaviour { function Awake() { var builder: ConfigurationBuilder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance()); builder.AddProduct("levelpackfoo", ProductType.NonConsumable); UnityPurchasing.Initialize(this, builder); } public function OnInitialized(controller: IStoreController, extensions: IExtensionProvider) { } public function OnInitializeFailed(error: InitializationFailureReason) { } public function ProcessPurchase(e: PurchaseEventArgs) { return PurchaseProcessingResult.Complete; } public function OnPurchaseFailed(item: Product, r: PurchaseFailureReason) { } }
using UnityEngine; using UnityEngine.Purchasing;
public class MyStoreClass : MonoBehaviour, IStoreListener { void Awake() { ConfigurationBuilder builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance()); builder.AddProduct("levelpackfoo", ProductType.NonConsumable); UnityPurchasing.Initialize(this,builder); } public void OnInitialized(IStoreController controller, IExtensionProvider extensions) {} public void OnInitializeFailed(InitializationFailureReason error) {} public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs e) { return PurchaseProcessingResult.Complete; } public void OnPurchaseFailed(Product item, PurchaseFailureReason r) {} }