当前位置: 首页 > 面试题库 >

如何显示抬头通知Android

胡星汉
2023-03-14
问题内容

如何获取提示通知。使用以下代码,我只能在状态栏上看到三个点,在通知栏上看到一个通知。

Intent intent = new Intent(this, MainActivity.class);

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 , intent,PendingIntent.FLAG_ONE_SHOT);
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.bip);
Uri defaultSoundUri=RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
                .setSmallIcon(R.drawable.bip)
                .setContentTitle("Temp")
                .setPriority(NotificationCompat.PRIORITY_HIGH)
                .setContentText(message)
                .setAutoCancel(true)
                .setSound(defaultSoundUri)
                .setContentIntent(pendingIntent);

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

notificationManager.notify(0, notificationBuilder.build());

问题答案:

我遇到了同样的问题,但我使用的是较新的NotificationCompat.Builder()呼叫,该呼叫需要来自的频道ID
NotificationChannel

如果NotificationChannel创建的通知的重要性值为,则该通知将仅作为抬头通知出现NotificationManager.IMPORTANCE_HIGH

NotificationChannel channel = new NotificationChannel("channel01", "name", 
     NotificationManager.IMPORTANCE_HIGH);   // for heads-up notifications
channel.setDescription("description");

// Register channel with system
NotificationManager notificationManager = getSystemService(NotificationManager.class);
notificationManager.createNotificationChannel(channel);

显示抬头通知:

Notification notification = new NotificationCompat.Builder(this, "channel01")
        .setSmallIcon(android.R.drawable.ic_dialog_info)
        .setContentTitle("Test")
        .setContentText("You see me!")
        .setDefaults(Notification.DEFAULT_ALL)
        .setPriority(NotificationCompat.PRIORITY_HIGH)   // heads-up
        .build();

NotificationManagerCompat notificationManager = NotificationManagerCompat.from(this);
notificationManager.notify(0, notification);


 类似资料:
  • 我想模拟Gmail关于通知栏通知的应用程序行为,它符合推荐的Android模式:http://developer.Android.com/design/patterns/notifications.html 即特定于单个邮件的通知,点击该通知将显示该特定电子邮件的屏幕。如果我通过刷清或使用“清除所有”清除通知,那么当我得到一个新消息时,我将得到另一个消息特定的通知。但如果我没有清除它,而我又收到另

  • 问题内容: 我正在将推送通知从FCM发送到Android设备,这是通过将POST消息发送到包含JSON正文的FCM来完成的。 如果我发送相同的JSON正文两次,则Android设备将显示两个通知(或三个或四个,…)。但我只想显示一个。 “ collapse_key”应该可以解决这个问题,对吧?(FCM文档) 但是,它应该插入哪里或如何插入? 当前JSON正文: 我已经尝试了多种方式来包含“ col

  • 问题内容: 如何在Android的通知栏中显示简单的通知?请帮助我提供最简单的解决方案。 问题答案: 我假设您是在Notificationbar中询问通知。如果是这样,请尝试以下代码,

  • 请求地址 https://api.es.xiaojukeji.com/river/Invoice/getTitleList 返回数据格式 JSON HTTP请求方式 GET 是否需要登录 是 关于登录授权,参见 如何登录授权 访问授权限制 暂无 请求参数 名称 类型 必选 描述 client_id string yes 申请应用时分配的AppKey access_token string yes

  • 我正在创建一个应用程序,显示未来日期的通知。为了在将来显示通知,我使用了AlarmManager。 在我的一个活动中单击按钮,我会创建如下通知 以下是我的BootService类代码: 在测试应用程序时,我看到通知显示,问题是特定于启动手机。在上面的代码中,我通过调用LoadAlarmsFromDatabase来重新创建通知 为了处理启动时重新创建警报,我使用了BroadcastRecaver 公

  • 我的应用程序生成了一个通知,但我为该通知设置的图标没有显示。取而代之的是一个白色的方块。 我试过调整图标的png大小(尺寸720x720,66x66,44x44,22x22)。奇怪的是,当使用较小的尺寸时,白色的正方形更小。 我搜索了这个问题,以及生成通知的正确方法,从我读到的代码来看,应该是正确的。不幸的是,事情并不像他们应该的那样。