Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Desarrollo en Delphi para Android (https://www.clubdelphi.com/foros/forumdisplay.php?f=57)
-   -   Android 13 Aplicacion no responde Cerrar/Esperar (https://www.clubdelphi.com/foros/showthread.php?t=96419)

jhonalone 28-09-2023 18:35:28

Android 13 Aplicacion no responde Cerrar/Esperar
 
1 Archivos Adjunto(s)
Hola, de nuevo, compañeros sufridores de Google(Android).
Tengo 2 terminales: uno con Android9 y el otro con Android13.
Me sirven bien para comprobar la compatibilidad (¿......?) de mis aplicaciones en diversos dispositivos.
En Android9 espera lo necesario. En Andrid13 Android se ha vuelto muy nervioso. Cuando una aplicación tarda más de unos 15/16 segundos en procesar algo, te lanza el siguiente mensaje:



(Lo siento, pero he visto mensajes con imagenes en el foro, pero no sé ponerlas, sólo como adjuntos, creo que antes hay que subirlas a una URL, pero yo tengo la imagen en el Escritorio)

Bien. Pues este es el probema: Andrid me lanza este error cuando tiene que esperar un procesamiento de más de 15/16 seg.

Como pueba de ello he desarrollado un programa muy SENCILLO para la SDK objetiva 34 que os copio a continuación.

Código Delphi [-]
unit Unit1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FMX.Controls.Presentation, FMX.StdCtrls, FMX.ListBox;

type
  TForm1 = class(TForm)
    ComboBox1: TComboBox;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}

procedure TForm1.Button1Click(Sender: TObject);
var
 I : Integer;
begin
  for I := 1 to 35
  do begin
       ComboBox1.Items.Add('Item Lento '+ I.ToString);
       Sleep(1000);
     end;

end;

end.

Solamente consta de una App mulltidevice en Android64 con un ComboBox estándar y un botón estándar, que en su evento OnClick , se itera una cantidad de items con un lapsus de 1 seg. para cada iteración, con el fin de conseguir el error de Android que veréis en el adjunto.

Mi problema es que cuando solicito alguna acción en una app que tarda algún tiempo, (como buscar los dispositivos pareados por Bluetooth) me salta el error y afea o dificulta la app.

Mi solicitud de ayuda cnsiste en convencer a Android13 que espere y no lance el error.

Si alguien ha resuelto este problema, rogaría y agradecería que lo compartiera conmigo y con aquellos que estén en mi caso.

Gracias por leerme y soportarme.

Un saludo a todos.

dani36652 28-09-2023 19:38:52

Si salen mas inconvenientes en tu primer Hilo ahí mismo buscaremos echarte una mano.
Ya te respondi en el primer hilo que abriste con una posible respuesta, saludos cordiales!!!!

jhonalone 28-09-2023 22:09:17

Muchas gracias, Dani.
Voy a intentar implementar tu solución (Para mí es nuevo).
Ya te cuento.
Un Saludo muy afectivo.

jhonalone 29-09-2023 16:57:41

La solución aprtada por dani36652, consiste en encapsular las tareas relentizadoras en un TThread. Podeis ver la solución aquí. Al final de los posts del hilo.
Saludos cordiales.


La franja horaria es GMT +2. Ahora son las 16:59:48.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi