예제 #1
0
        public override void RetrieveProducts(ReadOnlyCollection <ProductDefinition> products)
        {
#if HIGH_PERMISSION_DATA
            if ((isManagedStoreEnabled || Application.isEditor) &&
                m_managedStore != null &&
                (isRefreshing || isFirstTimeRetrievingProducts))
            {
                m_BuilderProducts = new HashSet <ProductDefinition>(products);
                m_managedStore.FetchProducts(ProcessManagedStoreResponse);
            }
            else // Fetch Additional Products triggered by developer with IStoreController or managedStore is unavailable
            {
#endif
            store.RetrieveProducts(JSONSerializer.SerializeProductDefs(products));
#if HIGH_PERMISSION_DATA
        }

        isFirstTimeRetrievingProducts = false;
#endif
        }
예제 #2
0
        internal void ProcessManagedStoreResponse(List <ProductDefinition> storeProducts)
        {
            m_storeCatalog = storeProducts;
            if (isRefreshing)
            {
                isRefreshing = false;
                // Skip native store layer during refresh if catalog contains no information
                if (storeCatalog.Length == 0 && refreshCallback != null)
                {
                    refreshCallback();
                    refreshCallback = null;
                    return;
                }
            }
            var products = new HashSet <ProductDefinition>(m_BuilderProducts);

            if (storeProducts != null)
            {
                products.UnionWith(storeProducts);
            }
            store.RetrieveProducts(JSONSerializer.SerializeProductDefs(products));
        }
예제 #3
0
 /// <summary>
 /// To use for Amazon’s local Sandbox testing app, generate a JSON description of your product catalog on the device’s SD card.
 /// </summary>
 /// <param name="products">Products to add to the testing app JSON.</param>
 public void WriteSandboxJSON(HashSet <ProductDefinition> products)
 {
     android.Call("writeSandboxJSON", JSONSerializer.SerializeProductDefs(products));
 }
예제 #4
0
 public override void RetrieveProducts(ReadOnlyCollection <ProductDefinition> products)
 {
     m_Store.RetrieveProducts(JSONSerializer.SerializeProductDefs(products));
 }