Loading core/api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -7024,6 +7024,7 @@ package android.app { method public void deleteNotificationChannelGroup(String); method public android.service.notification.StatusBarNotification[] getActiveNotifications(); method public android.app.AutomaticZenRule getAutomaticZenRule(String); method @FlaggedApi("android.app.modes_api") public int getAutomaticZenRuleState(@NonNull String); method public java.util.Map<java.lang.String,android.app.AutomaticZenRule> getAutomaticZenRules(); method public int getBubblePreference(); method @NonNull public android.app.NotificationManager.Policy getConsolidatedNotificationPolicy(); core/java/android/app/INotificationManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -225,6 +225,7 @@ interface INotificationManager boolean removeAutomaticZenRule(String id, boolean fromUser); boolean removeAutomaticZenRules(String packageName, boolean fromUser); int getRuleInstanceCount(in ComponentName owner); int getAutomaticZenRuleState(String id); void setAutomaticZenRuleState(String id, in Condition condition); byte[] getBackupPayload(int user); Loading core/java/android/app/NotificationManager.java +20 −0 Original line number Diff line number Diff line Loading @@ -1405,6 +1405,26 @@ public class NotificationManager { } } /** * Returns the current activation state of an {@link AutomaticZenRule}. * * <p>Returns {@link Condition#STATE_UNKNOWN} if the rule does not exist or the calling * package doesn't have access to it. * * @param id The id of the rule * @return the state of the rule. */ @FlaggedApi(Flags.FLAG_MODES_API) @Condition.State public int getAutomaticZenRuleState(@NonNull String id) { INotificationManager service = getService(); try { return service.getAutomaticZenRuleState(id); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } } /** * Informs the notification manager that the state of an {@link AutomaticZenRule} has changed. * Use this method to put the system into Do Not Disturb mode or request that it exits Do Not Loading services/core/java/com/android/server/notification/NotificationManagerService.java +8 −0 Original line number Diff line number Diff line Loading @@ -5719,6 +5719,14 @@ public class NotificationManagerService extends SystemService { return mZenModeHelper.getCurrentInstanceCount(owner); } @Override @Condition.State public int getAutomaticZenRuleState(@NonNull String id) { Objects.requireNonNull(id, "id is null"); enforcePolicyAccess(Binder.getCallingUid(), "getAutomaticZenRuleState"); return mZenModeHelper.getAutomaticZenRuleState(id); } @Override public void setAutomaticZenRuleState(String id, Condition condition) { Objects.requireNonNull(id, "id is null"); Loading services/core/java/com/android/server/notification/ZenModeHelper.java +14 −0 Original line number Diff line number Diff line Loading @@ -856,6 +856,20 @@ public class ZenModeHelper { } } @Condition.State int getAutomaticZenRuleState(String id) { synchronized (mConfigLock) { if (mConfig == null) { return Condition.STATE_UNKNOWN; } ZenRule rule = mConfig.automaticRules.get(id); if (rule == null || !canManageAutomaticZenRule(rule)) { return Condition.STATE_UNKNOWN; } return rule.condition != null ? rule.condition.state : Condition.STATE_FALSE; } } void setAutomaticZenRuleState(String id, Condition condition, @ConfigChangeOrigin int origin, int callingUid) { requirePublicOrigin("setAutomaticZenRuleState", origin); Loading Loading
core/api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -7024,6 +7024,7 @@ package android.app { method public void deleteNotificationChannelGroup(String); method public android.service.notification.StatusBarNotification[] getActiveNotifications(); method public android.app.AutomaticZenRule getAutomaticZenRule(String); method @FlaggedApi("android.app.modes_api") public int getAutomaticZenRuleState(@NonNull String); method public java.util.Map<java.lang.String,android.app.AutomaticZenRule> getAutomaticZenRules(); method public int getBubblePreference(); method @NonNull public android.app.NotificationManager.Policy getConsolidatedNotificationPolicy();
core/java/android/app/INotificationManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -225,6 +225,7 @@ interface INotificationManager boolean removeAutomaticZenRule(String id, boolean fromUser); boolean removeAutomaticZenRules(String packageName, boolean fromUser); int getRuleInstanceCount(in ComponentName owner); int getAutomaticZenRuleState(String id); void setAutomaticZenRuleState(String id, in Condition condition); byte[] getBackupPayload(int user); Loading
core/java/android/app/NotificationManager.java +20 −0 Original line number Diff line number Diff line Loading @@ -1405,6 +1405,26 @@ public class NotificationManager { } } /** * Returns the current activation state of an {@link AutomaticZenRule}. * * <p>Returns {@link Condition#STATE_UNKNOWN} if the rule does not exist or the calling * package doesn't have access to it. * * @param id The id of the rule * @return the state of the rule. */ @FlaggedApi(Flags.FLAG_MODES_API) @Condition.State public int getAutomaticZenRuleState(@NonNull String id) { INotificationManager service = getService(); try { return service.getAutomaticZenRuleState(id); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } } /** * Informs the notification manager that the state of an {@link AutomaticZenRule} has changed. * Use this method to put the system into Do Not Disturb mode or request that it exits Do Not Loading
services/core/java/com/android/server/notification/NotificationManagerService.java +8 −0 Original line number Diff line number Diff line Loading @@ -5719,6 +5719,14 @@ public class NotificationManagerService extends SystemService { return mZenModeHelper.getCurrentInstanceCount(owner); } @Override @Condition.State public int getAutomaticZenRuleState(@NonNull String id) { Objects.requireNonNull(id, "id is null"); enforcePolicyAccess(Binder.getCallingUid(), "getAutomaticZenRuleState"); return mZenModeHelper.getAutomaticZenRuleState(id); } @Override public void setAutomaticZenRuleState(String id, Condition condition) { Objects.requireNonNull(id, "id is null"); Loading
services/core/java/com/android/server/notification/ZenModeHelper.java +14 −0 Original line number Diff line number Diff line Loading @@ -856,6 +856,20 @@ public class ZenModeHelper { } } @Condition.State int getAutomaticZenRuleState(String id) { synchronized (mConfigLock) { if (mConfig == null) { return Condition.STATE_UNKNOWN; } ZenRule rule = mConfig.automaticRules.get(id); if (rule == null || !canManageAutomaticZenRule(rule)) { return Condition.STATE_UNKNOWN; } return rule.condition != null ? rule.condition.state : Condition.STATE_FALSE; } } void setAutomaticZenRuleState(String id, Condition condition, @ConfigChangeOrigin int origin, int callingUid) { requirePublicOrigin("setAutomaticZenRuleState", origin); Loading