Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Desarrollo en Delphi para Android
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy


Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-07-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Creo que estás confundido. Tanto ahora como antes, android cierra los programas que no se están utilizando dependiendo de las necesidades de memoria, recursos, el tiempo de inactividad, etc.
Lo que tú llamas "dictadura", realmente son las normas del funcionamiento de android, es como si dices que hay que acabar con la dictadura de eventos en windows, pero ¡¡¡windows es programación por eventos!!!
En cuanto a tu programa, por lo que dices, es simple, como una agenda que es, guarda los datos en una base de datos y no se perderán.
Responder Con Cita
  #2  
Antiguo 25-07-2017
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola a todos,

Cita:
Empezado por Casimiro Notevi Ver Mensaje
Creo que estás confundido. Tanto ahora como antes, android cierra los programas que no se están utilizando dependiendo de las necesidades de memoria, recursos, el tiempo de inactividad, etc.
Lo que tú llamas "dictadura", realmente son las normas del funcionamiento de android, es como si dices que hay que acabar con la dictadura de eventos en windows, pero ¡¡¡windows es programación por eventos!!!
En cuanto a tu programa, por lo que dices, es simple, como una agenda que es, guarda los datos en una base de datos y no se perderán.
Estoy de acuerdo con Casimiro. En el caso de una aplicación de tipo "agenda", digamos que habrá vistas o formularios desde los que poder añadir datos. Pues bien, sólo necesitarías guardar datos cuando se vaya a "background" si el usuario está en alguno de estos formularios, no en cualquier otro de la aplicación.

Supongamos que soy un usuario de tu aplicación y hago lo siguiente:
  1. Inicio la app
  2. Voy al listado de datos que me interese (formulario)
  3. Veo los datos, y, cambio de tu app a otra.

En el caso de arriba, no importará que tu aplicación se reinicie o no, puesto que a mí, como usuario, en nada me afecta. Podré dar de nuevo los mismos pasos sin necesidad de que hubieses guardado nada en los eventos "pause y resume".

Ahora supongamos este otro escenario:
  1. Inicio la app
  2. Voy a añadir un nuevo conctacto
  3. Estoy en ello, pero, me llaman por teléfono

En este caso, sí que deberías comprobar acaso que el usuario, en efecto, estaba en el formulario para añadir un nuevo contacto, y que, ya había empezado a escribir el nombre de dicho nuevo contacto. Pues bien, ahora sí, en el evento "pause", guardarías por ejemplo el nombre del formulario, así como los datos ya introducidos.

Cuando el usuario volviese de nuevo a la aplicación, esta comprobaría que lo hace desde un "reinicio" (esto ha de comprobarse de alguna forma, por ejemplo, guardando alguna "bandera" en algún sitio cuando la aplicación entra en "background"), y, si es así, buscaría en qué formulario se quedó el usuario y si hay algún dato ya escrito.

De modo que al usuario no le importaría si la aplicación se ha reiniciado o no, simplemente él ve que, cuando vuelve a la aplicación (terminó la llamada de teléfono) se encuentra en el formulario para añadir un contacto y se le muestra el nombre del nuevo contacto que escribió anteriormente, de modo que puede continuar con la tarea.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 25-07-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por dec Ver Mensaje
Cuando el usuario volviese de nuevo a la aplicación, esta comprobaría que lo hace desde un "reinicio" (esto ha de comprobarse de alguna forma, por ejemplo, guardando alguna "bandera" en algún sitio cuando la aplicación entra en "background"), y, si es así, buscaría en qué formulario se quedó el usuario y si hay algún dato ya escrito.
Tras "reiniciar" (activity resume), pasa después a "activity create", pero con la "variable global" firstime que ahora tendrá valor false.

Responder Con Cita
  #4  
Antiguo 25-07-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Hola Casimiro. Gracias otra vez.

Habrás podido comprobar que estaba escribiendo cuando me has respondido.

Ya me contarás cómo puedo implementar lo que me propones. Porque yo sólo... creo que no.

