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 23-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.055
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por voci Ver Mensaje
¿Por que has llegado a la conclusión de que es un tema de permisos?, no se si tiene algo que ver, pero hace tiempo que la play store no te permite subir aplicaciones compiladas con esa versión de delphi. tienes que compilarlas con delphi sydney.
Saludos.
¿En serio? ¿y eso por qué?
Responder Con Cita
  #2  
Antiguo 23-02-2021
voci voci is offline
Miembro
 
Registrado: oct 2003
Posts: 97
Poder: 21
voci Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿En serio? ¿y eso por qué?
No es que no permita explícitamente subir aplicaciones compiladas por la versión 10.3.x, pero es obligatorio que se compilen para la API 29 y hasta la versión 10.4 (sydney) delphi no compila las aplicaciones con esa API.

Saludos.
Responder Con Cita
  #3  
Antiguo 23-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.055
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¡Ah! eso es cierto, y a final de año será obligatorio la v.30
Responder Con Cita
  #4  
Antiguo 24-02-2021
viverosjosem viverosjosem is offline
Baneado
 
Registrado: dic 2017
Posts: 64
Poder: 0
viverosjosem Va por buen camino
Cita:
¿Por que has llegado a la conclusión de que es un tema de permisos?, no se si tiene algo que ver, pero hace tiempo que la play store no te permite subir aplicaciones compiladas con esa versión de delphi. tienes que compilarlas con delphi sydney.
Saludos.
Hola Voci. Se me ocurrio que podia ser un tema de permisos, porque anteriormente cuando tenia la misma aplicacion compilada en delphi tokyo, paso lo mismo cuando compile la aplicacion con delphi 10.3, se colgaba al ejecutarla. Agregue las lineas indicadas abajo.., y todo funciono con delphi 10.3. Ahora, la misma aplicacion compilada en delphi 10.3, pero esta vez corriendo en un android 10, no funciona, se cuelga.

De todas maneras, nunca e subido las aplicaciones a google play. Las instalo directamente en el dispositivo requerido.

Alguna idea de que puede estar pasando?

Saludos.
Jose Miguel.


Código Delphi [-]
procedure TFCentral.FormCreate(Sender: TObject);
begin
   PermissionsService.RequestPermissions([JStringToString(TJManifest_permission.JavaClass.READ_EXTERNAL_STORAGE)],
   procedure(const APermissions: TArray<string>; const AGrantResults: TArray)
   begin
    if (Length(AGrantResults) = 1) and (AGrantResults[0] = TPermissionStatus.Granted) then
    begin

       ValidaConector;
       ValidaResiduos;
       ActivaFTP;        //AddFiles;
       lbEstado.Text := 'Conectado';
    end
    else
       begin
         lbEstado.Text := 'No conectado';
       end;
   end)
end;
Responder Con Cita
  #5  
Antiguo 24-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.055
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Intenta seguir paso a paso, es "casi" imposible que lo sepamos sin tener el código para probar.
Responder Con Cita
  #6  
Antiguo 24-02-2021
voci voci is offline
Miembro
 
Registrado: oct 2003
Posts: 97
Poder: 21
voci Va por buen camino
Todo lo anterior te lo digo porque yo tenía una aplicación compilada con 10.3.3 y al intentar ejecutarla en una versión 10 de android aparecía la pantalla de inicio y se cerraba, con las versiones 9 y anteriores funcionaba sin problemas.

De todas formas si crees que es esa parte del código, porque no la anulas y antes de ejecutar la aplicación vas a ajustes de sistema y activas los permisos manualmente, creo que es una forma de salir de dudas, aunque la única forma correcta es depurar la aplicación directamente en el dispositivo.

Saludos.
Responder Con Cita
  #7  
Antiguo 25-02-2021
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
cuando yo hago aplicaciones y me pasa eso lo que hago es ejecutar una aplicacion en blanco sin ningun componente asi compruebo si es un problema de API o de permiso has esa prueba a ver que pasa
Responder Con Cita
  #8  
Antiguo 25-02-2021
viverosjosem viverosjosem is offline
Baneado
 
Registrado: dic 2017
Posts: 64
Poder: 0
viverosjosem Va por buen camino
Hola Casimiro y Voci.
Aqui va una procion de codigo que e probado en Delphi Tpkyo, y Delphi Rio. En Delphi Tokyo finciona. En Delphi Rio, se cuelga. Los permisos los active manualmente desde telefono Android.

Código Delphi [-]
...
...
var
  // Permissions
  vReader_Access: string;
  vWrite_Access: string;
...
...

procedure TFConfigIP.FormCreate(Sender: TObject);
begin
   vReader_Access := JStringToString(TJManifest_permission.JavaClass.READ_EXTERNAL_STORAGE);
   vWrite_Access    := JStringToString(TJManifest_permission.JavaClass.WRITE_EXTERNAL_STORAGE);
end;



procedure TFConfigIP.FormShow(Sender: TObject);
begin
  if TOSVersion.Check(6) then
  begin
    PermissionsService.RequestPermissions([vReader_Access, vWrite_Access], LocationPermissionRequestResult);
  end
end;


procedure TFConfigIP.LocationPermissionRequestResult(Sender: TObject;
  const APermissions: TArray<string>;
  const AGrantResults: TArray);
var
  LocationPermissionGranted: Boolean;
  sFile   : String;

begin
   sFile := SDCARD + 'Server.csv';    //-->    SDCARD  = '/sdcard/download/';

   LocationPermissionGranted := (Length(AGrantResults) = 2) and
     (AGrantResults[0] = TPermissionStatus.Granted) and
     (AGrantResults[1] = TPermissionStatus.Granted);

   //======>> Aqui ya no entra. En Tokyo, todo bien. Pero en Delphi Rio, se cuelga, y no presenta ningun tipo de mensaje.
    
   if LocationPermissionGranted then begin
      if (FileExists(sFile)) then begin
         ShowMessage( 'Permiso concedido.');
         CargaServer(sFile);
      end
      else begin
         ShowMessage( sFile + ', no encontrado. lo crearemos.');
         FTP_Server;
      end;
   end
   else
      ShowMessage( 'Permiso denegado.');
end;


procedure TFConfigIP.CargaServer(sFile: String);
var
   f : System.TextFile;
   j : String;

begin
   AssignFile(f, sFile );
   Reset(f);

   while not SeekEof(f) do
   begin
      if SeekEoln(f) then
        Readln;

      Read( f, j );
      j := Trim( j );

      EdServer.Text  := GetParam(j, ';');    // GetParam, es una funcion que descompone un String. En este caso, separado por ";"
      EdCodigo.Text  := GetParam(j, ';');
      EdPasword.Text := GetParam(j, ';');
   end;

   CloseFile( f );
end;

Espero que este ejemplo sirva de algo, y, me puedan dar luces de que esta pasando.

Gracias.

Saludos.
Jose Miguel.
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
VCL en iOS and Android el-mono Noticias 1 21-12-2020 09:28:09
Reportes Android RebeccaGL Desarrollo en Delphi para Android 1 29-06-2020 09:17:08
SDK 28 no funciona con android 9 Fossy Desarrollo en Delphi para Android 4 16-04-2019 14:38:40
sobre Android SDK Manager y diferentes versiones de Android cocute Desarrollo en Delphi para Android 2 29-11-2017 21:24:00
Solicitar permisos en Android 6 ElGatitoTapatio FireMonkey 2 19-01-2017 19:06:12


La franja horaria es GMT +2. Ahora son las 20:42:32.


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