P5 stockage

Lilia Sfaxi
Lilia SfaxiDocteur-Ingénieur en Informatique - Assistante à l'INSAT
Stockage
Shared Preferences, Stockage Interne/Externe, SQLite…
Formation Mobile
27 Aout au 1 Septembre 2015
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 1
Options de Stockage
•  Plusieurs options de stockage pour sauvegarder des données
persistantes
•  Le choix de la solution idéale dépend des besoins spécifiques:
•  Si les données doivent être privées ou accessibles par d’autres applications
•  Combien d’espace disponible est-il requis?
•  Les données sont-elles structurées, semi-structurées ou pas structurées?
•  Les options de stockage sont les suivantes:
•  Shared Preferences
•  Stockage Interne
•  Stockage Externe
•  Bases de Données SQLite
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 2
Stockage
SHARED PREFERENCES
Stockage
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 3
Definition
•  Classe qui fournit un framework général qui permet de sauvegarder et
extraire des paires clef-valeur persistantes de types primitifs
•  Il est possible d’utiliser les SharedPreferences pour sauvegarder des
Booleans, Floats, Integers, Longs et Strings…
•  Les SharedPreferences sont typiquement utilisées pour sauvegarder
les préférences utilisateur, tel que : quelle sonnerie l’utilisateur a-t-il
choisi?
•  Pour cela, utiliser une PreferenceActivity
•  Mais pas uniquement…
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 4
Shared Preferences
Utilisation
•  Pour lire un objet SharedPreferences, utiliser l’une de ces méthodes:
•  getSharedPreferences: pour utiliser plusieurs fichiers de préférences
identifiés par nom
•  getPreferences: pour utiliser un seul fichier de préférences, donc sans
définir un nom de fichier
•  Pour ajouter des valeurs:
•  Appeler edit() pour obtenir un objet SharedPreferences.Editor
•  Ajouter des valeurs avec des méthodes, tel que putBoolean() et putString()
•  Valider les nouvelles valeurs avec commit()
•  Pour lire des valeurs, utiliser les méthodes de SharedPreferences tel
que getBoolean() ou getString()…
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 5
Shared Preferences
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 6
Shared Preferences
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 7
Shared Preferences
INTERNAL STORAGE
Stockage
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 8
Usage
•  Il est possible d’utiliser le stockage interne de votre
téléphone pour stocker des fichiers
•  Par défaut, les fichiers sauvegardés dans le stockage interne
sont privés à l’application (inaccessibles à partir d’autres
applications)
•  Quand l’utilisateur désinstalle l’application, les fichiers sont
automatiquement supprimés
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 9
Internal Storage
Usage : Ecriture
•  Pour créer et écrire dans un fichier privé en stockage
interne
•  Appeler openFileOutput avec le nom du fichier et le mode opératoire
(retourne un FileOutputStream)
•  Utiliser write() pour écrire dans le fichier
•  Fermer le flux d’écriture avec close()
•  Les modes opératoires sont:
•  MODE_PRIVATE : Le fichier n’est accessible que par l’application qui l’a créé.
•  MODE_WORLD_READABLE : Le fichier est accessible en lecture par les autres
applications.
•  MODE_WORLD_WRITEABLE : Le fichier est accessible en écriture par les autres
applications.
•  MODE_APPEND : Si le fichier existe déjà, les données seront ajoutées à la fin.
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 10
Internal Storage
Usage : Lecture
•  Pour lire le contenu d’un fichier interne:
•  Appeler openFileInput avec le nom du fichier (retourne un
FileInputStream)
•  Utiliser read() pour lire des bytes à partir du fichier
•  Fermer le flux d’écriture avec close()
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 11
Internal Storage
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 12
Stockage Interne
Ecriture
Lecture
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 13
Stockage Interne
1 2
Visualiser les Fichiers
Pour visualiser les fichiers de votre application, ouvrir le Android Device
Monitor ( ) et choisir la tabulation File Explorer
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 14
Internal Storage
data/data/<app_name>/
files
EXTERNAL STORAGE
Stockage
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 15
Usage
•  Tous les appareils compatibles Android supportent un espace
de stockage externe
•  Peut être une SD card, ou un espace interne non-amovible
•  Les fichiers sauvegardés dans un espace de stockage externe
sont accessibles à toutes les applications en lecture
•  Ils peuvent être modifiés par l’utilisateur si le « USB mass
storage » est activé pour transférer les fichiers sur un
ordinateur
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 16
External Storage
Etapes d’Utilisation
1.  Pour lire ou écrire des fichiers sur le stockage externe,
l’application doit avoir les permissions
READ_EXTERNAL_STORAGE ou WRITE_EXTERNAL_STORAGE
2.  Vérifier la disponibilité du support de stockage grâce à la
méthode getExternalStorageState
3.  Sauvegarder vos fichiers
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 17
External Storage
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 18
Stockage Externe
Ecriture
Lecture
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 19
Stockage Externe
BASE DE DONNÉES SQLITE
Stockage
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 20
SQLite
•  Android fournit un support total du SGBD SQLite
•  SQLite est une bibliothèque logicielle qui implémente un
moteur de base de données SQL avec zéro-configuration,
léger et sans dépendances externes
•  Toutes les bases de données créées dans une application
seront accessibles par nom à travers toute cette application,
mais pas de l’extérieur
•  La méthode recommandée pour la création d’une base de
données SQLite d’utiliser une sous-classe de
SQLiteOpenHelper
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 21
Base de Données SQLite
SQLiteOpenHelper
•  Classe d’assistance qui aide l’utilisateur à créer et manipuler
sa base de données de manière simple
•  Étapes à suivre:
•  Créer une classe qui hérite de SQLiteOpenHelper
•  Créer la base de données et les tables nécessaires
•  Implémenter les méthodes suivantes
•  Le constructeur
•  onCreate: contient les opérations réalisées à la création de la base de
données
•  onUpgrade: opérations réalisées quand la base fait un upgrade
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 22
Base de Données SQLite
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 23
Base de Données SQLite : SQLiteOpenHelper
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 24
Base de Données SQLite : SQLiteOpenHelper
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 25
Base de Données SQLite : Activité
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 26
SQLite
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 27
SQLite
1 sur 27

