·4 min de lecture

Comment inspecter la base de données d'une app sur Mac

Les apps sur votre Mac stockent leurs données dans des fichiers SQLite cachés, enfouis dans les dossiers Library. Inspecter ce qu'une app a réellement enregistré implique de naviguer dans des chemins de conteneurs et de décoder du résultat de base de données brut.

Chaque app sur votre Mac qui persiste des données localement — notes, favoris, messages, données de santé, listes de tâches — stocke probablement celles-ci dans une base de données SQLite nichée dans ~/Library/ ou ~/Library/Containers/. Peut-être voulez-vous voir quelles données une app a collectées. Peut-être devez-vous récupérer quelque chose supprimé de l'interface. Peut-être déboguez-vous votre propre app et devez vérifier ce qui a réellement été écrit sur le disque. Quelle que soit la raison, macOS ne fournit aucun moyen intégré d'inspecter ces fichiers visuellement.

Trouver et ouvrir les bases de données d'apps est fastidieux

D'abord, vous devez localiser le fichier. Les apps en bac à sable stockent leurs données dans ~/Library/Containers/com.developer.appname/Data/, tandis que les apps non en bac à sable utilisent parfois ~/Library/Application Support/. Le dossier Library est masqué par défaut — vous devez utiliser la fonction « Aller au dossier » du Finder ou naviguer via le Terminal. Une fois le fichier .sqlite ou .db trouvé, vous êtes coincé à utiliser sqlite3 dans le Terminal, à lire le résultat de requête brut sans aucune structure visuelle.

Pour les apps iOS exécutées dans le Simulateur, le chemin est encore plus profond : ~/Library/Developer/CoreSimulator/Devices/ suivi d'un UUID, puis d'un autre chemin imbriqué vers le dossier Documents ou Library de l'app. Trouver la bonne base de données parmi des dizaines de dossiers de simulateurs est une véritable chasse au trésor.

Inspectez n'importe quelle base de données d'app avec Tome

Tome vous permet d'ouvrir n'importe quel fichier de base de données SQLite et de voir immédiatement son contenu — tables, vues, index, déclencheurs et données des lignes — dans une interface native macOS. Une fois le fichier localisé, glissez-le simplement sur Tome ou utilisez Fichier → Ouvrir.

Tome inspectant la base de données SQLite d'une app sur Mac

Comprenez ce qu'une app stocke

Parcourez chaque table pour voir exactement quelles données l'app persiste. Les noms de colonnes révèlent la conception du schéma. Les données des lignes montrent les valeurs réelles. Aucune supposition, aucune commande Terminal — cliquez simplement à travers les tables de la barre latérale et faites défiler leur contenu.

Déboguez la couche de données de votre propre app

Si vous développez une app macOS ou iOS qui utilise SQLite ou Core Data, Tome vous permet de vérifier que vos écritures ont bien été effectuées. Vérifiez que les relations sont intactes, inspectez les colonnes générées automatiquement, et exécutez des requêtes de diagnostic avec coloration syntaxique et auto-complétion.

Récupérez ou exportez des données

Besoin d'un enregistrement supprimé de l'interface d'une app mais qui existe peut-être encore dans la base de données ? Ouvrez le fichier dans Tome et cherchez dans la table concernée. Si les données sont là, vous pouvez les lire directement ou utiliser une requête SQL pour extraire exactement ce dont vous avez besoin.

Obtenez Tome sur le Mac App Store

Article suivant

Tome

Browse, query, and edit SQLite databases in a native Mac app.

Get Tome on the Mac App Store