Enregistrement de structures sous Android.
Bonjour à toutes et à tous,
Dans une application, je dois enregistrer les paramètres de divers opérateurs. Ces paramètres sont nombreux et variés. De ce fait, je me suis penché sur l'enregistrement de structures.
Après avoir bien pataugé, j'ai enfin réussi. A savoir que la structure (ou classe) que vous enregistrez doit être sérialisable ou que s'i elle ne l'est pas, vous devez la rendre sérialisable, ce qui se fait on ne peut plus simplement en ajoutant dans sa déclaration : "implements serializable".
Pour autant, ce n'est pas gagné. il faut de plus :
- que chaque membre de votre classe soit aussi sérialisable, ce qui semble logique,
- mais ce qui l'est moins : que votre classe ne soit pas incluse dans une classe qui comprend des éléments non sérialisable. Exemple tout bête, vous créer une application avec une vue principale (qui étend Activity) et vous déclarer votre classe à l'intérieur de cette classe. Et bien cela ne fonctionnera pas car Activity n'est pas sérialisable. Il faut être sûr que votre classe ne dépend d'aucune classe qui serait non sérialisable ou qui contient des éléments non sérialisables.
Bien, je suppose que vous le saviez. Pour autant, j'ai cherché dans les fichiers de mon smartphone le fichier que je venais de créer. Je ne l'ai pas trouvé. Grâce à l'instruction context.getFileDir, j'ai su où il était : c'est dans le répertoire :
/data/data/com.example.monappli/files
Mais j'ai été infoutu de trouver ce répertoire. Où est-il ? Est-il possible de copier ce fichier pour l'exporter vers un PC par exemple.
Merci de votre aide.
Pierre