Aller au contenu


Photo

Problème insérer un interstitiel Admon


  • Please log in to reply
6 réponses à ce sujet

#1 adamapple06

adamapple06

    Eleveur de cacaoyers

  • Membre
  • PipPip
  • 12 messages

Posté 14 novembre 2016 - 04:04

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 :) .

 

 

 

 



#2 LeChatNoir

LeChatNoir

    Brasseur de pâte à cacao

  • Artisan chocolatier
  • PipPipPipPipPipPipPip
  • 3 158 messages
  • LocationLyon

Posté 14 novembre 2016 - 09:22

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)


Le Chat Noir, développeur à ses heures...
Application passion => ClimbingAway


#3 adamapple06

adamapple06

    Eleveur de cacaoyers

  • Membre
  • PipPip
  • 12 messages

Posté 14 novembre 2016 - 11:06

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 ?



#4 adamapple06

adamapple06

    Eleveur de cacaoyers

  • Membre
  • PipPip
  • 12 messages

Posté 15 novembre 2016 - 03:15

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.



#5 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 238 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 15 novembre 2016 - 08:42

Commence par mettre un point d'arrêt dans interstitialDidReceiveAd() pour savoir si cette méthode déléguée est bien appelée.
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#6 Alf1996

Alf1996

    Broyeur de fèves

  • Artisan chocolatier
  • PipPipPipPipPipPip
  • 1 637 messages
  • Location13

Posté 15 novembre 2016 - 23:45

Et des balises "code" car là franchement c'est illisible !!!

#7 adamapple06

adamapple06

    Eleveur de cacaoyers

  • Membre
  • PipPip
  • 12 messages

Posté 16 novembre 2016 - 02:14

Et des balises "code" car là franchement c'est illisible !!!

 

 

désolé je le renvoie :

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
        }
    }





0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)