我的代码使用或覆盖了已弃用的 API

My code uses or overrides a deprecated API

我有一个代码可以 运行 用于一个版本,但对于最新的版本。 Android 工作室写道: “使用或覆盖已弃用的 API。使用 -Xlint:deprecation 重新编译以获取详细信息。”

我的代码是:

 Notification.Builder builder = new Notification.Builder(this);
        builder.setContentTitle("Words reminder");
        builder.setContentText("It's time to try yourself!");
        builder.setSmallIcon(R.drawable.ic_stat_name);
        builder.setAutoCancel(true);
        builder.setPriority(Notification.PRIORITY_HIGH);
        //builder.build().flags |= Notification.FLAG_AUTO_CANCEL;
        Uri alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
        builder.setSound(alarmSound);

        Intent notifyIntent = new Intent(this, RightOrNot.class);
        notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | 
        Intent.FLAG_ACTIVITY_CLEAR_TASK);
        PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notifyIntent, 0);

        builder.setContentIntent(pendingIntent);
        Notification notificationCompat = builder.build();
        NotificationManagerCompat managerCompat = NotificationManagerCompat.from(this);
        managerCompat.notify(NOTIFICATION_ID, notificationCompat);

我认为问题出在第一行:

Notification.Builder builder = new Notification.Builder(this);

您知道我该如何修复该行或使用适用于所有版本的不同内容吗?

根据 android 开发者文档,public Builder(Context context) 已弃用,您应该尝试使用 public Builder(Context context, String channelID)。您需要使用通知渠道。按照步骤 here.