diff --git a/daemon/src/main/java/org/lsposed/lspd/service/LSPManagerService.java b/daemon/src/main/java/org/lsposed/lspd/service/LSPManagerService.java index 4b1b7716..988854a7 100644 --- a/daemon/src/main/java/org/lsposed/lspd/service/LSPManagerService.java +++ b/daemon/src/main/java/org/lsposed/lspd/service/LSPManagerService.java @@ -309,7 +309,11 @@ public class LSPManagerService extends ILSPManagerService.Stub { var idValue = notificationIds.get(idKey); if (idValue == null) return; var im = INotificationManager.Stub.asInterface(android.os.ServiceManager.getService("notification")); - im.cancelNotificationWithTag("android", "android", modulePackageName, idValue, 0); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + im.cancelNotificationWithTag("android", "android", modulePackageName, idValue, 0); + } else { + im.cancelNotificationWithTag("android", modulePackageName, idValue, 0); + } // Remove the notification id when the notification is canceled or current module app was uninstalled notificationIds.remove(idKey); } catch (Throwable e) { diff --git a/hiddenapi/stubs/src/main/java/android/app/INotificationManager.java b/hiddenapi/stubs/src/main/java/android/app/INotificationManager.java index 191b0b4c..e65fc206 100644 --- a/hiddenapi/stubs/src/main/java/android/app/INotificationManager.java +++ b/hiddenapi/stubs/src/main/java/android/app/INotificationManager.java @@ -6,10 +6,17 @@ import android.os.IBinder; import android.os.IInterface; import android.os.RemoteException; +import androidx.annotation.RequiresApi; + public interface INotificationManager extends IInterface { void enqueueNotificationWithTag(String pkg, String opPkg, String tag, int id, Notification notification, int userId) throws RemoteException; + + void cancelNotificationWithTag(String pkg, String tag, int id, int userId) throws RemoteException; + + @RequiresApi(30) void cancelNotificationWithTag(String pkg, String opPkg, String tag, int id, int userId) throws RemoteException; + void createNotificationChannels(String pkg, ParceledListSlice channelsList) throws RemoteException; abstract class Stub extends Binder implements INotificationManager {