disable ads admob with iap
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;
     }
     /// <summary>
     /// 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.
     /// </summary>
     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<IAppleExtensions>();
             //// Begin the asynchronous process of restoring purchases. Expect a confirmation response in 
             //// the Action<bool> 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));
     }
 }
}
Your answer
 
 
             Follow this Question
Related Questions
admob banner ad not showing 0 Answers
How to Show Admob interstitial ads more one time after Gameover? 0 Answers
Unity Google AdMob Banner 2 Answers
Enable Unity Ads in Services 0 Answers
adMob ads are black 2 Answers
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                