ShizuCallRecorder Ramène l'Enregistrement d'Appels sur Android Stock Sans Root
Vous souvenez-vous quand enregistrer un appel sur Android était aussi simple que de télécharger la première application trouvée sur Google Play ? Google a systématiquement comblé cette faille à chaque nouvelle version de l'OS. D'abord, ils ont restreint l'accès au microphone pendant les appels, puis ils ont bloqué l'API Accessibility pour les enregistreurs tiers. En conséquence, les propriétaires d'appareils modernes se retrouvent avec deux options : acheter des smartphones avec des fonctionnalités d'enregistrement intégrées du fabricant ou obtenir un accès root.
Un nouveau projet appelé ShizuCallRecorder est récemment apparu sur GitHub. Son auteur a trouvé une troisième voie. Cet utilitaire open source peut enregistrer les deux côtés d'une conversation sur Android 12 et versions ultérieures sans aucune modification système.
Comment la Capture Audio Fonctionne Sans Root
L'idée du projet est rafraîchissante de simplicité. Au lieu d'essayer de contourner les mécanismes de sécurité système via des fonctionnalités spéciales, le développeur a exploité l'infrastructure Shizuku.
Pour ceux qui ne connaissent pas Shizuku : c'est un outil pour transférer les permissions ADB au niveau des applications ordinaires. S'exécuter en tant que shell (com.android.shell) dans Android confère des privilèges auxquels les logiciels ordinaires n'ont pas accès. L'auteur de ShizuCallRecorder a intégré le binaire scrcpy-server de l'utilitaire bien connu scrcpy à l'intérieur de l'application.
Lorsqu'un appel entrant ou sortant se produit, ShizuCallRecorder lance un thread isolé scrcpy-server via Shizuku. Le serveur intercepte le flux audio directement depuis le système et le renvoie à l'application. Cela permet d'enregistrer proprement votre voix et celle de l'appelant, même pendant les conversations via un casque Bluetooth.
Le flux de travail ressemble à ceci :
- L'application reçoit un événement de changement d'état du téléphone depuis
TelephonyManager. - Demande à Shizuku de lancer le service interne.
- Une instance locale de
scrcpy-serverdémarre avec les drapeaux de capture audio. - Le flux est encodé en Opus ou AAC et sauvegardé en mémoire de l'appareil.
- Lorsque l'appel se termine, le processus s'arrête.
L'application n'a pas de service d'arrière-plan persistant qui occupe la mémoire et épuise la batterie. Elle se réveille uniquement lorsqu'elle est déclenchée par un événement système.
Paramètres et Fonctionnalités
Les fonctionnalités de l'utilitaire sont délibérément minimalistes. L'auteur avertit explicitement dans la documentation qu'il n'a pas l'intention de transformer le projet en un enregistreur universel pour les messageries comme Telegram ou WhatsApp. L'objectif principal est les appels opérateurs cellulaires classiques.
Parmi les options utiles, vous trouverez :
- Sélection du codec audio entre Opus et AAC.
- Enregistrement automatique avec des règles d'exclusion. Vous pouvez ignorer les numéros anonymes, des contacts spécifiques de votre répertoire, ou n'enregistrer que les appels de numéros inconnus.
- Arrêt automatique de Shizuku après un appel.
Ce dernier point est une question de sécurité. Certaines applications bancaires et clients de services d'entreprise réagissent mal à un ADB activé ou à un service Shizuku actif. Pour éviter de déclencher les mécanismes de sécurité d'autres logiciels, ShizuCallRecorder peut arrêter sa session de lui-même.
Avertissements et Limitations
Avant d'installer, prenez en compte les détails de l'implémentation technique.
Premièrement, l'utilitaire repose sur les API privées d'Android et la logique scrcpy-server. Sur Android stock (Pixel, Motorola, ou ROMs AOSP), tout fonctionne normalement. Cependant, les fabricants de smartphones aiment réécrire les services de gestion des appels système. Des problèmes peuvent survenir sur les firmwares comme MIUI, HyperOS ou One UI.
Deuxièmement, il y a une nuance avec les appels parallèles. Si un deuxième appel arrive pendant une conversation en cours et que vous basculez dessus, l'enregistrement continue dans le même fichier sans séparation.
Troisièmement, les règles de confidentialité des récentes versions d'Android rendent difficile l'accès instantané au numéro de l'appelant entrant. Pour cette raison, l'identifiant de l'appelant se déclenche parfois avec un retard, et le filtre automatique peut incorrectement considérer un appel comme anonyme.
La compatibilité avec les versions d'OS ressemble à ceci :
- Android 11 est supporté avec une réserve : l'écran de l'appareil doit être déverrouillé pour que la capture audio fonctionne.
- Android 12, 13, 14 et 15 fonctionnent entièrement.
- Android 16 et 17 sont encore incertains en raison des changements annoncés dans le sous-système ADB.
Comment Tester le Projet
Le processus d'installation est légèrement plus impliquant qu'une installation typique depuis un magasin d'applications, mais c'est simple :
- Installez et lancez Shizuku sur votre smartphone (l'auteur du dépôt recommande d'utiliser le fork par thedjchi).
- Téléchargez le dernier fichier APK depuis la page des releases ShizuCallRecorder sur GitHub.
- Accordez à l'application les permissions de base pour l'accès aux appels et aux contacts.
- Approuvez la demande d'accès à Shizuku.
ShizuCallRecorder est un excellent exemple de comment la combinaison d'infrastructures existantes (scrcpy et Shizuku) peut résoudre un problème qui s'est heurté à un mur de restrictions système dans Android. Le projet est écrit en Kotlin, distribué sous licence GPL-3.0, et accomplit proprement exactement la tâche pour laquelle il a été créé.
Si vous avez besoin d'un enregistrement de appels téléphoniques autonome sans rooter votre appareil, ce projet mérite définitivement une place dans votre collection d'utilitaires de travail.
Projets similaires