Sur mon ordiphone sous GrapheneOS, j'utilise le logiciel de téléphonie par défaut, Dialer, qui est un dérivé (fork) de celui d'Android.
Il n'offre aucune fonctionnalité de purge automatique de l'historique des appels téléphoniques, de suppression des entrées plus vieilles qu'une durée spécifiée. On ne peut effacer qu'à la granularité d'une entrée ou de tout le journal. Je ne parle pas des enregistrements audio d'appels.
Notons que, sous Android (et donc GrapheneOS), seuls les 500 derniers appels sont conservés dans le journal.
La base de données (contacts2.db / calllog.db) n'est pas accessible voire je ne la trouve pas, que ça soit avec adb pull ou adb shell ls : permission denied. Normal, je n'ai pas l'accès root volontairement. Il me faut donc utiliser l'API standard d'Android.
Dans la logithèque F-Droid, je n'ai trouvé aucune application pour supprimer automatiquement les vieilles entrées du journal des appels. Logger permet de rechercher par plage de date, mais pas d'effacer. J'ai cherché « call log », « call management », « call history », « auto delete », « cleaner ». Plusieurs applications de téléphonie (= « dialer ») sont disponibles (Emerald Dialer, OpenContacts, etc.), mais aucune n'indique la fonctionnalité recherchée dans sa description (et, pour sûr, Emerald ne l'implémente pas, j'ai essayé). De toute façon, je suis extrêmement frileux à l'idée de remplacer ce logiciel (vie privée, tout ça). Évidemment, hors de question d'utiliser des logiciels non-libres, donc je n'ai pas cherché dans le Play store.
Il est peut-être possible de créer une tâche automatique (planifiée ou non) avec une appli d'automatisation, mais celle disponible sur F-Droid ne semble pas pouvoir faire ça, et j'ai un besoin très ponctuel (1 fois/an) qui ne justifie pas le recours à cette méthode.
Reste la méthode bourrine : exporter le journal, faire le tri, effacer l'historique, importer l'issue du tri. Dialer n'a pas de fonctionnalité d'exportation / importation (la sauvegarde de l'historique d'appels se fait via SeedVault, mais elle est chiffrée).
Les applis Logger et SMS Import / Export (sms-ie), toutes deux disponibles dans F-Droid permettent cela.
Je préfère sms-ie car je peux également l'utiliser pour effacer mes vieux SMS/MMS, car le format de l'exportation, JSON, est de ceux que je sais déjà traiter automatiquement (avec jg, par ex., cf. mon tutoriel jq) alors que Logger travaille en CSV que je ne sais pas spontanément traiter, et car elle est conseillée dans le forum GrapheneOS.
Étape 1 : on exporte le journal des appels avec sms-ie, et on récupère l'exportation JSON sur un ordinateur GNU/Linux.
Étape 2 : on transfère, dans un fichier, les entrées de l'historique d'appels plus récentes qu'une date choisie : jq -c '.[] | select(.date | tonumber > <TIMESTAMP>)' calls.json > call_tries.json. La directive « -c » (compact) est obligatoire, sinon sms-ie échouera à importer le fichier que l'on prépare. Pour convertir la date choisie en timestamp Unix : date -d 'YYYY-MM-JJ HH:MM:SS' +%s + ajouter trois zéros pour obtenir le bon format de timestamp. Ex. : 1er janvier 2025 à 0 h 0 m 0 s = 1735686000000.
Étape 3 : depuis Dialer, on efface l'historique des appels (menu, « Call history », menu, « Supprimer l'historique des appels »). Avec sms-ie, on importe le fichier JSON qu'on a généré. Fin.
Idée de durée de conservation : 1 an, grand max. Ça laisse le temps de faire une capture d'écran en cas de litige, de retrouver un numéro pas encore enregistré dans les contacts, etc. Note que si tu fais le ménage une fois par an, le 1er janvier par ex., il faut supprimer toutes les entrées antérieures à ce jour, sinon tu aurais une durée de conservation de deux ans (au 01/01/2026, si tu effaces < 01/01/2025 ‒ un an, alors au 31/12/2026, tu auras deux ans d'historique).