Skip to content

bug: "flet build apk" does not work with Flet 0.70 #5832

@GreenDringo42

Description

@GreenDringo42

Duplicate Check

Describe the bug

When running flet build apk, the console only shows:

Installing flet-cli 0.70.0.dev6709 package...OK [18:49:10] Flutter 3.35.5 installed ✅ [18:49:12] JDK installed ✅ Android SDK installed ✅ ( ● ) Packaging Python app...

For hours and hours it only shows that message and doesn't go beyond that.

Code sample

import flet as ft
import time
import asyncio
from dataclasses import dataclass

@DataClass
class AppState(ft.Observable):
value: str = ""
is_loading: bool = True
init_message: str = ""
_initialized: bool = False # evita repetir la operación inicial

async def run_initial_operation(self):
    """Operación larga que solo debe ejecutarse una vez."""
    if self._initialized:
        return

    self._initialized = True

    start = time.perf_counter()
    await asyncio.sleep(5)  # Simula operación de 5 segundos
    duration = time.perf_counter() - start

    self.init_message = f"Operación inicial completada en {duration:.2f} segundos."
    self.is_loading = False

    print(f"OPERACIÓN INICIADA: {duration:.2f}")

def set_value(self, e):
    self.value = e.control.value

@ft.component
def app():
page = ft.context.page
state, _ = ft.use_state(AppState())

# Lanza la operación inicial solo una vez
async def initialize():
    await state.run_initial_operation()

if not state._initialized:
    page.run_task(initialize)

# --------- UI: Loading screen ----------
loading_view = ft.Column(
    [
        ft.ProgressRing(),
        ft.Text("Cargando...", size=18),
    ],
    alignment=ft.MainAxisAlignment.CENTER,
    horizontal_alignment=ft.CrossAxisAlignment.CENTER,
    expand=True,
    visible=state.is_loading,
)

home_view = ft.Column(
    [
        ft.Text("Bienvenido a Home", size=24, weight="bold"),
        ft.Text(state.init_message, size=16),
        ft.TextField(
            value=state.value,
            on_change=state.set_value,
        ),
    ],
    alignment=ft.MainAxisAlignment.CENTER,
    horizontal_alignment=ft.CrossAxisAlignment.CENTER,
    expand=True,
    visible=not state.is_loading,
    on_scroll=on_scroll_
)

return ft.SafeArea(
    
    expand=True,
    content=ft.Stack(
        controls=[
            loading_view,
            home_view,
        ]
    ),
)

async def on_scroll_(e):
print('On scroll...')

def before_main(page: ft.Page):
# Configurar ventana antes de renderizar nada
page.window.width = 500
page.window.height = 500
page.window.resizable = False
#page.window.visible = False

def main(page: ft.Page):
page.render(app)

ft.run(
main=main,
before_main=before_main
)

To reproduce

  1. Create a project with "flet create project".
  2. Build any simple Flet app with State (ft.Observable).
  3. Verify it runs properly.
  4. Run "flet build apk".
  5. Wait...

Expected behavior

No response

Screenshots / Videos

No response

Operating System

Windows

Operating system details

Windows 11

Flet version

0.70.0.dev6709

Regression

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

Suggestions

No response

Logs

Installing flet-cli 0.70.0.dev6709 package...OK
[18:49:10] Flutter 3.35.5 installed ✅
[18:49:12] JDK installed ✅
Android SDK installed ✅
( ● ) Packaging Python app...

Additional details

No response

Metadata

Metadata

Assignees

No one assigned

    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