anonymous Log in
Search
Recents:
v3.0
sd
Obtener Base Offline
07/01/21 12:11

martin gaston

Replies: 3

Hola
Trabajamos con Genexus16 U11. Estamos desarrollando una
aplicación SD para android que trabaja en modo offline.
Estamos haciendo pruebas sobre un dispositivo físico y queremos acceder al
archivo de sqllite. El sd no tiene tarjeta así que utilizamos la memoria
interna.
Seguimos el link
https://wiki.genexus.com/commwiki/servlet/wiki?23815,HowTo%3A+Looking+for+offline+database+files
y configuramos la bandera en false.
vemos que la estructura de directorios (la memoria interna aparece) vemos
un folder asociado a la aplicación, dentro esta el folder file, pero esta
vacío. Sin embargo la aplicación muestra datos.
¿Alguien tiene idea en qué otro lado puede alojarse?
Saludos
Gracias
Replies

jlsantosp

07/01/21 12:41
Creo que debe tener permiso root ese dispositivo El El jue, 7 de ene. de 2021 a la(s) 10:11, Martin Gaston < lonasmartin@gmail.com>

fpanizza

07/01/21 17:38
Buenas, A pesar de no tener SD card, todos los devices tiene un directorio que se mapea al External Storage. La BD sqlite deberia quedar en un directorio similar a este: */Android/data//files/db/* Donde el inicio varía según el device, puede ser "/storage/sdcard/" "/storage/emulated/" , "/data/emulated/0/",etc. Lo mas fácil es ejecutar la aplicación con LogLevel = Debug y ahi al iniciar te va a aparece la ruta donde queda el archivo sqlite en el log. Ej: opening database storage/emulated/android/data/com.artech.demo/files/db/demo.sqlite Saludos, On Thu, Jan 7, 2021 at 12:11 PM Martin Gaston

fpanizza

08/01/21 10:48
Buemas, Efectivamente , poner el camino fijo, no te va a funcionar en distintos dispositivos. Actualmente tienes disponible el tipo de datos directory para escribir en distintos directorios del dispositivo: https://wiki.genexus.com/commwiki/servlet/wiki?27388,Directory+Data+Type+Static+properties Por ejemplo en tu caso , tal vez te sirve el ExternalFilesPath. Al momento , no tenemos una propiedad para obtener la ruta al directorio de descargas. Y de hecho no esta mas recomendado su uso directo, ver : https://developer.android.com/reference/android/os/Environment#getExternalStoragePublicDirectory(java.lang.String) que esta deprecated. Sería algo así: Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); Si lo escribes en un pequeño EO. De cualquier forma, como no está recomendado, te diria que revises cuál es tu caso de uso? y si no se soluciona con las alternativas que recomiendan: ExternalFilesDir (que sería el ExternalFilesPath de Gx) o MediaStore (para usarlo deberias crear un pequeño EO tambien). Saludos, On Thu, Jan 7, 2021 at 5:53 PM Eduardo Dilena - skyweb.com.ar < eduardo@skyweb.com.ar>


Back to sd