Recommandé

P1 introduction à android par
P1 introduction à androidP1 introduction à android
P1 introduction à androidLilia Sfaxi
6.6K vues48 diapositives
P3 listes et elements graphiques avancés par
P3 listes et elements graphiques avancésP3 listes et elements graphiques avancés
P3 listes et elements graphiques avancésLilia Sfaxi
6.6K vues52 diapositives
P4 intents par
P4 intentsP4 intents
P4 intentsLilia Sfaxi
5.8K vues19 diapositives
P2 éléments graphiques android par
P2 éléments graphiques androidP2 éléments graphiques android
P2 éléments graphiques androidLilia Sfaxi
7K vues24 diapositives
Android-Tp4: stockage par
Android-Tp4: stockageAndroid-Tp4: stockage
Android-Tp4: stockageLilia Sfaxi
5.1K vues11 diapositives
Android-Tp3: fragments et menus par
Android-Tp3: fragments et menusAndroid-Tp3: fragments et menus
Android-Tp3: fragments et menusLilia Sfaxi
6.4K vues14 diapositives

Contenu connexe

Tendances

Soap, wsdl et uddi par
Soap, wsdl et uddiSoap, wsdl et uddi
Soap, wsdl et uddimiraprincesse
2.2K vues23 diapositives
Chp6 - Développement iOS par
Chp6 - Développement iOSChp6 - Développement iOS
Chp6 - Développement iOSLilia Sfaxi
4.6K vues64 diapositives
Chp3 - Les Services Web par
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services WebLilia Sfaxi
3.9K vues27 diapositives
Support de cours technologie et application m.youssfi par
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiENSET, Université Hassan II Casablanca
31.4K vues199 diapositives
Programmation sous Android par
Programmation sous AndroidProgrammation sous Android
Programmation sous AndroidOlivier Le Goaër
131.5K vues156 diapositives
Java entreprise edition et industrialisation du génie logiciel par m.youssfi par
Java entreprise edition et industrialisation du génie logiciel par m.youssfiJava entreprise edition et industrialisation du génie logiciel par m.youssfi
Java entreprise edition et industrialisation du génie logiciel par m.youssfiENSET, Université Hassan II Casablanca
24.4K vues416 diapositives

Tendances(20)

