Menu

Notification app ne fonctionne plus [Résolu]

Messages postés
164
Date d'inscription
mardi 13 octobre 2009
Dernière intervention
9 novembre 2018
-
Bonjour,
j'ai créé une application qui sert à envoyer des notification vers le système.. elle a fonctionné bien dans mon téléphone samsung j5 prime. Hier mon téléphone a migré vers Android 8.0 alors que mon application ne fonctionne plus ainsi que mon icon de l'application personnalisé n'est plus aussi ( l'icon par défaut l'a remplacé)

Est ce que c'est normale???

j'ai ajouté avant la ligne implementation "me.leolin:ShortcutBadger:1.1.22@aar"
ainsi j'ai ajouté ces ligne après dependencies
repositories {
mavenCentral()
}
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.media.RingtoneManager;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import me.leolin.shortcutbadger.ShortcutBadger;

public class TutoNotificationHomeActivity extends Activity {
    private Button addNotificationBtn;
    private Button deleteNotificationBtn;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_tuto_notification_home);
        addNotificationBtn = (Button) findViewById(R.id.add_notification);
        txtResult = (TextView) findViewById(R.id.txtResult);
        addNotificationBtn.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                Toast.makeText(getBaseContext(), "Ajout d'une notification", 2).show();
                createNotification();
            }
        });
        deleteNotificationBtn = (Button) findViewById(R.id.delete_notification);
        deleteNotificationBtn.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                Toast.makeText(getBaseContext(), "Suppression d'une notification", 2).show();
                deleteNotification();
            }
        });
    }

    private final void createNotification() {
        final NotificationManager mNotification = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
        final Intent launchNotifiactionIntent = new Intent(this, TutoNotificationHomeActivity.class);
        final PendingIntent pendingIntent = PendingIntent.getActivity(this,
                1, launchNotifiactionIntent,
                PendingIntent.FLAG_ONE_SHOT);
        Uri soundUri = RingtoneManager.getDefaultUri(RingtoneManager.URI_COLUMN_INDEX);
        Notification.Builder builder = new Notification.Builder(this)
                .setWhen(System.currentTimeMillis())
                .setTicker("New notification")
                .setSmallIcon(R.drawable.notification)
                .setContentTitle("This is a title")
                .setContentText("This is the a text")
                .setContentIntent(pendingIntent)
                .setSound(soundUri);
        mNotification.notify(1, builder.build());
        int badgeCount = 1;
        ShortcutBadger.applyCount(TutoNotificationHomeActivity.this, badgeCount);
    }

    private void deleteNotification() {
        final NotificationManager notificationManager = (NotificationManager)    getSystemService(NOTIFICATION_SERVICE);
        notificationManager.cancel(1);
        ShortcutBadger.applyCount(TutoNotificationHomeActivity.this,0); 
    }
}



Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
14384
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
12 février 2019
1239
1
Merci
Hello,

Rien de bizarre là dedans.
Si je regarde la doc de NotificationBuilder je vois que le constructeur que tu utilises est déprécié depuis l'api 26, c'est-à-dire Android Oreo. Il te faut indiquer un
channelId
pour les versions supérieures

@+ 
Buno, Modo CS-CCM 
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai... 
The urgent is done, the impossible is underway. For miracles, provide for a delay...

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 57975 internautes nous ont dit merci ce mois-ci

Commenter la réponse de BunoCS
Messages postés
164
Date d'inscription
mardi 13 octobre 2009
Dernière intervention
9 novembre 2018
1
0
Merci
J'ai encore testé mon application dans un autre téléphone samsung grand prime Android 6 mais tous fonctionne bien!!! c'est bizarre!!!???
Commenter la réponse de Joker_
Messages postés
164
Date d'inscription
mardi 13 octobre 2009
Dernière intervention
9 novembre 2018
1
0
Merci
merci bien pour la réponse BunoCs!!
alors je dois utiliser le constructeur public Notification.Builder (Context context, String channelId)


comment je dois initialiser channellId ????
a travers NotificationChannel ??
je suis nouveau en développement android svp me donner l'aide!!
BunoCS
Messages postés
14384
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
12 février 2019
1239 -
Joker_
Messages postés
164
Date d'inscription
mardi 13 octobre 2009
Dernière intervention
9 novembre 2018
1 -
Merciiii c'est résolut
Commenter la réponse de Joker_