猿问

如何使用NotificationCompat.Builder创建通知?

我需要创建一个简单的通知,如果可能的话,它会与声音和图标一起显示在通知栏中?我还需要它与Android 2.2兼容,因此我发现NotificationCompat.Builder可与4以上的所有API一起使用。如果有更好的解决方案,请随时提及。



小怪兽爱吃肉
浏览 806回答 3
3回答

汪汪一只猫

工作示例:    Intent intent = new Intent(ctx, HomeActivity.class);    PendingIntent contentIntent = PendingIntent.getActivity(ctx, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);    NotificationCompat.Builder b = new NotificationCompat.Builder(ctx);    b.setAutoCancel(true)     .setDefaults(Notification.DEFAULT_ALL)     .setWhen(System.currentTimeMillis())              .setSmallIcon(R.drawable.ic_launcher)     .setTicker("Hearty365")                 .setContentTitle("Default notification")     .setContentText("Lorem ipsum dolor sit amet, consectetur adipiscing elit.")     .setDefaults(Notification.DEFAULT_LIGHTS| Notification.DEFAULT_SOUND)     .setContentIntent(contentIntent)     .setContentInfo("Info");    NotificationManager notificationManager = (NotificationManager) ctx.getSystemService(Context.NOTIFICATION_SERVICE);    notificationManager.notify(1, b.build());

潇湘沐

我做这种方法,并正常工作。(在android 6.0.1中测试)public void notifyThis(String title, String message) {    NotificationCompat.Builder b = new NotificationCompat.Builder(this.context);    b.setAutoCancel(true)            .setDefaults(NotificationCompat.DEFAULT_ALL)            .setWhen(System.currentTimeMillis())            .setSmallIcon(R.drawable.favicon32)            .setTicker("{your tiny message}")            .setContentTitle(title)            .setContentText(message)            .setContentInfo("INFO");    NotificationManager nm = (NotificationManager) this.context.getSystemService(Context.NOTIFICATION_SERVICE);    nm.notify(1, b.build());}
随时随地看视频慕课网APP

相关分类

Android
我要回答