web-dev-qa-db-fra.com

Comment importer la classe Android.support.v7.app.NotificationCompat.Builder dans Android Studio

J'essaie d'implémenter des notifications simples dans mon Android. J'en parle guide du développeur

Mais obtenir ce message d'erreur:

Incompatible types.
Required: Android.support.v7app.NotificationCompat.Builder
Found: Android.support.v4.app.Notification.Compat.Builder

Capture d'écran du message d'erreur

Pour l'extrait de code suivant:

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
                        .setSmallIcon(R.drawable.ic_launcher)
                        .setContentTitle("My notification")
                        .setContentText("Hello World!");

Voici mes importations:

import Android.content.Intent;
import Android.support.v7.app.AppCompatActivity;
import Android.os.Bundle;
import Android.support.v7.app.NotificationCompat;
import Android.view.View;
import Android.widget.Button;

Je pense que la bonne classe NotificationCompat est importée. J'utilise Android Studio v2.1.2 Pour le developpement. Veuillez m'aider avec ce message d'erreur. Je suis nouveau dans la programmation Android et Java.

27
Kuldeep Kumar

Le type de retour de ces méthodes de générateur renvoie la version v4 de NotificationCompat.Builder. Le v7 NotificationCompat.Builder étend la version v4 et hérite largement des méthodes, ce qui signifie que les types de retour ne changent pas.

Documentation:

Si vous avez besoin de la version v7 (pour la prise en charge de NotificationCompat.MediaStyle), il vous suffit de le diffuser.

NotificationCompat.Builder mBuilder = (Android.support.v7.app.NotificationCompat.Builder) new NotificationCompat.Builder(this)
                    .setSmallIcon(R.drawable.ic_launcher)
                    .setContentTitle("My notification")
                    .setContentText("Hello World!");

Sinon, échangez vos importations pour utiliser la version v4.

29
Mephoros

Remplacer

 import Android.support.v7.app.NotificationCompat;

avec

 import Android.support.v4.app.NotificationCompat;
40
Drv