Un saludo.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)
Responder Con Cita
  #5  
Antiguo 25-07-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Bueno, Casimiro.

Los "cuadrados superpuestos" son una representación de dos ventanas en cascada, creo que lo he comentado antes. Hablo de los terminales Samsung que son los que yo uso. En la foto puedes ver los sensores a los que me refiero.

Los de la foto de arriba son de un Motorola, que están dentro de la pantalla del terminal y al que me refiero es el cuadrado de la derecha, que hace la misma función que los dos cuadraditos que aparecen a la izquierda de la foto inferior que corresponde a un terminal Samsung

Saludos.

Sensores.jpg
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)

Última edición por jhonalone fecha: 25-07-2017 a las 22:45:08.
Responder Con Cita
  #6  
Antiguo 25-07-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Ok, está claro.
Responder Con Cita
  #7  
Antiguo 25-07-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Hola.

Tengo que deciros que no he comprobado el problema en el Motorola, pues es de un amigo de mi hijo que estaba casualmente en casa.

Saludos.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)
Responder Con Cita
  #8  
Antiguo 30-07-2017
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Te iba a sugerir que uses el SaveState, que es algo que ya comentaste en el hilo. A ver si este material te puede ayudar
https://community.embarcadero.com/bl...sing-savestate

Por lo que veo te permite grabar el form como un stream, y luego para leerlo hace eso mismo. Es un mecanismo similar a como se lee en tiempo de ejecución el recurso .dfm para recrear el form que vemos en tiempo de diseño
Responder Con Cita
  #9  
Antiguo 30-07-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Hola a todos.

Gracias a Casimiro y a Agustín por vuestro interés.

Casimiro. Me parece muy interesante tu idea. Ya la había estado barajando y buscando información en internet y tengo algunos proyectos en la cabeza. Pero ahora estoy enfrascado en una modificación de seguridad del programa y las tengo aparcadas. No olvidadas ni desechadas.

Agustín. He estado visitando el link que me dejaste y me he descargado el proyecto de prueba. Todavía no lo he probado, por la misma razón. En principio parece interesante, pero sospecho que, como comenté más arriba, el problema de SaveState va a seguir siendo el mismo: puedes salvar la posición del programa, pero lo realmente complicado son los valores que llevan todas las variables globales y que pueden haber sido cambiados. Si no salvas estos valores y los recuperas, el programa se descolocará. Mi programa en concreto, necesita de ésas variables globales para su correcto funcionamiento. Con respecto a usar gafas, las llevo desde los 6 años y tengo 65, (7 dioptrías en un ojo y 8 en el otro). Os lo cuento para que nos vayamos conociendo.

Seguiré peleando... y os contaré. "¡En peores plazas he lidiado...!, " (como dijo aquél).

Saludos cordiales.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)

Última edición por jhonalone fecha: 30-07-2017 a las 22:44:48.
Responder Con Cita
  #10  
Antiguo 30-07-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Todavía falta mucho para la jubilación
Responder Con Cita
  #11  
Antiguo 25-07-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Hola, Casimiro.

Sabes que te admiro por tus conocimientos y tu labor desinteresada en el foro.

Pero por primera vez, creo, (y pese al respeto y admiración que te tengo), no estoy de acuerdo contigo.

Lo que me estás diciendo, contradice mi experiencia con los aparatos en que he probado. Tengo varios probados y, a partir de la versión 4.4.4 ocurre ésto. Yo pensaba que era la 6.0.1 que es la última que yo uso, (sustituyendo a la 4.1.2 que usaba antes), pero he decidido probarlo en unos cuantos más y he comprobado que empieza a fallar a partir de la 4.4.4. En la 4.4.2 todavía no "mata" la app.

Observo que la primera vez que he visto con dos cuadrados superpuestos en el sensor inferior izquierdo, ha sido en la 4.4.4, en cuya versión ya estaba cambiado el comportamiento de los botones que explicaba en otro hilo.

