6
votes

erreur: impossible de trouver la classe de symboles MediaStyle après la migration vers androidx

android.support.v4.media.app.NotificationCompat.MediaStyle () fonctionnait bien dans une application de lecteur de musique, mais après la migration vers Android x, j'obtiens cette erreur: impossible de trouver la classe de symboles MediaStyle. Toute aide serait appréciée merci.


0 commentaires

4 Réponses :


22
votes

Dans AndroidX, ce style spécifique se trouve dans un package différent. Vous devez ajouter au début du style multimédia "androidx.media.app".

En d'autres termes:

builder.setStyle(new androidx.media.app.NotificationCompat.MediaStyle());

Curieusement, je n'avais pas besoin d'implémenter ce package dans mon fichier gradle, il pourrait donc s'agir de quelque chose lié aux dépendances internes d'AndroidX.


0 commentaires

1
votes

Comme vous avez migré vers androidX, vous devez utiliser une importation équivalente pour les classes au lieu d'utiliser d'anciennes classes de bibliothèque de support.

Ainsi, remplacez android.support.v4.media.app.NotificationCompat avec cette classe androidX androidx.media.app.NotificationCompat . Vous pouvez consulter le guide de migration plus loin d'ici https://developer.android.com/jetpack/androidx/ migrer


0 commentaires

9
votes

pour mon cas, je dois ajouter ce qui suit à mon fichier gradle pour trouver la classe NotificationCompat.MediaStyle ().

NotificationCompat.Builder(this, CHANNEL_ID)
.setStyle(new androidx.media.app.NotificationCompat.MediaStyle());

https://developer.android.com/ jetpack / androidx / releases / media

implementation "androidx.media:media:1.1.0"

notez que notificationCompat.Builder est dans un package différent (androidx.core.app.NotificationCompat) de MediaStyle. p>


0 commentaires

2
votes

Migrez android.support.v4.media.app.NotificationCompat vers androidx.core.app.NotificationCompat

Cela ressemble à la même réponse donnée par @karan ci-dessus. Mais les classes sont différentes. Il m'a fallu des jours pour comprendre que androidx.media.app.NotificationCompat était mon problème.

La différence entre les deux; l'un est androidx.core ... , l'autre est androidx.media...


1 commentaires

Oui, je rencontre l'erreur même, tu as raison, Karan a tort.