Android SDK 26及以上的通知使用了一些新的API,不支持26以下的设备。但是,可以使用兼容性库来解决这个问题。使用兼容性库可以让你的应用程序在所有Android设备上运行,并提供相同的用户体验。
以下是使用兼容性库的示例代码:
1.导入兼容性库:
implementation 'com.android.support:support-compat:26.+'
2.添加以下代码来创建通知:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
NotificationChannel channel = new NotificationChannel(channelId,
channelName, NotificationManager.IMPORTANCE_HIGH);
channel.setDescription(channelDescription);
notificationManager.createNotificationChannel(channel);
}
NotificationCompat.Builder builder =
new NotificationCompat.Builder(this, channelId)
.setSmallIcon(R.drawable.notification_icon)
.setContentTitle(notificationTitle)
.setContentText(notificationText)
.setPriority(NotificationCompat.PRIORITY_HIGH);
此代码将在Android设备上使用通知兼容性库来创建通知。如果设备使用的是Android 8.0或更高版本,那么通知将使用通道,否则通知将在后台使用默认行为。