Chp6 - Développement iOS par Lilia Sfaxi
Chp6 - Développement iOSChp6 - Développement iOS
Chp6 - Développement iOS
Lilia Sfaxi4.6K vues
Chp3 - Les Services Web par Lilia Sfaxi
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services Web
Lilia Sfaxi3.9K vues
Android-Tp1: éléments graphiques de base et intents par Lilia Sfaxi
Android-Tp1: éléments graphiques de base et intentsAndroid-Tp1: éléments graphiques de base et intents
Android-Tp1: éléments graphiques de base et intents
Lilia Sfaxi6.8K vues
Formation JAVA/J2EE par Ines Ouaz
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EE
Ines Ouaz8.7K vues
Stockage de données dans Android : Fichiers par Lilia Sfaxi
Stockage de données dans Android : FichiersStockage de données dans Android : Fichiers
Stockage de données dans Android : Fichiers
Lilia Sfaxi16.5K vues
Développement Android par Franck SIMON
Développement AndroidDéveloppement Android
Développement Android
Franck SIMON27.7K vues

Similaire à P5 stockage

Shared Preferences par
Shared PreferencesShared Preferences
Shared PreferencesODC Orange Developer Center
1K vues19 diapositives
Solutions backup dans le cloud : un tour d'horizon par
Solutions backup dans le cloud : un tour d'horizonSolutions backup dans le cloud : un tour d'horizon
Solutions backup dans le cloud : un tour d'horizonSerge Paulus
676 vues14 diapositives
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande par
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande BertrandCaron4
356 vues19 diapositives
Bermea : N’attendez pas de voir vos données disparaître : sauvegardez-les ! par
Bermea :  N’attendez pas de voir vos données disparaître : sauvegardez-les ! Bermea :  N’attendez pas de voir vos données disparaître : sauvegardez-les !
Bermea : N’attendez pas de voir vos données disparaître : sauvegardez-les ! Michel Sallaberry
52 vues14 diapositives
SdE TP 3 - Fonctions d'entrée et sortie par
SdE TP 3 - Fonctions d'entrée et sortieSdE TP 3 - Fonctions d'entrée et sortie
SdE TP 3 - Fonctions d'entrée et sortieAlexandru Radovici
152 vues22 diapositives
Mobile-Chp4 côté serveur par
Mobile-Chp4 côté serveurMobile-Chp4 côté serveur
Mobile-Chp4 côté serveurLilia Sfaxi
3.4K vues21 diapositives

Similaire à P5 stockage(19)

Solutions backup dans le cloud : un tour d'horizon par Serge Paulus
Solutions backup dans le cloud : un tour d'horizonSolutions backup dans le cloud : un tour d'horizon
Solutions backup dans le cloud : un tour d'horizon
Serge Paulus676 vues
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande par BertrandCaron4
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
Robocopy : Un outil de copie sécurisée et paramétrable en ligne de commande
BertrandCaron4356 vues
Bermea : N’attendez pas de voir vos données disparaître : sauvegardez-les ! par Michel Sallaberry
Bermea :  N’attendez pas de voir vos données disparaître : sauvegardez-les ! Bermea :  N’attendez pas de voir vos données disparaître : sauvegardez-les !
Bermea : N’attendez pas de voir vos données disparaître : sauvegardez-les !
Mobile-Chp4 côté serveur par Lilia Sfaxi
Mobile-Chp4 côté serveurMobile-Chp4 côté serveur
Mobile-Chp4 côté serveur
Lilia Sfaxi3.4K vues
Bureaux portables 2017 - version présentielle par URFIST de Paris
Bureaux portables 2017 - version présentielleBureaux portables 2017 - version présentielle
Bureaux portables 2017 - version présentielle
URFIST de Paris4.7K vues
Sauvegarder ailleurs : Cloud - DropBox par Reseau Informed
Sauvegarder ailleurs : Cloud - DropBoxSauvegarder ailleurs : Cloud - DropBox
Sauvegarder ailleurs : Cloud - DropBox
Reseau Informed702 vues
Systèmes d'Exploitation - chp5-gestion fichiers par Lilia Sfaxi
Systèmes d'Exploitation - chp5-gestion fichiersSystèmes d'Exploitation - chp5-gestion fichiers
Systèmes d'Exploitation - chp5-gestion fichiers
Lilia Sfaxi9.9K vues
Webinar: Opérations pour votre application - Session 7 - Sauvegarde et DR par MongoDB
Webinar: Opérations pour votre application - Session 7 - Sauvegarde et DRWebinar: Opérations pour votre application - Session 7 - Sauvegarde et DR
Webinar: Opérations pour votre application - Session 7 - Sauvegarde et DR
MongoDB864 vues
Td 10 diapo par skypain
Td 10 diapoTd 10 diapo
Td 10 diapo
skypain159 vues
Présentation d'Amazon Cloud Drive par skypain
Présentation d'Amazon Cloud DrivePrésentation d'Amazon Cloud Drive
Présentation d'Amazon Cloud Drive
skypain176 vues
Systèmes d'Exploitation - chp3-gestion mémoire par Lilia Sfaxi
Systèmes d'Exploitation - chp3-gestion mémoireSystèmes d'Exploitation - chp3-gestion mémoire
Systèmes d'Exploitation - chp3-gestion mémoire
Lilia Sfaxi18.6K vues
3 shared preference_sq_lite par Saber LAJILI
3 shared preference_sq_lite3 shared preference_sq_lite
3 shared preference_sq_lite
Saber LAJILI1.2K vues
La persistance des données : ORM et hibernate par Youness Boukouchi
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernate
Youness Boukouchi1.9K vues
Mise en place d'archives ouvertes: mesures pratiques par Iryna Kuchma
Mise en place d'archives ouvertes: mesures pratiquesMise en place d'archives ouvertes: mesures pratiques
Mise en place d'archives ouvertes: mesures pratiques
Iryna Kuchma675 vues

