23. août 2021 ( Android, Développement, Jetpack Compose )

Malheureusement ceci n’est pas expliqué dans la documentation officielle

Pourtant rien de plus simple

L’élément n’est pas encore ready pour compose, donc il faut utiliser une AndroidView

AndroidView(
        factory = { context ->
            // Creates custom view
            AdView(context).apply {
                this.adSize = AdSize.BANNER
                this.adUnitId = "ca-app-pub-3940256099942544/6300978111"
                this.loadAd(AdRequest.Builder().build())
            }
        }
    )

Donc on peut évidement intégrer cela directement dans les éléments composables de notre application, mais tant qu’a faire un truc propre autant créer un élément facile a appeler et bien plus propre dans nos vues

@Composable
fun BannerAds(size:AdSize, id:String) {
    AndroidView(
        factory = { context ->
            // Creates custom view
            AdView(context).apply {
                this.adSize = size
                this.adUnitId = id
                this.loadAd(AdRequest.Builder().build())
            }
        }
    )
}

Qu’on pourra appeler juste avec

BannerAds(size = AdSize.BANNER, id = "ca-app-pub-3940256099942544/6300978111")