Skip to content

bug: flet-ads not working in 0.86 #6726

Description

@JudicaelK

Duplicate Check

Describe the bug

Flet ads not working anymore in flet 0.86.2 version

Image

Code sample

Code
[Paste your code here]

import flet as ft
import flet_ads as fta

Test ad unit IDs

ids = {
ft.PagePlatform.ANDROID: {
"banner": "ca-app-pub-3940256099942544/6300978111",
"interstitial": "ca-app-pub-3940256099942544/1033173712",
},
ft.PagePlatform.IOS: {
"banner": "ca-app-pub-3940256099942544/2934735716",
"interstitial": "ca-app-pub-3940256099942544/4411468910",
},
}

def main(page: ft.Page):
page.appbar = ft.AppBar(
adaptive=True,
title="Mobile Ads Playground",
bgcolor=ft.Colors.LIGHT_BLUE_300,
)
page.horizontal_alignment = ft.CrossAxisAlignment.CENTER
page.scroll = ft.ScrollMode.AUTO

def show_new_interstitial_ad():
    async def show_iad(e: ft.Event[fta.InterstitialAd]):
        await iad.show()

    iad = fta.InterstitialAd(
        unit_id=ids[page.platform]["interstitial"],
        on_load=show_iad,
        on_error=lambda e: print("InterstitialAd error", e.data),
        on_open=lambda e: print("InterstitialAd opened"),
        on_close=lambda e: print("InterstitialAd closed"),
        on_impression=lambda e: print("InterstitialAd impression"),
        on_click=lambda e: print("InterstitialAd clicked"),
    )

def get_new_banner_ad() -> fta.BannerAd:
    return fta.BannerAd(
        unit_id=ids[page.platform]["banner"],
        width=320,
        height=50,
        on_click=lambda e: print("BannerAd clicked"),
        on_load=lambda e: print("BannerAd loaded"),
        on_error=lambda e: print("BannerAd error", e.data),
        on_open=lambda e: print("BannerAd opened"),
        on_close=lambda e: print("BannerAd closed"),
        on_impression=lambda e: print("BannerAd impression"),
        on_will_dismiss=lambda e: print("BannerAd will dismiss"),
    )

page.add(
    ft.SafeArea(
        content=ft.Column(
            controls=[
                ft.OutlinedButton(
                    content="Show InterstitialAd",
                    on_click=show_new_interstitial_ad,
                    disabled=page.web
                    or not page.platform.is_mobile(),  # mobile only
                ),
                ft.OutlinedButton(
                    content="Show BannerAd",
                    on_click=lambda e: page.add(get_new_banner_ad()),
                    disabled=page.web
                    or not page.platform.is_mobile(),  # mobile only
                ),
            ]
        )
    ),
)

if name == "main":
ft.run(main)

I used this code to generate apk file and got this.

Image Image

To reproduce

I just generated the apk with flet build apk

Expected behavior

No response

Screenshots / Videos

Captures

[Upload media here]

Operating System

Windows

Operating system details

Android

Flet version

0.86.2

Regression

Yes, it used to work in a previous Flet version (please specify the version in additional details)

Suggestions

No response

Logs

Logs
[Paste your logs here]

Additional details

No response

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions