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 06-04-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
Eso lo que haces es configurar el IDE para que utilice el SDK, donde estan las rutas y los programas que necesita, etc

Con actualizar el SDK me refiero a esto, si bien la imagen es algo vieja (de XE5), deberias poder guiarte. Debes iniciar el Android SDK Manager, que queda instalado en tu menu inicio dentro de la carpeta de RAD Studio:



Fuente imagen

Deberias ver algo como esto:



Ahi actualizas a la API que haga falta. Luego deberias actualizar en el IDE de Delphi (lo que hiciste antes) las rutas a la nuevas versiones de las API

Sino se me ocurre que puedas buscar en el sitio de incidencias: https://quality.embarcadero.com/ a ver si alguien tuvo este problema con TMemo. Tambien podria ser adecuado abrir una nueva incidencia alli mismo

Una busqueda rapida arrojo estos resultados (no es exactamente tu problema, pero es similar)

https://quality.embarcadero.com/browse/RSP-14985
https://quality.embarcadero.com/browse/RSP-16895
https://quality.embarcadero.com/browse/RSP-16149
https://quality.embarcadero.com/browse/RSP-16935

Al parecer hay problemas con el teclado de google, el texto predictivo, el autocompletar y la correccion de fallas ortograficas
Responder Con Cita
  #2  
Antiguo 07-04-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Millón de gracias por el esfuerzo que supone tu respuesta, Agustín.
Nunca hice lo que me propones.
Prometo esforzarme para entender todo. Es lo menos que puedo hacer para que tu esfuerzo no haya quedado baldío.
Es mucha la información que has recopilado en tu respuesta.
Voy a estudiarlo detenidamente y te cuento.
Pero antes de arriesgarme a equivocarme en el proceso, me gustaría que tú o alguien que haya detectado el mismo problema, me confirmara que va a ser efectivo.
Un efusivo saludo para ti, Agustín.
En Madrid ya es muy tarde.
Mañana seguiré.
__________________
"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
  #3  
Antiguo 07-04-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Hola, de nuevo Agustín.

He actualizado el SDK que era el 24.3.3 32bit a la versión 25.2.5 32bit, que es la más nueva que me ha dejado el SDKManager.

Y el problema sigue igual, (o peor... porque creo que antes no me daba el problema en los TEdit y ahora me da el mismo problema)

Me estoy acostumbrando a resolver estos "problemas" de Delphi con imaginación y "chapucería".
He mirado los links que me dejaste de Embarcadero y he comprobado, que hay más de un problema con los teclados. Como tú decías se parecen, pero no son igual que el mío. Incluso algunos son peor. El cursor se vuelve loco y vuelve al principio, o escribe texto no tecleado. Bueno, a mí me escribe texto no tecleado, pero al fin y al cabo el problema es que repite lo que había tecleado hasta el momento.

Intentaré implementar una función el evento OnKeyUp de los memos y de los edits para resolver el problema de forma "chapucera" si no hay otra solución por parte de Embarcadero.

Realmente los problemas que he visto en los links que me dejaste, están también sin resolver.
Así que no tengo muchas esperanzas.

Saludos muy cordiales y gracias por tus esfuerzos.
__________________
"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
  #4  
Antiguo 24-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 de nuevo.
Los enanos del circo de Delphi siguen creciendo.
En la versión 6.0.1 de android, no basta con que TMemo se haya vuelto literalmente LOCO, según lo que precede en este hilo.
Acabo de observar una nueva DESGRACIA? para los programas android generados con Delphi.

A ver si sé explicarme:
Los dispositivos Samsung (son los que yo utilizo) disponen de un botón que está por debajo de la pantalla y en el centro del dispositivo. Sirve para activar el terminal si se ha desactivado (apagado la pantalla) cuando llevas un tiempo sin usarlo. Esto está muy bien para prolongar la duración de la batería.

En otro hilo anterior, ya expliqué los problemas que habían surgido con la versión 6.0.1 de android.
Pues había cambiado la funcionalidad, tanto de este botón central como del sensor de dos rallitas dentro de un cuadrado que está a la izquierda de dicho botón.

Bueno, pues el nuevo INCONVENIENTE, que he observado consiste en esto:
En versiones anteriores y en ésta (6.0.1 que, acertadamente, le han puesto el nombre de Marshmallow. Y efectivamente es "mucho márs malou") (perdón por el chiste porque no tiene ninguna gracia) digo que en las versiones anteriores y en ésta cuando pulsas brevemente este botón central, ocultas el programa que estás utilizando, para poder hacer una llamada o cualquier otra cosa.

En versiones anteriores, cuando volvías a pulsar de nuevo este botón te aparecían en pantalla los programas que tenías abiertos. Si pulsabas brevemente sobre cualquiera, volvías a retomar el programa en la situación que lo dejaste (incluídos los generados por Delphi).

En la versión a la que no estamos refiriendo, si pulsas el botón central te aparece Google. Para que aparezcan los programas que estaban "minimizados" tienes que pulsar en el sensor a la izquierda del botón central, (que ahora se representa por dos rectángulos superpuestos, simulando lo que representa: ventanas en cascada).

Bueno, pues aparecen todos los programas que tienes minimizados en una cascada de ventanas.

Y aquí está el problema:

Si seleccionas cualquier aplicación que no haya sido generada con Delphi, la retomas donde la dejaste.

Pero si eliges una que ha sido generada por Delphi... ¡¡SORPRESA!! La aplicación se reinicia y arranca desde el principio, como si la hubieras llamado pulsando su icono.

Perdón por haberme alargado tanto, pero no sabía explicarlo mejor. Si aún no se entiende, lo siento.

Como siempre, solicito alguna ayuda (si es posible).

Gracias por leerme y saludos a todos.
__________________
"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: 24-07-2017 a las 17:21:29.
Responder Con Cita
  #5  
Antiguo 24-07-2017
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: may 2008
Ubicación: Bogotá
Posts: 527
Poder: 17
TOPX Va camino a la fama
Cita:
Empezado por jhonalone Ver Mensaje
Si seleccionas cualquier aplicación que no haya sido generada con Delphi, la retomas donde la dejaste.

Pero si eliges una que ha sido generada por Delphi... ¡¡SORPRESA!! La aplicación se reinicia y arranca desde el principio, como si la hubieras llamado pulsando su icono.
-
__________________
"constructive mind, destructive thoughts"
Responder Con Cita
  #6  
Antiguo 24-07-2017
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Muchas gracias TOPX, por interesarte en ayudarme.

A la vista está que no soy un experto programador.
He visto el código de StackOverflow, pero no sé cómo implementarlo para conseguir evitar que se reinicen las apps al intentar ponerlas de nuevo en primer plano. No quiero parecer más burro de lo que soy pero el código referido creo que no me sirve más que para saber la situación de mi aplicación.
Código Delphi [-]
uses FMX.Types, FMX.Platform;

function TForm1.HandleAppEvent(AAppEvent: TApplicationEvent; AContext: TObject): Boolean;
begin
  case AAppEvent of
    TApplicationEvent.FinishedLaunching:    Log.d('Launched.');
    TApplicationEvent.BecameActive:         Log.d('Gained focus.');
    TApplicationEvent.EnteredBackground:    Log.d('Now running in background.');
    TApplicationEvent.WillBecomeForeground: Log.d('Restoring from background.');
    TApplicationEvent.WillBecomeInactive:   Log.d('Going to lose focus.');
    TApplicationEvent.WillTerminate:        Log.d('Quitting the application.');
    TApplicationEvent.LowMemory:            Log.d('Device running out of memory.');

    // iOS only
    TApplicationEvent.TimeChange:           Log.d('Significant change in time.');
    TApplicationEvent.OpenURL:              Log.d('Request to open an URL.');
  end;

  Result := True;
end;

procedure TForm11.FormCreate(Sender: TObject);
var
  aFMXApplicationEventService: IFMXApplicationEventService;
begin
  if TPlatformServices.Current.SupportsPlatformService(IFMXApplicationEventService,
    IInterface(aFMXApplicationEventService))
  then
    aFMXApplicationEventService.SetApplicationEventHandler(HandleAppEvent)
  else
    Log.d('Application Event Service not supported.');
end;
¿Puedes ayudarme?
Un saludo. Gracias.
__________________
"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: 24-07-2017 a las 18:40:04.
Responder Con Cita
  #7  
Antiguo 24-07-2017
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: may 2008
Ubicación: Bogotá
Posts: 527
Poder: 17
TOPX Va camino a la fama
En el artículo que refieren en esa respuesta ~ https://community.embarcadero.com/bl...lphi-xe5-40067 , hay una descripción un poco más detallada de la ubicación de ese código.

A grosso modo sería:
  1. Crea una función que reciba un TApplicationEvent y un TObject, para que sea el manejador de eventos.
  2. Asigna esa función con el método SetApplicationEventHandler de una IFMXApplicationEventService.
  3. En la implementación de esa función prueba con los diferentes valores del TApplicationEvent, para identificar el que quiere detectar.
  4. Después de que sepa cuáles son los valores a detectar, al "minimizar" guarda el estado y al "seleccionar" carga el estado guardado. Es posible que le sirvan EnteredBackground y BecameActive para ello.
-
__________________
"constructive mind, destructive thoughts"
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
problema con base de datos+android+delphi xe6 jgutti Desarrollo en Delphi para Android 7 22-08-2016 20:32:24
Problema con MySSHIOHandler en plataforma Android javierhrc Conexión con bases de datos 2 15-08-2016 18:25:10
Problema con Android 5.0 y delphi xe8 Galahad FireMonkey 8 12-10-2015 17:57:50
Datasnap y cliente android - Problema al conectar vicens22 Desarrollo en Delphi para Android 8 04-12-2013 10:13:28
Pequeño problema con el componente tmemo gaska OOP 5 23-04-2004 12:52:36


La franja horaria es GMT +2. Ahora son las 12:16:31.


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