Que utiliser à la place de Handler() obsolète dans Kotlin/Android ?
Bonjour à tous ! Je suis débutant en développement Android avec Kotlin et j'ai rencontré un problème. Avant, j'utilisais `Handler()` pour exécuter des tâches avec un délai ou pour basculer sur le thread principal depuis un thread d'arrière-plan. Par exemple, j'avais ce code :
```kotlin
val handler = Handler()
handler.postDelayed({
// du code après 2 secondes
}, 2000)
```
Mais récemment, j'ai mis à jour le SDK, et maintenant l'IDE souligne `Handler()` en rouge — il indique que le constructeur est obsolète (deprecated). Dans la documentation, il est dit d'utiliser `Looper.getMainLooper()`, mais je ne comprends pas complètement comment le faire correctement.
J'ai aussi entendu parler de `HandlerThread` et `Coroutines`, mais je ne sais pas ce qui est le mieux pour des tâches simples comme un délai avant la mise à jour de l'UI. Pouvez-vous expliquer comment écrire correctement le code qui se faisait avant avec `Handler()` ? Idéalement avec des exemples en Kotlin, pour que ce soit clair pour un débutant.
Merci d'avance !
<<>>
Pourquoi Handler() est obsolète et que faut-il utiliser maintenant ?
Dans Android 11 (API 30), le constructeur
No answers yet.
Connectez-vous pour laisser une réponse