public void OnInitialized(IStoreController controller, IExtensionProvider extensions) { // Purchasing has succeeded initializing. Collect our Purchasing references. Debug.Log("OnInitialized: PASS"); // Overall Purchasing system, configured with products for this application. m_StoreController = controller; // Store specific subsystem, for accessing device-specific store features. m_StoreExtensionProvider = extensions; // Set play store extensions. _playStoreExtensions = m_StoreExtensionProvider.GetExtension <Google.Play.Billing.IGooglePlayStoreExtensions>(); CheckSubscriptionsAvailabilityBasedOnReceipt(controller); // Pass an obfuscated account id. _playStoreExtensions.SetObfuscatedAccountId(TrivialKartClientUtil.GetObfuscatedAccountId()); // Set the deferred purchases callback. _playStoreExtensions.SetDeferredPurchaseListener( delegate(Product product) { ProcessDeferredPurchase(product.definition.id); // Do not grant the item here. Instead, record the purchase and remind // the user to complete the transaction in the Play Store. }); }
void IStoreListener.OnInitialized(IStoreController controller, IExtensionProvider extensions) { DebugLog("IAP Manager successfully initialized"); storeController = controller; googlePlay = extensions.GetExtension <Google.Play.Billing.IGooglePlayStoreExtensions>(); if (deferPurchaseCompatible) { // enable deferred purchases IPurchasingModule googlePlayModule = Google.Play.Billing.GooglePlayStoreModule.Instance(); var configurationBuilder = ConfigurationBuilder.Instance(googlePlayModule); configurationBuilder.Configure <Google.Play.Billing.IGooglePlayConfiguration>().EnableDeferredPurchase(); // Notify callback for when purchases are deferred to a parent. googlePlay.SetDeferredPurchaseListener(product => { DebugLog("Purchase request deferred to parent."); OnPurchaseDeferred?.Invoke(product); }); } initStatus = InitStatus.Ok; onInitDone?.Invoke(initStatus); onInitDone = null; }
public void OnInitialized(IStoreController controller, IExtensionProvider extensions) { log.Info(nameof(OnInitialized)); storeController = controller; extensionsProvider = extensions; if (!PlayerIdStorage.TryGetServiceId(out string playerServiceId)) { log.Fatal("Не удалось достать playerServiceId"); return; } IGooglePlayStoreExtensions playStoreExtensions = extensionsProvider.GetExtension <IGooglePlayStoreExtensions>(); string obfuscatedAccountId = playerServiceId.Caesar(); playStoreExtensions.SetObfuscatedAccountId(obfuscatedAccountId); }