Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

194
Visualizações
expo-ads-admob doesn't show interstitial ads more than once

I am using Managed Expo SDK 45. I know that expo-ads-admob is going to be deprecated in SDK 46 but I still find it a very good package and I'd like to use it.

Firstly, I have the code running on another SDK (38) and it works perfectly and now this problem is only in IOS - android works fine also on physical device, so it is not a problem with the code, but with expo-ads-admob package or expo.

The problem is that on physical device, interstitial ads will only be shown once, let's say I have a button and when I click on it for the first time - the ad is shown, but when I close the interstitial ad and try to click the button again - it won't do anything.

I checked the logs and I saw this:

"code":"E_AD_CANNOT_PRESENT",
"message":"Add cannot be prestnted",
"domain":"com.google.admob",
"userInfo":
{
   "NSLocalizedDescription":"Presntation on Error: Will not present ad because ad object has been used."
}

I was looking the answer everywhere but I can't find a solution for this - this happens only in iOS physical devices and I think it happens to everyone using the new SDK.

I looked inside node_modules/expo-ads-admob/ios/EXAdsAdMobInterstitial.m and saw this:

EX_EXPORT_METHOD_AS(requestAd,
                    requestAdWithAdditionalRequestParams:(NSDictionary *)additionalRequestParams
                    resolver:(EXPromiseResolveBlock)resolve
                    rejecter:(EXPromiseRejectBlock)reject)
{
  EX_WEAKIFY(self)
  if (_ad) {
    dispatch_async(dispatch_get_main_queue(), ^{
      EX_ENSURE_STRONGIFY(self);

      NSError *error;
      if ([self.ad canPresentFromRootViewController:self.utilities.currentViewController error:&error]) {
        [self requestAdWithParams:additionalRequestParams
                         resolver:resolve
                         rejecter:reject];
      } else {
        reject(@"E_AD_CANNOT_PRESENT", @"Add cannot be presented", error);
      }
    });
  } else {
    [self requestAdWithParams:additionalRequestParams
                     resolver:resolve
                     rejecter:reject];
  }
}

But I don't know what it means and how I can fix it from this file. Is there a solution for this?

Thanks in advance

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda