Version: 2017.3
Definiendo productos
Mirando Metadata del Producto

Inicialización

Usted debe proporciona una implementación de la interfaz IStoreListenerque el Unity IAP utiliza para informarle a su aplicación de eventos relacionados a compras.

Llame el método UnityPurchasing.Initialize para empezar el proceso de inicialización, proporcionando la implementación de su listener y configuración.

Tenga en cuenta que la inicialización no va a fallar si la red no está disponible; el Unity IAP va a continuar a inicializarse en el fondo. La inicialización solamente va a fallar si el Unity IAP se encuentra con un problema sin recuperarse tal como una mis-configuración o el IAP estando deshabitado en los ajustes del dispositivo.

Consecuentemente el Unity IAP puede tomar un periodo de tiempo arbitrario para inicializarse; indefinidamente si el usuario está en el modo avión. Usted debería diseñar su tienda de acuerdo al prevenir que los usuarios intenten de hacer compras si la inicialización no se ha completado exitosamente.

using UnityEngine;
using UnityEngine.Purchasing;

public class MyIAPManager : IStoreListener {

    private IStoreController controller;
    private IExtensionProvider extensions;

    public MyIAPManager () {
        var builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance());
        builder.AddProduct("100_gold_coins", ProductType.Consumable, new IDs
        {
            {"100_gold_coins_google", GooglePlay.Name},
            {"100_gold_coins_mac", MacAppStore.Name}
        });

        UnityPurchasing.Initialize (this, builder);
    }

    /// <summary>
    /// Called when Unity IAP is ready to make purchases.
    /// </summary>
    public void OnInitialized (IStoreController controller, IExtensionProvider extensions)
    {
        this.controller = controller;
        this.extensions = extensions;
    }

    /// <summary>
    /// Called when Unity IAP encounters an unrecoverable initialization error.
    ///
    /// Note that this will not be called if Internet is unavailable; Unity IAP
    /// will attempt initialization until it becomes available.
    /// </summary>
    public void OnInitializeFailed (InitializationFailureReason error)
    {
    }

    /// <summary>
    /// Called when a purchase completes.
    ///
    /// May be called at any time after OnInitialized().
    /// </summary>
    public PurchaseProcessingResult ProcessPurchase (PurchaseEventArgs e)
    {
        return PurchaseProcessingResult.Complete;
    }

    /// <summary>
    /// Called when a purchase fails.
    /// </summary>
    public void OnPurchaseFailed (Product i, PurchaseFailureReason p)
    {
    }
}
Definiendo productos
Mirando Metadata del Producto
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961