Problème insérer un interstitiel Admon
Bonjour,
j'en reviens à vous pour un autre problème, ayant programmer un bouton pour aller sur une autre view, j'aimerai qu'une pub interstitiel apparait. j'ai bien programmer le tout avec le @IBAction.
Mais la pub ne veut pas s'afficher, j'ai l'erreur suivante :
Warning: Attempt to present <GADInterstitialViewController: 0x7ba21e10> on <myapply.ViewController: 0x7ba3a440> whose view is not in the window hierarchy!
Et j'y comprend rien, merci d'avance pour les réponses .
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Le monsieur te dit que tu présente ton GADInterstitialViewController dans une vue qui n'est pas présente dans la hiérarchie des vues. Il faut que tu le présente dans le viewDidAppear de ton nouveau viewController (et non au click du bouton du précédent viewcontroller)
merci pour ta réponse
.
Si je comprend bien, je dois déclarer mon interstitiel dans la fonction viewdidappear et non pas dans la fonction viewdidload, c'est bien cela ?
J'ai fais comme suivant et cela marche pas pour autant (dis moi si c'est juste ) :
override func viewDidAppear(_ animated: Bool) {
let kGoogleFullScreenAppUnitID = "ca-app-pub-******";
self.interstitial = GADInterstitial.init(adUnitID:kGoogleFullScreenAppUnitID )
interstitial.delegate = self
let Request = GADRequest()
Request.testDevices = ["2077ef9a63d2b398840261c8221a0c9b"]
interstitial.load(Request)
}
/* Le boutton permettant l'affichage de l'interstitiel */
@IBAction func showinter(_ sender: Any) {
cpt = true
}
/* Génère des interstitiels quand il peuvent être afficher j'ai fais une sorte de mélange IBAction et fonction */
func interstitialDidReceiveAd(_ ad: GADInterstitial) {
if cpt {
self.interstitial.present(fromRootViewController: self)
cpt = false
}
}
Je comprend pas pourquoi çà marche pas çà à l'air juste.
désolé je le renvoie :