Plus de Lilia Sfaxi

chp1-Intro à l'urbanisation des SI.pdf par
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfLilia Sfaxi
431 vues58 diapositives
Plan d'études_INSAT_2022_2023.pdf par
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfLilia Sfaxi
1.8K vues28 diapositives
Lab3-DB_Neo4j par
Lab3-DB_Neo4jLab3-DB_Neo4j
Lab3-DB_Neo4jLilia Sfaxi
1.8K vues8 diapositives
Lab2-DB-Mongodb par
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-MongodbLilia Sfaxi
990 vues4 diapositives
Lab1-DB-Cassandra par
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-CassandraLilia Sfaxi
957 vues4 diapositives
TP2-UML-Correction par
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
10.3K vues6 diapositives

Plus de Lilia Sfaxi(20)

chp1-Intro à l'urbanisation des SI.pdf par Lilia Sfaxi
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdf
Lilia Sfaxi431 vues
Plan d'études_INSAT_2022_2023.pdf par Lilia Sfaxi
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdf
Lilia Sfaxi1.8K vues
TP2-UML-Correction par Lilia Sfaxi
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
Lilia Sfaxi10.3K vues
TP1-UML-Correction par Lilia Sfaxi
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-Correction
Lilia Sfaxi1.8K vues
TD3-UML-Correction par Lilia Sfaxi
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
Lilia Sfaxi1.2K vues
TD2 - UML - Correction par Lilia Sfaxi
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
Lilia Sfaxi22.3K vues
TD1-UML-correction par Lilia Sfaxi
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
Lilia Sfaxi1.6K vues
Android - Tp1 - installation et démarrage par Lilia Sfaxi
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrage
Lilia Sfaxi188 vues
Android - Tp2 - Elements graphiques par Lilia Sfaxi
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques
Lilia Sfaxi55 vues
Android - Tp3 - intents par Lilia Sfaxi
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intents
Lilia Sfaxi159 vues
Android - TPBonus - web services par Lilia Sfaxi
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web services
Lilia Sfaxi88 vues

P5 stockage

  • 1. Stockage Shared Preferences, Stockage Interne/Externe, SQLite… Formation Mobile 27 Aout au 1 Septembre 2015 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 1
  • 2. Options de Stockage •  Plusieurs options de stockage pour sauvegarder des données persistantes •  Le choix de la solution idéale dépend des besoins spécifiques: •  Si les données doivent être privées ou accessibles par d’autres applications •  Combien d’espace disponible est-il requis? •  Les données sont-elles structurées, semi-structurées ou pas structurées? •  Les options de stockage sont les suivantes: •  Shared Preferences •  Stockage Interne •  Stockage Externe •  Bases de Données SQLite Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 2 Stockage
  • 3. SHARED PREFERENCES Stockage Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 3
  • 4. Definition •  Classe qui fournit un framework général qui permet de sauvegarder et extraire des paires clef-valeur persistantes de types primitifs •  Il est possible d’utiliser les SharedPreferences pour sauvegarder des Booleans, Floats, Integers, Longs et Strings… •  Les SharedPreferences sont typiquement utilisées pour sauvegarder les préférences utilisateur, tel que : quelle sonnerie l’utilisateur a-t-il choisi? •  Pour cela, utiliser une PreferenceActivity •  Mais pas uniquement… Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 4 Shared Preferences
  • 5. Utilisation •  Pour lire un objet SharedPreferences, utiliser l’une de ces méthodes: •  getSharedPreferences: pour utiliser plusieurs fichiers de préférences identifiés par nom •  getPreferences: pour utiliser un seul fichier de préférences, donc sans définir un nom de fichier •  Pour ajouter des valeurs: •  Appeler edit() pour obtenir un objet SharedPreferences.Editor •  Ajouter des valeurs avec des méthodes, tel que putBoolean() et putString() •  Valider les nouvelles valeurs avec commit() •  Pour lire des valeurs, utiliser les méthodes de SharedPreferences tel que getBoolean() ou getString()… Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 5 Shared Preferences
  • 8. INTERNAL STORAGE Stockage Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 8
  • 9. Usage •  Il est possible d’utiliser le stockage interne de votre téléphone pour stocker des fichiers •  Par défaut, les fichiers sauvegardés dans le stockage interne sont privés à l’application (inaccessibles à partir d’autres applications) •  Quand l’utilisateur désinstalle l’application, les fichiers sont automatiquement supprimés Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 9 Internal Storage
  • 10. Usage : Ecriture •  Pour créer et écrire dans un fichier privé en stockage interne •  Appeler openFileOutput avec le nom du fichier et le mode opératoire (retourne un FileOutputStream) •  Utiliser write() pour écrire dans le fichier •  Fermer le flux d’écriture avec close() •  Les modes opératoires sont: •  MODE_PRIVATE : Le fichier n’est accessible que par l’application qui l’a créé. •  MODE_WORLD_READABLE : Le fichier est accessible en lecture par les autres applications. •  MODE_WORLD_WRITEABLE : Le fichier est accessible en écriture par les autres applications. •  MODE_APPEND : Si le fichier existe déjà, les données seront ajoutées à la fin. Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 10 Internal Storage
  • 11. Usage : Lecture •  Pour lire le contenu d’un fichier interne: •  Appeler openFileInput avec le nom du fichier (retourne un FileInputStream) •  Utiliser read() pour lire des bytes à partir du fichier •  Fermer le flux d’écriture avec close() Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 11 Internal Storage
  • 12. Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 12 Stockage Interne Ecriture Lecture
  • 14. Visualiser les Fichiers Pour visualiser les fichiers de votre application, ouvrir le Android Device Monitor ( ) et choisir la tabulation File Explorer Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 14 Internal Storage data/data/<app_name>/ files
  • 15. EXTERNAL STORAGE Stockage Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 15
  • 16. Usage •  Tous les appareils compatibles Android supportent un espace de stockage externe •  Peut être une SD card, ou un espace interne non-amovible •  Les fichiers sauvegardés dans un espace de stockage externe sont accessibles à toutes les applications en lecture •  Ils peuvent être modifiés par l’utilisateur si le « USB mass storage » est activé pour transférer les fichiers sur un ordinateur Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 16 External Storage
  • 17. Etapes d’Utilisation 1.  Pour lire ou écrire des fichiers sur le stockage externe, l’application doit avoir les permissions READ_EXTERNAL_STORAGE ou WRITE_EXTERNAL_STORAGE 2.  Vérifier la disponibilité du support de stockage grâce à la méthode getExternalStorageState 3.  Sauvegarder vos fichiers Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 17 External Storage
  • 18. Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 18 Stockage Externe Ecriture Lecture
  • 20. BASE DE DONNÉES SQLITE Stockage Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 20
  • 21. SQLite •  Android fournit un support total du SGBD SQLite •  SQLite est une bibliothèque logicielle qui implémente un moteur de base de données SQL avec zéro-configuration, léger et sans dépendances externes •  Toutes les bases de données créées dans une application seront accessibles par nom à travers toute cette application, mais pas de l’extérieur •  La méthode recommandée pour la création d’une base de données SQLite d’utiliser une sous-classe de SQLiteOpenHelper Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 21 Base de Données SQLite
  • 22. SQLiteOpenHelper •  Classe d’assistance qui aide l’utilisateur à créer et manipuler sa base de données de manière simple •  Étapes à suivre: •  Créer une classe qui hérite de SQLiteOpenHelper •  Créer la base de données et les tables nécessaires •  Implémenter les méthodes suivantes •  Le constructeur •  onCreate: contient les opérations réalisées à la création de la base de données •  onUpgrade: opérations réalisées quand la base fait un upgrade Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 22 Base de Données SQLite
  • 23. Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 23 Base de Données SQLite : SQLiteOpenHelper
  • 24. Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 24 Base de Données SQLite : SQLiteOpenHelper
  • 25. Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 25 Base de Données SQLite : Activité