bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


android_persistencia

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
android_persistencia [2022/10/10 10:40]
enrique_mieza_sanchez [Exercici: fotos full-size a l'àrea externa]
android_persistencia [2023/10/30 15:22] (actual)
enric_mieza_sanchez [Exercici] exercici agenda
Línia 25: Línia 25:
 És el més segur ja que no es pot compartir entre aplicacions. La seguretat es manté sempre i quan no es faci //root// el dispositiu. És el més segur ja que no es pot compartir entre aplicacions. La seguretat es manté sempre i quan no es faci //root// el dispositiu.
  
-L'[[https://developer.android.com/reference/android/content/Context|objecte Context]] (del qual deriva ''Application'') ens proveeix algunes funcions per tractar els fitxers: +<WRAP info> 
-  * [[https://developer.android.com/reference/android/content/Context#openFileOutput(java.lang.String,%20int)|Context.fileOutputStream]] ens permet obrir un //stream// d'escriptura a l'espai privat de l'aplicació.+L'[[https://developer.android.com/reference/android/content/Context|objecte Context]] (del qual deriva ''Activity'') ens proveeix algunes funcions per tractar els fitxers: 
 +  * [[https://developer.android.com/reference/android/content/Context#openFileOutput(java.lang.String,%20int)|Context.openFileOutput()]] ens permet obrir un //stream// d'escriptura a l'espai privat de l'aplicació.
   * [[https://developer.android.com/reference/android/content/Context#getFilesDir()|Context.getFilesDir()]] ens dona el ''path'' de la carpeta privada de l'aplicació on emmagatzemarem els fitxer interns. Amb aquest ''File'' com a path podem utilitzar les funcions habituals de Java per tractament d'arxius.   * [[https://developer.android.com/reference/android/content/Context#getFilesDir()|Context.getFilesDir()]] ens dona el ''path'' de la carpeta privada de l'aplicació on emmagatzemarem els fitxer interns. Amb aquest ''File'' com a path podem utilitzar les funcions habituals de Java per tractament d'arxius.
 +</WRAP>
  
 +==== Exercici ====
 <WRAP todo> <WRAP todo>
 +**Mini agenda**
 +
 App de testeig per visualitzar els arxius i les carpetes d'emmagatzematge intern. App de testeig per visualitzar els arxius i les carpetes d'emmagatzematge intern.
-  * Crea una nova aplicació amb un botó. +  * Crea una nova aplicació amb una interfície que disposi dels camps: 
-  * Utilitza la funció [[https://developer.android.com/reference/android/content/Context#openFileOutput(java.lang.String,%20int)|Context.fileOutputStream()]] per enregistrar un arxiu amb el nom "dades.txt"+    * Nom 
-  * Escriu-hi una línia de text. +    * Cognoms 
-  * Controla que tingui el seu ''try...catch'' i mostra un missatge d'error per si falla alguna cosa.+    * Telèfon 
 +    * Email 
 +    * Botó GUARDAR 
 +  * Quan premis el botó GUARDAR s'enregistrarà la informació de la interfície en un arxiu de memòria interna
 +    * Utilitza la funció [[https://developer.android.com/reference/android/content/Context#openFileOutput(java.lang.String,%20int)|Context.openFileOutput()]] per enregistrar un arxiu amb el nom "contactes.txt"
 +    * Controla que tingui el seu ''try...catch'' i mostra un missatge d'error per si falla alguna cosa
 +  * Escriu-hi una línia amb les dades del contacte separats per punts i coma ";".
   * Utilitza el [[https://developer.android.com/studio/debug/device-file-explorer|Device File Explorer]] d'Android Studio per visualitzar l'arxiu que has generat. Pensa a ACTUALTIZAR el File Manager per trobar el teu arxiu.   * Utilitza el [[https://developer.android.com/studio/debug/device-file-explorer|Device File Explorer]] d'Android Studio per visualitzar l'arxiu que has generat. Pensa a ACTUALTIZAR el File Manager per trobar el teu arxiu.
 +
 +Ampliació (només si dona temps):
 +  * Fes una segona ''Activity'' que disposi d'un ''ListView'' que carregui els contactes en un ''ArrayList'' i els visualitzi. Consulta [[Android ListView]].
 +  * Posa un event d'acció a la ''ListView'' per tal que, al clicar un element de la llista, es pugui editar en una ''Activity'' a part.
 +
 </WRAP> </WRAP>
  
Línia 70: Línia 86:
 </WRAP> </WRAP>
  
 +<WRAP info>
 Als objectes [[https://developer.android.com/reference/android/content/Context|Context]] i [[https://developer.android.com/reference/android/os/Environment|Environment]] trobem funcions adequades per a accedir als arxius externs de l'app: Als objectes [[https://developer.android.com/reference/android/content/Context|Context]] i [[https://developer.android.com/reference/android/os/Environment|Environment]] trobem funcions adequades per a accedir als arxius externs de l'app:
   * [[https://developer.android.com/reference/android/content/Context#getExternalFilesDir(java.lang.String)|Context.getExternalFilesDir(String type)]] ens dona el ''path'' de l'espai compartit dedicat a la nostra aplicació.   * [[https://developer.android.com/reference/android/content/Context#getExternalFilesDir(java.lang.String)|Context.getExternalFilesDir(String type)]] ens dona el ''path'' de l'espai compartit dedicat a la nostra aplicació.
   * [[https://developer.android.com/reference/android/os/Environment#getExternalStoragePublicDirectory(java.lang.String)|Environment.getExternalStoragePublicDirectory(String type)]] ens dona el ''path'' de l'espai compartit comú de tots les aplicacions.   * [[https://developer.android.com/reference/android/os/Environment#getExternalStoragePublicDirectory(java.lang.String)|Environment.getExternalStoragePublicDirectory(String type)]] ens dona el ''path'' de l'espai compartit comú de tots les aplicacions.
 +
 +[[https://gist.github.com/granoeste/5574148|Aquí teniu una taula resum dels espais d'emmagatzematge]].
 +</WRAP>
  
 A totes dues funcions cal especificar-les a quina de les diferents carpetes volem emmagatzemar-ho. Els valors s'indiquen a l'objecte [[https://developer.android.com/reference/android/os/Environment#fields|Environment]] i alguns exemples son: Environment.DIRECTORY_DCIM, Environment.DIRECTORY_MUSIC, Environment.DIRECTORY_SCREENSHOTS, etc. A totes dues funcions cal especificar-les a quina de les diferents carpetes volem emmagatzemar-ho. Els valors s'indiquen a l'objecte [[https://developer.android.com/reference/android/os/Environment#fields|Environment]] i alguns exemples son: Environment.DIRECTORY_DCIM, Environment.DIRECTORY_MUSIC, Environment.DIRECTORY_SCREENSHOTS, etc.
  
  
 +
 +
 +\\
  
 ===== Treballant amb XML i altres ===== ===== Treballant amb XML i altres =====
android_persistencia.1665398419.txt.gz · Darrera modificació: 2022/10/10 10:40 per enrique_mieza_sanchez