Esto pasa desde que quitaron vkMenu de este sensor izquierdo.

También he podido comprobar que (en las opciones de desarrollador), la opción de "No mantener Actividades" por defecto está deshabilitada hasta la versión 6.0.1, en que viene habilitada por defecto.

Esto es lo que empíricamente he podido observar.

Por otro lado, con respecto a lo que dice David:

Sí, podemos hacer todos los arreglos que se nos ocurran. Detectar en la pantalla que estaba y restituirla. Lo cual no deja de ser una labor bastante ardua.

En lo que respecta a mi programa, no es una "simple agenda" es algo más. Lo puedes bajar y probarlo desde Google Play. Se llama "RegiControl". Entonces comprenderás lo que significa devolverle al sitio de interrupción. (Creo que tiene 12 o 14 unidades más un TWebBrowser para la ayuda en línea)

Por los datos no tengo problema, pues se van salvando al tiempo que se van tecleando.

Pero como lleva datos personales, al entrar debes teclear una clave de acceso. Y no me dirás que no es una imagen nefasta, tener que teclearla cada vez que dejas el programa para hacer otra cosa.

Claro. Tu me dirás "no pongas clave". Pues te digo que hay que ponerla porque lleva datos muy personales (Nif, direecciones, trabajos realizados...). No es una "simple agenda", es un sistema completo de control de tareas, presupuestos, trabajos en curso y facturación.

Sigo manteniendo que los cambios de versión de Android son una falta de respeto a los programadores, al menos los de Delphi, que son los que yo conozco.

El programa es bastante complejo y la solución no la veo sencilla, (si es que la hay).

¡Ah...! Os recuerdo que ya tuve que poner un mensaje avisando al usuario de que el teclado predictivo puede fallar a partir de la versión 6.0.1 de Android. En este hilo, que está sin poderse resolver.

Gracias, de nuevo, por vuestro interés.

Saludos.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)

Última edición por jhonalone fecha: 25-07-2017 a las 21:58:31.
Responder Con Cita
  #12  
Antiguo 25-07-2017
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por jhonalone Ver Mensaje
Pero por primera vez, creo, ... no estoy de acuerdo contigo.
Haces bien, puedo estar equivocado
Cita:
Empezado por jhonalone Ver Mensaje
Lo que me estás diciendo, contradice mi experiencia con los aparatos en que he probado. Tengo varios probados y, a partir de la versión 4.4.4 ocurre ésto. Yo pensaba que era la 6.0.1 que es la última que yo uso, (sustituyendo a la 4.1.2 que usaba antes), pero he decidido probarlo en unos cuantos más y he comprobado que empieza a fallar a partir de la 4.4.4. En la 4.4.2 todavía no "mata" la app.
Observo que la primera vez que he visto con dos cuadrados superpuestos en el sensor inferior izquierdo, ha sido en la 4.4.4, en cuya versión ya estaba cambiado el comportamiento de los botones que explicaba en otro hilo.
A ver si es que no te estamos entendiendo bien los problemas que comentas. Por ejemplo, yo no tengo ni idea a qué te refieres con lo de "dos cuadrados superpuestos".
Por cierto, ese modo de funcionar ¿no serán funcionalidades instaladas por el fabricante de la marca de esos smartphones?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Dejar una aplicación siempre en primer plano Kalikatres Desarrollo en Delphi para Android 19 28-11-2015 16:48:47
Buscar Aplicacion en Ejecucion y traerla al frente Enan0 Varios 0 29-09-2012 13:52:25
Aplicación en primer plano jordillussa Varios 4 20-03-2007 19:58:43
Ejecutar aplicacion externa y que este en primer plano Lorenzati API de Windows 11 06-07-2004 18:22:10
Aplicación siempre en primer plano Novás Varios 2 08-03-2004 09:31:09


La franja horaria es GMT +2. Ahora son las 06:15:38.


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
Copyright 1996-2007 Club Delphi