我已经设置了接收通知的代码,但它不起作用:
String ns = Context.NOTIFICATION_SERVICE;
NotificationManager notificationManager = (NotificationManager) getSystemService(ns);
int icon = R.drawable.messages_received;
CharSequence contentTitle = "TITLE";
Intent notificationIntent = new Intent(this, MainActivity.class);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
Context context = getApplicationContext();
NotificationCompat.Builder builder = new NotificationCompat.Builder(context);
Notification notification = builder
.setContentIntent(contentIntent)
.setSmallIcon(icon)
.setWhen( System.currentTimeMillis())
.setContentTitle(contentTitle)
.setContentText(message.getMessage())
.build();
notification.flags |= Notification.FLAG_AUTO_CANCEL;
notification.defaults |= Notification.DEFAULT_SOUND;
notification.defaults |= Notification.DEFAULT_VIBRATE;
notification.defaults |= Notification.DEFAULT_LIGHTS;
final int NOTIFY = 1;
notificationManager.notify(NOTIFY, notification);
我用它在我的主要活动,我尝试了它,因为电话是待机。我该怎么解决?它需要其他代码吗?我遵循了以下指南:http://www.dre.vanderbilt.edu/~schmidt/android/android-4.0/out/target/common/docs/doc-comment-check/guide/topics/ui/notifiers/notifications.html
谢谢
public static final String CHANNEL_ID = "com.example.test.services";
public static final String CHANNEL_NAME = "UploadBackgroundService";
public static final int FOREGROUND_ID = 1339;
private void createAndShowForegroundNotification() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
NotificationChannel chan = new NotificationChannel(CHANNEL_ID, CHANNEL_NAME, NotificationManager.IMPORTANCE_NONE);
chan.setLockscreenVisibility(Notification.VISIBILITY_PRIVATE);
manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
assert manager != null;
manager.createNotificationChannel(chan);
notificationBuilder = new NotificationCompat.Builder(this, CHANNEL_ID);
Notification notification = notificationBuilder
.setContentTitle("Image upload service")
.setContentText("Uploading Images...")
.setPriority(NotificationManager.IMPORTANCE_HIGH)
.setCategory(Notification.CATEGORY_SERVICE)
.setOngoing(true)
.setSmallIcon(R.drawable.logoo)
.setAutoCancel(false)
.build();
startForeground(FOREGROUND_ID, notification);
} else {
notificationBuilder = new NotificationCompat.Builder(this,CHANNEL_ID )
.setDefaults(Notification.DEFAULT_ALL)
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setContentTitle("Image upload service")
.setContentText("Uploading Images...")
.setOngoing(true)
.setSmallIcon(R.drawable.logoo)
.setAutoCancel(false);
Notification notification = notificationBuilder.build();
startForeground(FOREGROUND_ID, notification);
}
}
请尝试此代码。用您自己的参数替换所需的参数。
我正在使用Firebase云消息为Android做推送通知,一切都很顺利,但我在想系统托盘的图标颜色是怎么回事。它正在被变成一个灰度图像,而不是保持它原来的颜色。我可以用方法为它着色,但我希望图标不会失去它的颜色,这可能吗?我已经尝试使用各种不同的图像,有自己的大小,透明/非透明,白色背景等,基于一些帖子,我可以找到。我似乎找不到关于这里实际发生的事情的答案。我的编译/目标sdk目前是26。我在模
将图标和上下文菜单添加到系统托盘。 进程: 主进程 Tray是一个[EventEmitter][event-emitter]. 1 const {app, Menu, Tray} = require('electron') 2 let tray = null 3 app.on('ready', () => { 4 tray = new Tray('/path/to/my/icon') 5 con
系统托盘 添加图标和上下文菜单到系统通知区 进程:主进程 Tray 是一个 EventEmitter. const { app, Menu, Tray } = require('electron') let tray = null app.on('ready', () => { tray = new Tray('/path/to/my/icon') const contextMenu =
我在Android上尝试了以下内容: 从Firebase控制台发送通知:只有当应用程序位于后台时,我才能在系统托盘中看到通知。 将post请求发送到(如本文所述),同时使用和Paylods:同样,我只能在应用程序位于后台时在系统托盘中看到通知。 该文件提到: 我用的是Android和Cordova/Ionic。
在onMessageReceived方法中,我将一些数据保存在本地数据库中。 如果我点击通知时应用程序在后台,它会将我重定向到launcher活动。在这里,我正在处理来自包的传入数据,并将其保存在本地数据库中。
系统托盘是应用程序窗口之外的菜单。 在MacOS和Ubuntu上,它位于屏幕的右上角。 在Windows上,它位于右下角。 我们可以使用Electron为系统托盘中的应用程序创建菜单。 创建一个新的main.js文件并将以下代码添加到其中。 准备好png文件用于系统托盘图标。 const {app, BrowserWindow} = require('electron') const url =