Quantcast
Channel: Questions in topic: "ads"
Viewing all articles
Browse latest Browse all 1416

disable ads admob with iap

$
0
0
hello, I would like to figure out how to disable ad ads permanently after a purchase in the app. I know that create an iap button but I can not disable ad ads ads. I've searched all over the web but no one has ever talked about it. I tried with admob.banner.destrony() etc. but the result and that after 2 seconds the ad reappears. My code IAP Manager: using System; using UnityEngine; using UnityEngine.Purchasing; // Placing the Purchaser class in the CompleteProject namespace allows it to interact with ScoreManager, // one of the existing Survival Shooter scripts. namespace OnefallGames { // Deriving the Purchaser class from IStoreListener enables it to receive messages from Unity Purchasing. public class IAPManager : MonoBehaviour, IStoreListener { public static IAPManager Instance { get; set; } private static IStoreController m_StoreController; // The Unity Purchasing system. private static IExtensionProvider m_StoreExtensionProvider; // The store-specific Purchasing subsystems. private const string IS_PURCHASED_NO_ADS_PPK = "noads"; [SerializeField] private string noAds_ID = "noads"; public bool abilitatoNoads = false; private void Awake() { if (Instance) { DestroyImmediate(gameObject); } else { Instance = this; DontDestroyOnLoad(gameObject); } } void Start() { // If we haven't set up the Unity Purchasing reference if (m_StoreController == null) { // Begin to configure our connection to Purchasing InitializePurchasing(); } } public void InitializePurchasing() { // If we have already connected to Purchasing ... if (IsInitialized()) { // ... we are done here. return; } // Create a builder, first passing in a suite of Unity provided stores. var builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance()); // Continue adding the non-consumable product. builder.AddProduct(noAds_ID, ProductType.NonConsumable); UnityPurchasing.Initialize(this, builder); } private bool IsInitialized() { return m_StoreController != null && m_StoreExtensionProvider != null; } private void BuyProductID(string productId) { // If Purchasing has been initialized ... if (IsInitialized()) { Product product = m_StoreController.products.WithID(productId); if (product != null && product.availableToPurchase) { Debug.Log(string.Format("Purchasing product asychronously: '{0}'", product.definition.id)); m_StoreController.InitiatePurchase(product); abilitatoNoads = true; } else { Debug.Log("BuyProductID: FAIL. Not purchasing product, either is not found or is not available for purchase"); } } else { Debug.Log("BuyProductID FAIL. Not initialized."); } } // // --- Public functions // public void BuyNoAds() { BuyProductID(noAds_ID); } public bool IsPurchasedNoAds() { return PlayerPrefs.GetInt(IS_PURCHASED_NO_ADS_PPK, 0) == 1; } /// /// Restore purchases previously made by this customer. Some platforms automatically restore purchases, like Google. /// Apple currently requires explicit purchase restoration for IAP, conditionally displaying a password prompt. /// public void RestorePurchases() { // If Purchasing has not yet been set up ... if (!IsInitialized()) { // ... report the situation and stop restoring. Consider either waiting longer, or retrying initialization. Debug.Log("RestorePurchases FAIL. Not initialized."); return; } // If we are running on an Apple device ... if (Application.platform == RuntimePlatform.IPhonePlayer || Application.platform == RuntimePlatform.OSXPlayer) { // ... begin restoring purchases Debug.Log("RestorePurchases started ..."); //// Fetch the Apple store-specific subsystem. var apple = m_StoreExtensionProvider.GetExtension(); //// Begin the asynchronous process of restoring purchases. Expect a confirmation response in //// the Action below, and ProcessPurchase if there are previously purchased products to restore. apple.RestoreTransactions((result) => { // The first phase of restoration. If no more responses are received on ProcessPurchase then // no purchases are available to be restored. Debug.Log("RestorePurchases continuing: " + result + ". If no further messages, no purchases available to restore."); }); } // Otherwise ... else { // We are not running on an Apple device. No work is necessary to restore purchases. Debug.Log("RestorePurchases FAIL. Not supported on this platform. Current = " + Application.platform); } } // // --- IStoreListener // 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; } public void OnInitializeFailed(InitializationFailureReason error) { // Purchasing set-up has not succeeded. Check error for reason. Consider sharing this reason with the user. Debug.Log("OnInitializeFailed InitializationFailureReason:" + error); } public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs args) { // Or ... a non-consumable product has been purchased by this user. if (String.Equals(args.purchasedProduct.definition.id, noAds_ID, StringComparison.Ordinal)) { // TODO: The non-consumable item has been successfully purchased, grant this item to the player. PlayerPrefs.SetInt(IS_PURCHASED_NO_ADS_PPK, 1); } return PurchaseProcessingResult.Complete; } public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); } } }

Viewing all articles
Browse latest Browse all 1416

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>