Уведомление Android отображается, но не появляется на экране - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь использовать уведомления в Android.Проблема, с которой я сталкиваюсь, состоит в том, что уведомление выглядит следующим образом (черное в левом верхнем углу): enter image description here

Я хочу, чтобы оно всплывало так же, как всплывающее уведомление WhatsAppвверх.Что я должен делать.В настоящее время я использую следующий код:

public void displayNotification(String title,String body) {
    Intent intent = new Intent(context, ViewEventsActivity.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    TaskStackBuilder taskStackBuilder = TaskStackBuilder.create(context);
    taskStackBuilder.addNextIntentWithParentStack(intent);

    PendingIntent pendingIntent = taskStackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);

    Bitmap icon = BitmapFactory.decodeResource(context.getResources(), R.drawable.logo);

    Uri defaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
    NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context,Utils.CHANNEL_ID)
            .setSmallIcon(R.drawable.logo)
            .setLargeIcon(icon)
            .setContentTitle("SRC:"+title)
            .setContentText(body)
            .setAutoCancel(true)
            .setSound(defaultSoundUri)
            .setContentIntent(pendingIntent)
            .setAutoCancel(true)
            .setCategory(NotificationCompat.CATEGORY_ALARM);

    NotificationManager notificationManager =
            (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);

    if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.O) {
        NotificationChannel notificationChannel=new NotificationChannel(CHANNEL_ID,CHANNEL_NAME,NotificationManager.IMPORTANCE_DEFAULT);

        notificationChannel.setDescription(CHANNEL_DESC);
        notificationChannel.enableLights(true);
        notificationChannel.setLightColor(Color.RED);
        notificationChannel.enableVibration(true);
        notificationChannel.setVibrationPattern(new long[]{100,200,300,400,500,400,300,200,400});
        notificationManager.createNotificationChannel(notificationChannel);
    }

    notificationManager.notify(0 /* ID of notification */, notificationBuilder.build());
}

Как выполнить желаемое задание?

...