FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
permisos en rio
tengo una aplicación android
que en tokio no me daba problemas, le daba permisos de lectura y escritura porque leo/escribo un fichero de texto, pero al compilar en RIO no me van los permisos, tengo que poner los permisos a mano en mi móvil de Memoria o algo así, que es el único permiso que me deja activar, sabéis qué es lo que han cambiado? y que permiso debería activar? gracias |
#2
|
||||
|
||||
La política de permisos ha cambiado, apartir de oreo (creo) hay unos permisos "peligrosos".
Read/write externar storage está en la lista de peligrosos, y el usuario los ha de autorizar explícitamente. Hay dos formas, a mano, tal como lo haces ahora, o comprobar los permisos en tiempo de ejecución. Yo solo lo he implementado para llamadas telefónicas, tengo otra aplicación que sí usa external storage pero todavía no me he metido con ella. En las demos que te instala con río hay una aplicación, phonedialer, ahí miré como hacerlo. No sé si para rewad/write hay una, échale un vistazo. |
#3
|
|||
|
|||
En un reciente webminar se comentó la nueva política de permisos de Android y como implementarlo en Delphi, este es el enlace : http://delphi.org/2019/02/get-the-mo...with-10-3-rio/ , a partir del 20:30 está el tema de los permisos.
|
#4
|
|||
|
|||
yo creo que voy a volver a Tokio,
además en rio me va toda la interface muy lenta y no encuentro las cosas, simplemente para meter una path de una librería con lo que se usa no lo han podido esconder más. |
#5
|
|||
|
|||
Cita:
hay que meter código a mano sobre los permisos? no se puede como antes simplemente marcar la casilla del permiso que quieres que se active? aunque luego al que lo instala se le pregunte al instalar si lo acepta? gracias |
#6
|
|||
|
|||
por cierto otra duda, no entiendo porque si compilo mi aplicacion con Tokio, aun usando el mismo SDK 28 que en rio,
al inicial la aplicación en un movil que tiene android9 la primera vez me aparece un mensaje como que la aplicación ha sido creada para una versión anterior de Android. |
#7
|
||||
|
||||
Cita:
Las casillas las has de seguir marcando. Solo tienes dos opciones, o no pones el código y cuando instales la aplicación vas a aplicaciones, configuración, permisos y activas los permisos, o lo pones. Ya he implementado los permisos en la apli que comentaba post anteriores, para acceder a permisor read, write, external storage. Ahora no lo tengo a mano, esta noche te puedo decir el código y donde hay que ponerlo. Un saludo |
#8
|
||||
|
||||
Cita:
Y olvida subir una aplicación hecha en Tokio al store, te dirá que la api mínima es (creo) 26 , ahora no estoy seguro si 23 , o 26, pero da igual, tu manifest dirá que la estás enviando a 14... |
#9
|
||||
|
||||
Eso es así para todo el mundo, con todos los programas.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#10
|
|||
|
|||
Cita:
Ya que al intentar recompilar mi aplicación en RIO no soy capaz de que funcione bien del todo, aparte de los permisos me da más errores. Bueno una vez ajustado error no da pero la aplicación no hace lo que debe de hacer, Anteriormente cada vez que sacaban una versión nueva de Delphi al recompilar mis aplicaciones android notaba mejora arrancando más rápido, con Rio ya eso no se ve ninguna mejora, y lo que he comentado antes al cambio de interface no me termino de hacer. Sobre Tokio usas la última versión 10.2.3 build 3231? esta es la última no? https://cc.embarcadero.com/item/30842 Última edición por cocute fecha: 13-03-2019 a las 10:24:58. Razón: error |
#11
|
||||
|
||||
Cita:
A mi rio me va fluido, I7, 16 GB ram. Un saludo |
#12
|
|||
|
|||
Y no existe algún componente o alguna utilidad que se añada al IDE o algo así que facilite lo de añadir esto de los permisos en las aplicaciones android?
|
#13
|
||||
|
||||
Cita:
Pero es fácil. En primer lugar activa secure file sharing , en entitlement list, aquí tienes como: http://blong.com/Articles/AndroidPer...ureFileSharing Esto añadirá en el manifest un apartado de provider. Ahora el código delphi:
Y en evento form create:
La comprobación de permisos se hace en : Código:
PermissionsService.RequestPermissions([FPermissionReadExternalStorage, FPermissionWriteExternalStorage], AccessExternalStoragePermissionRequestResult, DisplayRationale); Fíjate en un detalle, en la parte de código:
El planteamiento es que donde hago el comentario // aquí iría el código si la autorización es correcta, pondrías el código que accede al almacenamiento externo. Y donde pone TDialogService.ShowMessage('La aplicación no puerde continuar porque no tiene los permisos necesarios.') pondías el mensaje tipo , "el permiso de acceso al almacenamiento no está autorizado" . La aplicación puede seguir funcionando sin los permisos, porque los va a comprobar cada vez y si no los autorizas no ejecutará el código. Como mi aplicación accede a unas bases de datos en la nube y sin esos datos no vale para nada...... los pido al inicio y si no los autorizas cierro la aplicación. Espero te sea de ayuda, al principio es bastante abrumador, a mi me pasó, pero ya ves que es sencillo. Para llamadas de teléfono y acceso a la cámara tienes ejemplos en las demos que se instalan con rio. El código que te he puesto para acceso a almacenamiento externo está sacado de la demo de acceso a cámara, que necesita tres permisos, read/write external storage y cámera. Un saludo Última edición por Casimiro Notevi fecha: 15-03-2019 a las 01:08:42. |
#14
|
||||
|
||||
Los administradores me van a crujir, pero juro que puese las etiquetas de código.
|
#15
|
||||
|
||||
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#16
|
|||
|
|||
pues yo no lo veo tan fácil,
he intentado meter todo eso en mi programa pero no me funcionaba me daba un montón de errores, si hay que hacer todo eso cada vez que quieres meter un permiso un programa ya digo que sigo en Tokio |
#17
|
||||
|
||||
Cita:
Y además, si quieres subir tu software a la "google play store" necesitas por obligación, también, sdk26 en adelante.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#18
|
|||
|
|||
Cita:
Pero si yo compilo con Tokio con la API 28.0.3 e instalo la aplicación en mi móvil me pilla los permisos sin problemas sin tener que activarlos a mano y sin meter ningún código a mano. Aunque no he probado a subir esa apk a la market Ya que hay apps que hago que me da igual que no estén en la market. Esto con Rio no se puede |
#19
|
||||
|
||||
¿Qué versión es tu android?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#20
|
|||
|
|||
Android 9.0 en el mate10
La primera vez que ejecuto la apk me sale un mensaje de algo como si estuviese hecho para un android anterior, pero ya no sale las siguientes veces ni da más problema. (pero ya digo que compilo con Tokio con la api 28.0.3) Última edición por cocute fecha: 16-03-2019 a las 13:25:33. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Permisos NTFS | johncook | API de Windows | 0 | 24-07-2006 18:05:33 |
Permisos de IBConsole | Novata2006 | Firebird e Interbase | 0 | 12-05-2006 14:26:06 |
Permisos en Interbase | federiconqn21 | Conexión con bases de datos | 1 | 06-02-2006 17:15:20 |
Control de Permisos con ADO | Migpal | MS SQL Server | 4 | 08-11-2005 09:27:50 |
permisos de red | nicocer | API de Windows | 2 | 18-06-2004 21:17:46 |
|