Spanish Instalar/crear una carpeta

23021959Pepe

Member
Licensed User
Longtime User
Hola a todos, ¿como hago para que al instalar la aplicación me cree Una carpeta, la cual contiene varios archivos PDF?.
Una vez creada la carpeta con su contenido en el móvil ¿Como los cargo en un ListView?.

Saludos
Pepe
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola Pepe

Puedes añadir ese archivo a la aplicacion (pestaña "Files", botón "Add Files") , cuando compiles y ejecutes la app lo tendras en el directorio "File.DirAssets" , si no te gusta tenerlos ahi, puedes copiarlos a donde tu quieras por código (File.Copy).

Luego, si lo que quieres es poner el nombre del fichero en el ListView, puedes leer los ficheros del directorio cargandolo en una lista, y añadirlos al ListView con AddSingleLine, AddTwoLines, AddTwoLinesAndBitmap, etc

Saludos
 

23021959Pepe

Member
Licensed User
Longtime User
Hola Jesús, quizás no me explique correctamente. Lo que pretendo es que la carpeta que figura en la imagen adjunta "Manuales", cuando se instale la aplicación en el móvil, me la cree tal y como se ve, con el contenido que actualmente en este momento tiene (los cuatro archivos PDF).
Por lo que en el móvil debería de aparecer, la carpeta de la aplicación y dentro de ella la carpeta "Manuales".

Saludos
Pepe
 

Attachments

  • Dibujo1.JPG
    Dibujo1.JPG
    89.6 KB · Views: 472

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola Pepe

Puedes añadir ese archivo a la aplicacion (pestaña "Files", botón "Add Files") , cuando compiles y ejecutes la app lo tendras en el directorio "File.DirAssets"
En el proyecto copias los pdf como te dije arriba.

Cuando instales la aplicacion esos ficheros te los pondrá en la carpeta File.DirAssets
Cuando arranques la aplicación, creas tu nueva carpeta "manuales" (por código):
B4X:
'File.MakeDir(File.DirAssets,"Manuales")
File.MakeDir(File.DirInternal,"Manuales")

Y una vez creada tu carpeta, copias los ficheros a ella con el File.Copy

Espero que ahora sea lo que quieres

Saludos
 
Last edited:

DATASOFT (SOLUSOFT S A)

Member
Licensed User
Longtime User
pregunta de novato al hacer eso no tendrías dos guiasparala...PDF 1 en la dirección dirassets(no modificable) y otra nueva en la carpeta creada por file.makedir?
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola Pepe:

Me equivoque al poner el directorio para crear la carpeta, en vez de:
File.MakeDir(File.DirAssets,"Manuales")
Quise decir :
B4X:
File.MakeDir(File.DirInternal,"Manuales")

Por que en File.DirAssets no podrás copiar ni crear ninguna carpeta.



Hola DataSoft:
al hacer eso no tendrías dos guiasparala...PDF 1 en la dirección dirassets

Si, está claro, un file.copy no mueve el archivo, solo lo copia. Le dije a Pepe esta solución por que es muy facil añadir ficheros externos y la aplicación los incluirá en el .apk.

Recuerdo la definición de

File.DirAssets
La carpeta incluye los archivos que se agregaron con el administrador de archivos. Estos archivos son de sólo lectura. No puedes crear nuevos archivos en esta carpeta (que se localiza dentro del archivo apk).

File.DirInternal / File.DirInternalCache Estas dos carpetas se almacenan en la memoria principal y son privadas de la aplicación. Otras aplicaciones no pueden acceder a estos archivos.
La carpeta caché puede quedar eliminada por el sistema operativo si necesita más espacio.

Por eso lo de crear la carpeta en File.DirInternal, para que el acceso sea solo de su aplicación.

Saludos
 
Last edited:
Top