Permisos android 8. v/s android 10
Hola Amigos.
Tengo una aplicacion para android realizada en Delphi Rio. Funciona bien. Pero solo para android 8, o inferior. Si la instalo en android 10. La aplicacion se cuelga. Solo muestra el splash de inicio, y no hace nada. Anteriormente habia consultado por un problema similar, en este mismo foro. La aplicacion corria bien en android 8, compilada con delphi tokio, pero se colgaba si la compilaba con delphi Rio. En este mismo foro jhonny me dio la solucion. Tenia un problema de permisos. (http://clubdelphi.com/~marcsc/foros/...ad.php?t=94292) En ese momento, incorpore el codigo de mas abajo, y todo funciono bien. Pero ahora, instalando la aplicacion en un tablet con android 10, la aplicacion se cuelga. Pero, si la instalo en un tablet con android 8, si funciona. ...Alguna idea?
Gracias. Saludos. Jose Miguel. |
¿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. |
Cita:
|
Cita:
Saludos. |
¡Ah! eso es cierto, y a final de año será obligatorio la v.30
|
Cita:
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.
|
Intenta seguir paso a paso, es "casi" imposible que lo sepamos sin tener el código para probar.
|
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. |
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
|
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.
Espero que este ejemplo sirva de algo, y, me puedan dar luces de que esta pasando. Gracias. Saludos. Jose Miguel. |
No veo nada fuera de lo normal, si quieres darle otro enfoque pueba esto:
Saludos. |
Hola Voci.
Intente compilar tu codigo. Pero da error. No reconoce el tipo TArray
Agradecido. Saludos. Jose Miguel. |
¿has incluido la librería "System.Permissions"?, ¿Que error te indica?.
Saludos. |
HOla voci.
Si, esta incluida la libreria System.Permissions. El error que arroja es el siguiente: [DCC Error] UConfigIP.pas(539): E2003 Undeclared identifier: 'TArray'
|
Compilado con delphi 10.3.3 y probado en mi móvil con android 7.
Saludos. |
Hola Voci.
Cita:
La misma aplicacion, sin cambiarle nada. Al instalarla en un dispositivo con Android 10, se cuelga al iniciar. No funciona. Inclusive tengo que reiniciar el dispositivo con Android 10, para poder cerrar la aplicacion. Allguma idea? Saudos. Jose Miguel. |
Como dices que te daba un error de compilación te he puesto el código completo para que lo compiles y lo pruebes en android 10, yo no tengo ningún dispositivo con esa versión. Así te aseguras que el problema está al otorgar/negar los permisos. Saludos. |
Hola Voci.
Volvi a compilar tu codigo. Pero obtengo los mismos errores, que te comparto mas abajo. Nuevamente no me reconoce el tipo Array.
Saludos. Jose Miguel. |
Hola Kurono.
Disculpa, no habia visto tu mensaje. Cita:
Alguna idea. Saludos. Jose Miguel. |
A ver si esa variable SDCARD está apuntando a algún sitio que no existe en ese dispositivo android 10
|
Cita:
intenta asignar los permiso desde el archivo xml que se gernera a ver que ocurre |
Hola Kurono.
modifique manualmente el arcchivo XML, pero este es reescrito por delphi al compilar la aplicacion. (no funciono). Aprovecho a comentarles que encontre este codigo en: C:\Users\Public\Documents\Embarcadero\Studio\20.0\Samples\Object Pascal\Mobile Snippets\AccessCameraApp
Lo compile, luego lo instale en mi android 10. La aplicacion funciono. Me presento un mensaje donde me pedia permisos para acceder a la camara del dispositivo. Le di aceptar. Luego me presento un mensaje, solicitando permiso para acceder a mis fotos. Le di aceptar a esta ultima peticion, y la aplicacion se colgo. Ya no funciono mas. La reinicie. La volvi a ejecutar, y lo mismo. Cada vez que li di permiso para acceder a mis fotos, la aplicacion se colgo. Entonces claramente hay un problema de manejo de permisos, que ni con una aplicacion desarrollada por embarcadero funciona. Alguna idea. Saludos. Jose Miguel. |
¿Has probado en otro dispositivo?
|
Si. Lo prove en un Samsung, y en un Huawei, ambos con android 10. En ambos casos el resultado fue el mismo. Al darle permisos para acceder a las fotos, la aplicacion se colgo. Tambien lo probe, en un dispositivo con Android 7. y, en este ultimo funciono todo bien. El problema esta claramente al intentar trabajar con Android 10. Y, al parecer, un problema que enbarcadero aun no soluciona.
Saludos. Jose Miguel. |
El problema es con cualquier permiso que tu le asigne o solo con los permiso de cámara y fotografía
Otra pregunta cual archivo xml modificaste existen dos uno que se crea en la carpeta principal del proyecto y otra que se encuentra dentro de la carpeta de Android la que yo modificó es la principal al menos en Delphi xe 7 es asi desconozco en otras versiones |
Hola Kurono.
Cita:
En este caso particular, una aplicacion desarrollada por embarcadero, la cual se supone que deberia funcionar sin problemas. Sencillamente, no funciona. Eso, es lo extrano y decepcionante. No funciona en Android 10. Cuando la aplicacion solicita permisos para acceder a mis fotos, y le das "permitir", la aplicacion se cuelga. Saludos. Jose Miguel. |
Hola a todos.
Buscando en internet soluciones al problema. encontre la pagina de Adriano El es un programador brasilero que desarrollo un componente para habilitar los permiso en dispositivos Android 7, 8, 9 y 10. El componente muy facil de usar. Lo probe, y funciono perfectamente. les dejo el enlace, por si a alguien le sirve. En la misma pagina estan las instrucciones de compilacion y de uso. Saludos. Jose Miguel B. |
por el momento es una solucion viable pero creo que embarcadero deberia solucionar este problema lo ante posible y no tener que recurir a componente de tercero para hacer lo que se supone que el IDE de delphi deberia realizar
|
Hola Kumono.
Estoy totalmente de acuerdo contigo. Pero lo bueno es que este componente, se ofrece de manera libre y con codigo abierto. Todo el codigo fuente esta disoponible en la pagina. Un gran gesto de generosidad por parte de su programador (Adriano Santos). Saludos. Jose Miguel. |
La franja horaria es GMT +2. Ahora son las 09:31:17. |
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