Les TypeConverters Room en 2026 : stocker enums, dates et listes sans corrompre votre schéma
Un guide pratique des TypeConverters Room sur Android — enums, Instant/LocalDate, et listes — ainsi que les erreurs qui transforment un converter en bug silencieux de corruption de données.
R8 et ProGuard pour Kotlin, Room et Compose : le crash qui n'arrive qu'en release
Pourquoi une app Android Room + Compose peut fonctionner parfaitement en debug et planter en production, et les règles keep R8/ProGuard précises qui l'évitent.
L'API In-App Review d'Android : demander une note sans être pénible
Un guide pratique de l'API In-App Review de Google — comment elle fonctionne réellement, quand la déclencher, et pourquoi la popup classique « notez-nous » nuit discrètement à votre note sur le Play Store.
Raccourcis d'application et tuiles de Paramètres rapides sur Android : enregistrer de l'eau sans ouvrir l'application
Un guide pratique de l'API dynamique ShortcutManager et de TileService sur Android — comment permettre à une action en un tap de contourner complètement l'application, avec les pièges qui font trébucher la plupart des implémentations.
Les types de services au premier plan sur Android en 2026 : choisir celui auquel votre fonctionnalité correspond vraiment
Un guide pratique des restrictions de types de services au premier plan d'Android — dataSync, mediaPlayback, specialUse, shortService — et comment choisir le bon sans se faire tuer ou rejeter.
StateFlow vs SharedFlow dans Jetpack Compose : modéliser l'état UI sans le bug de replay
Quand utiliser StateFlow et quand utiliser SharedFlow dans un ViewModel Compose — et le bug d'événement unique qui apparaît quand on les confond.
Les index de base de données Room en 2026 : trouver la requête réellement lente et la corriger
Un guide pratique pour indexer une base Room/SQLite sur Android — lire EXPLAIN QUERY PLAN, ajouter @Index sans deviner, et les erreurs qui neutralisent un index en silence.
@Relation de Room : interroger des données un-à-plusieurs sur Android sans requêtes N+1
Un guide pratique de l'annotation @Relation de Room — modéliser des données un-à-plusieurs comme des catégories et des entrées sans requêtes N+1 ni jointures manuelles.
Navigation typée dans Jetpack Compose : les routes comme données, pas comme chaînes de caractères
Comment remplacer les routes Compose Navigation basées sur des chaînes par des objets Kotlin sérialisables — arguments typés, graphes imbriqués, et deep links qui survivent à un refactoring.
Android 16 Live Updates : afficher le minuteur de concentration de Mintly sur l'écran de verrouillage
Un guide pratique des notifications centrées sur la progression d'Android 16 — segments ProgressStyle, notifications continues promues, et ce qu'elles apportent à un minuteur Pomodoro actif.
Les canaux de notification Android en 2026 : concevoir des niveaux d'importance que les utilisateurs ne couperont pas
Un guide pratique des canaux de notification Android — niveaux d'importance, groupes de canaux, pourquoi les réglages se figent après création, et comment migrer sans perdre la confiance des utilisateurs.
Paging 3 avec Room : garder une liste de transactions fluide sur Android en 2026
Comment paginer une liste de transactions adossée à Room avec Jetpack Paging 3 pour que des années de données restent fluides dans Compose — pas de RemoteMediator, pas de réseau, juste une base de données locale bien faite.
La migration Android vers les pages mémoire de 16 Ko : ce qui casse vraiment et comment vérifier ton APK
Google exige désormais que les apps Android prennent en charge les pages mémoire de 16 Ko. Voici ce que ça change en pratique, pourquoi les bibliothèques natives sont celles qui cassent, et comment vérifier que la tienne est sûre.
La concurrence structurée sur Android en 2026 : scopes, annulation et les fuites qu'elle évite
Un guide pratique de la concurrence structurée Kotlin sur Android — viewModelScope contre lifecycleScope, pourquoi l'annulation se propage, et les fuites de coroutines qu'elle élimine silencieusement.
La recomposition dans Jetpack Compose : ce qui la déclenche vraiment, et pourquoi j'ai arrêté de deviner
Un guide pratique de la recomposition Jetpack Compose en 2026 — stabilité des types, lambdas instables, clés LazyColumn, et comment lire le rapport de métriques du compilateur.
La recherche plein texte dans Room : ajouter une recherche instantanée à une app Android local-first en 2026
Un guide pratique du support FTS4 de Room sur Android — construire une table virtuelle de recherche, la synchroniser avec des triggers, et pourquoi FTS5 exige une migration manuelle.
Chiffrer une base Room en 2026 : SQLCipher, le Keystore, et migrer sans perdre de données
Un guide pratique pour chiffrer au repos une base Room/SQLite sur Android avec SQLCipher — gestion des clés via le Keystore, migration unique, et le vrai coût en performance.
Sauvegarder des données local-first sur Android en 2026 : export SAF, Auto Backup, et un flux de restauration fiable
Comment les applications Android local-first sauvegardent les données utilisateur sans serveur : export/import SAF, Auto Backup for App Data, et une restauration qui vérifie avant d'écraser.
Tester une application Android local-first en 2026 : Room, Flow et les tests Compose UI qui détectent de vrais bugs
Une stratégie de test pratique pour les applications Android local-first en 2026 — tests DAO Room en mémoire, Turbine pour Flow, et les quelques tests Compose UI qui valent vraiment la peine.
L'authentification biométrique sur Android en 2026 : BiometricPrompt, le Keystore et le verrouillage d'une app local-first
Un guide pratique d'androidx.biometric sur Android — BiometricPrompt, clés adossées à un CryptoObject, repli sur les identifiants de l'appareil, et les erreurs qui font qu'une empreinte digitale ne protège rien.
L'accessibilité sur Android en 2026 : une checklist TalkBack et sémantique Compose qui tient la route
Une checklist pratique d'accessibilité Android pour 2026 — TalkBack, sémantique Compose, zones tactiles et la passe de test que je fais sur chaque écran avant publication.
Health Connect sur Android en 2026 : lire et écrire des données sans renoncer au local-first
Un guide pratique de l'API Health Connect d'Android en 2026 — permissions, lectures en arrière-plan, et pourquoi une app local-first devrait la traiter comme optionnelle, pas comme une vérité absolue.
Edge-to-edge et retour prédictif sur Android en 2026 : ce qui est désormais obligatoire, et comment ne pas casser votre interface
L'edge-to-edge est désormais imposé sur API 35+ et le retour prédictif est le geste par défaut. Un guide pratique sur les insets Compose, WindowInsets et PredictiveBackHandler.
Jetpack DataStore en 2026 : migrer depuis SharedPreferences sans perdre un seul réglage
Un guide pratique pour passer de SharedPreferences à Jetpack DataStore sur Android — les pièges asynchrones, le chemin de migration qui préserve les valeurs existantes, et comment le tester.
Le scan de codes-barres avec ML Kit sur Android en 2026 : comment Stocky ajoute un article au garde-manger en moins d'une seconde
Un guide pratique 2026 du scan de codes-barres sur l'appareil avec ML Kit et CameraX : réglage des formats, recherche produit hors ligne, et le calcul d'usage partiel d'une app de garde-manger.
Les migrations de base de données Room en 2026 : faire évoluer un schéma sans perdre une seule ligne
Un guide pratique des migrations de base de données Room sur Android — AutoMigration, objets Migration écrits à la main, et comment tester une migration avant que vos utilisateurs ne trouvent le bug.
Baseline Profiles sur Android : ce qui change vraiment votre temps de démarrage à froid en 2026
Un guide pratique des Baseline Profiles Android — les générer avec Macrobenchmark, les brancher dans Gradle, mesurer le vrai gain, et les trois autres leviers du démarrage à froid.
Jetpack Glance en 2026 : construire un widget d'écran d'accueil qui ne ment jamais sur vos données
Un guide pratique des widgets Jetpack Glance sur Android — état, actions de clic, et le piège du quota de mise à jour qui affiche des données périmées.
Construire le calendrier d'observance d'OldSchool : transformer des prises en un jour fiable
Un calendrier d'observance mensuel ressemble à un simple point coloré par jour. Voici le modèle d'événements, les règles de statut journalier et le calcul de ponctualité, sur l'appareil.
Construire Subly : les calculs de calendrier derrière les dates de renouvellement d'abonnement
Prédire la prochaine date de prélèvement d'un abonnement semble trivial jusqu'à ce qu'on tombe sur la facturation en fin de mois, les années bissextiles et les conversions d'essai. Voici comment Subly y arrive, sur l'appareil.
Construire Mintly : garder un minuteur de focus précis quand Android veut tuer le processus
Un minuteur Pomodoro en cours d'exécution pose un problème de fiabilité plus difficile qu'un simple rappel ponctuel. Voici comment Mintly survit au mode Doze, à la mort du processus et à la dérive écran éteint grâce à un service au premier plan et une heure de fin en temps réel.
Construire Granyn : un suivi de budget sans connexion bancaire, en trois tables
Comment Granyn suit les dépenses dans plusieurs devises et détecte les factures récurrentes sans lier le moindre compte bancaire — le schéma Room derrière tout ça, et les compromis qu'il impose.
Bien faire les actions de notification Android : marquer une dose comme prise sans ouvrir l'application
Un guide pratique des boutons d'action de notification Android — PendingIntent, la restriction du trampoline d'activité, goAsync() et la mise à jour sûre de l'état Room.
Construire Stocky : prédire ce qui va manquer dans votre cuisine — sur l'appareil lui-même
Comment Stocky transforme un scan de code-barres et un peu d'historique d'utilisation en une liste de courses qui apparaît avant que vous ne tombiez à court — avec tous les calculs, et toutes les données, qui restent sur votre téléphone.
OCR respectueux de la vie privée sur Android : comment Subly lit les factures sans le cloud
Un guide pratique 2026 de l'OCR sur l'appareil sous Android avec ML Kit Text Recognition — la configuration, le code et les astuces d'extraction de champs qui gardent les données utilisateur hors de vos serveurs.
Des rappels Android fiables en 2026 : WorkManager, alarmes exactes et les nouvelles règles de batterie
Comment publier en 2026 des rappels Android qui se déclenchent vraiment — WorkManager vs AlarmManager, SCHEDULE_EXACT_ALARM, POST_NOTIFICATIONS et les bizarreries des constructeurs qui piègent encore.
Android local-first en 2026 : SQLite, Room et garder les données de l'utilisateur sur l'appareil
Un guide 2026 pour construire des applications Android local-first avec Room et SQLite — conception du schéma, migrations, WAL, exports, et quand (et quand ne pas) ajouter la synchronisation.
Comment je publie des applis Android en solo en 2026
Un vrai guide de lancement de bout en bout pour publier seul une appli Android en Kotlin + Compose en 2026 — cadrage, développement, fiche Play Store et les détails ennuyeux qui décident si vous publiez un jour.