Loading core/java/android/content/ContentResolver.java +13 −0 Original line number Diff line number Diff line Loading @@ -686,6 +686,19 @@ public abstract class ContentResolver implements ContentInterface { */ public static final int NOTIFY_DELETE = 1 << 4; /** * Flag for {@link #notifyChange(Uri, ContentObserver, int)}: typically set * by a {@link ContentProvider} to indicate that this notification should * not be subject to any delays when dispatching to apps running in the * background. * <p> * Using this flag may negatively impact system health and performance, and * should be used sparingly. * * @hide */ public static final int NOTIFY_NO_DELAY = 1 << 15; /** * No exception, throttled by app standby normally. * @hide Loading services/core/java/com/android/server/content/ContentService.java +2 −1 Original line number Diff line number Diff line Loading @@ -569,9 +569,10 @@ public final class ContentService extends IContentService.Stub { // Immediately dispatch notifications to foreground apps that // are important to the user; all other background observers are // delayed to avoid stampeding final boolean noDelay = (key.flags & ContentResolver.NOTIFY_NO_DELAY) != 0; final int procState = LocalServices.getService(ActivityManagerInternal.class) .getUidProcessState(key.uid); if (procState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND) { if (procState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND || noDelay) { task.run(); } else { BackgroundThread.getHandler().postDelayed(task, BACKGROUND_OBSERVER_DELAY); Loading Loading
core/java/android/content/ContentResolver.java +13 −0 Original line number Diff line number Diff line Loading @@ -686,6 +686,19 @@ public abstract class ContentResolver implements ContentInterface { */ public static final int NOTIFY_DELETE = 1 << 4; /** * Flag for {@link #notifyChange(Uri, ContentObserver, int)}: typically set * by a {@link ContentProvider} to indicate that this notification should * not be subject to any delays when dispatching to apps running in the * background. * <p> * Using this flag may negatively impact system health and performance, and * should be used sparingly. * * @hide */ public static final int NOTIFY_NO_DELAY = 1 << 15; /** * No exception, throttled by app standby normally. * @hide Loading
services/core/java/com/android/server/content/ContentService.java +2 −1 Original line number Diff line number Diff line Loading @@ -569,9 +569,10 @@ public final class ContentService extends IContentService.Stub { // Immediately dispatch notifications to foreground apps that // are important to the user; all other background observers are // delayed to avoid stampeding final boolean noDelay = (key.flags & ContentResolver.NOTIFY_NO_DELAY) != 0; final int procState = LocalServices.getService(ActivityManagerInternal.class) .getUidProcessState(key.uid); if (procState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND) { if (procState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND || noDelay) { task.run(); } else { BackgroundThread.getHandler().postDelayed(task, BACKGROUND_OBSERVER_DELAY); Loading