Cita:
Empezado por NicolasP
No me dice ningún error , se va al fondo y cuando la traigo se reinicia. La verdad no se bien como depurar en android,
tal vez me falte configurar algo para que me diga los errores.
|
Sólo sería cuestión de poner el "Build Configuration" en modo Debug y desplegar el apk con F9, pero no nos centremos en esto, voy a ir directo a lo que necesitas en este caso en particular.
Prueba con este cambio a ver qué tal:
1) Quita lo que tienes en RESTRequest1AfterExecute.
2) Cambias el código principal que me has mostrado por este:
Código Delphi
[-]
FmMain.RestClient1.BaseURL := 'sitio\consulta.php?doc='+ FmMain.Ed_idcliente.text;
Memo1.Lines.clear;
AniIndicator1.Enabled := true;
AniIndicator1.Visible := true;
FmMain.RESTRequest1.ExecuteAsync(
procedure
begin
TThread.Synchronize(TThread.CurrentThread,
procedure
begin
if assigned(RESTResponse1.JSONValue) then
Memo1.Lines.Text := TJson.Format(RESTResponse1.JSONValue) ;
else
Memo1.Lines.Text := RESTResponse1.Content;
AniIndicator1.Enabled := false;
AniIndicator1.Visible := false;
end);
end, False);
Cita:
Empezado por NicolasP
Insisto , si viene un registro en json funciona perfecto, tanto en win como en android.
|
Mi teoría es que cuando el dato no existe el motor se demora un poco más en devolverte el resultado, así que la app entra al "sleep(20);" que tienes ahí y como al Android estas cosas no le gustan para nada en el hilo principal, se cierra de inmediato.
P.D: Para entender un poco más acerca del método ExecuteAsync que he usado puedes leer mi artículo en PuroDelphi
http://purodelphi.com/2015/11/18/pet...segundo-plano/