要实现 Android Chrome 的通知在托盘中显示,但不会产生横幅提醒,可以使用以下代码示例:
import android.app.Notification;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.content.Context;
import android.os.Build;
import androidx.core.app.NotificationCompat;
public class NotificationUtils {
private static final String CHANNEL_ID = "channel_id";
private static final String CHANNEL_NAME = "channel_name";
public static void showNotification(Context context, String title, String message) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(context, CHANNEL_ID)
.setSmallIcon(R.drawable.notification_icon)
.setContentTitle(title)
.setContentText(message)
.setPriority(NotificationCompat.PRIORITY_DEFAULT);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
NotificationChannel channel = new NotificationChannel(CHANNEL_ID, CHANNEL_NAME, NotificationManager.IMPORTANCE_DEFAULT);
NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
notificationManager.createNotificationChannel(channel);
}
NotificationManagerCompat notificationManager = NotificationManagerCompat.from(context);
notificationManager.notify(1, builder.build());
}
}
在上面的代码中,我们创建了一个名为 NotificationUtils
的工具类。showNotification
方法用于显示通知。如果设备的 Android 版本大于等于 Android O(26),我们还需要创建一个通知渠道。
为了在托盘中显示通知,我们使用了 NotificationCompat.Builder
类来构建通知。我们设置了通知的标题、内容和优先级。在 Android O 及以上版本,我们还创建了一个通知渠道,并将通知与该渠道关联。
要使用这个工具类显示通知,可以调用以下代码:
NotificationUtils.showNotification(context, "标题", "内容");
请确保将 context
替换为您的上下文对象,并将标题和内容替换为您实际的通知标题和内容。