Loading core/java/android/provider/Settings.java +13 −4 Original line number Diff line number Diff line Loading @@ -1311,12 +1311,19 @@ public final class Settings { /** * @hide Key with the location in the {@link android.util.MemoryIntArray} where * to look up the generation id of the backing table. * to look up the generation id of the backing table. The value is an integer. * * @see #CALL_METHOD_TRACK_GENERATION_KEY */ public static final String CALL_METHOD_GENERATION_INDEX_KEY = "_generation_index"; /** * @hide Key with the settings table generation. The value is an integer. * * @see #CALL_METHOD_TRACK_GENERATION_KEY */ public static final String CALL_METHOD_GENERATION_KEY = "_generation"; /** * @hide - User handle argument extra to the fast-path call()-based requests */ Loading Loading @@ -1467,11 +1474,11 @@ public final class Settings { private int mCurrentGeneration; public GenerationTracker(@NonNull MemoryIntArray array, int index, Runnable errorHandler) { int generation, Runnable errorHandler) { mArray = array; mIndex = index; mErrorHandler = errorHandler; mCurrentGeneration = readCurrentGeneration(); mCurrentGeneration = generation; } public boolean isGenerationChanged() { Loading Loading @@ -1627,6 +1634,8 @@ public final class Settings { final int index = b.getInt( CALL_METHOD_GENERATION_INDEX_KEY, -1); if (array != null && index >= 0) { final int generation = b.getInt( CALL_METHOD_GENERATION_KEY, 0); if (DEBUG) { Log.i(TAG, "Received generation tracker for type:" + mUri.getPath() + " in package:" Loading @@ -1634,7 +1643,7 @@ public final class Settings { + userHandle + " with index:" + index); } mGenerationTracker = new GenerationTracker(array, index, () -> { generation, () -> { synchronized (this) { Log.e(TAG, "Error accessing generation" + " tracker - removing"); Loading packages/SettingsProvider/src/com/android/providers/settings/GenerationRegistry.java +2 −0 Original line number Diff line number Diff line Loading @@ -76,6 +76,8 @@ final class GenerationRegistry { bundle.putParcelable(Settings.CALL_METHOD_TRACK_GENERATION_KEY, backingStore); bundle.putInt(Settings.CALL_METHOD_GENERATION_INDEX_KEY, index); bundle.putInt(Settings.CALL_METHOD_GENERATION_KEY, backingStore.get(index)); if (DEBUG) { Slog.i(LOG_TAG, "Exported index:" + index + " for key:" + SettingsProvider.keyToString(key)); Loading Loading
core/java/android/provider/Settings.java +13 −4 Original line number Diff line number Diff line Loading @@ -1311,12 +1311,19 @@ public final class Settings { /** * @hide Key with the location in the {@link android.util.MemoryIntArray} where * to look up the generation id of the backing table. * to look up the generation id of the backing table. The value is an integer. * * @see #CALL_METHOD_TRACK_GENERATION_KEY */ public static final String CALL_METHOD_GENERATION_INDEX_KEY = "_generation_index"; /** * @hide Key with the settings table generation. The value is an integer. * * @see #CALL_METHOD_TRACK_GENERATION_KEY */ public static final String CALL_METHOD_GENERATION_KEY = "_generation"; /** * @hide - User handle argument extra to the fast-path call()-based requests */ Loading Loading @@ -1467,11 +1474,11 @@ public final class Settings { private int mCurrentGeneration; public GenerationTracker(@NonNull MemoryIntArray array, int index, Runnable errorHandler) { int generation, Runnable errorHandler) { mArray = array; mIndex = index; mErrorHandler = errorHandler; mCurrentGeneration = readCurrentGeneration(); mCurrentGeneration = generation; } public boolean isGenerationChanged() { Loading Loading @@ -1627,6 +1634,8 @@ public final class Settings { final int index = b.getInt( CALL_METHOD_GENERATION_INDEX_KEY, -1); if (array != null && index >= 0) { final int generation = b.getInt( CALL_METHOD_GENERATION_KEY, 0); if (DEBUG) { Log.i(TAG, "Received generation tracker for type:" + mUri.getPath() + " in package:" Loading @@ -1634,7 +1643,7 @@ public final class Settings { + userHandle + " with index:" + index); } mGenerationTracker = new GenerationTracker(array, index, () -> { generation, () -> { synchronized (this) { Log.e(TAG, "Error accessing generation" + " tracker - removing"); Loading
packages/SettingsProvider/src/com/android/providers/settings/GenerationRegistry.java +2 −0 Original line number Diff line number Diff line Loading @@ -76,6 +76,8 @@ final class GenerationRegistry { bundle.putParcelable(Settings.CALL_METHOD_TRACK_GENERATION_KEY, backingStore); bundle.putInt(Settings.CALL_METHOD_GENERATION_INDEX_KEY, index); bundle.putInt(Settings.CALL_METHOD_GENERATION_KEY, backingStore.get(index)); if (DEBUG) { Slog.i(LOG_TAG, "Exported index:" + index + " for key:" + SettingsProvider.keyToString(key)); Loading