modified Same code location, different body
These chunks live at the same (file, symbol) in both versions
but have different content hashes — so the code definitely changed
between android-17.0.0_r1 and android-13.0.0_r84.
-
packages/modules/NetworkStack/src/android/net/apf/ApfFilter.java ApfFilter.onReceive AOSP 17 android-17.0.0_r1
lines 513–525 0.61@Override public void onReceive(Context context, Intent intent) { mHandler.post(() -> { if (mIsApfShutdown) return; final PowerManager powerManagerAOSP 13 android-13.0.0_r84
lines 368–377 0.59@Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (action.equals(PowerManager.ACTION_DEVICE_IDLE_MODE_CHANGED)) { -
frameworks/base/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java JobConcurrencyManager.onReceive AOSP 17 android-17.0.0_r1
lines 574–611 0.60@Override public void onReceive(Context context, Intent intent) { switch (intent.getAction()) { case Intent.ACTION_SCREEN_ON: onInteractiveStateAOSP 13 android-13.0.0_r84
lines 442–467 0.59@Override public void onReceive(Context context, Intent intent) { switch (intent.getAction()) { case Intent.ACTION_SCREEN_ON: onInteractiveState -
frameworks/base/apex/jobscheduler/service/java/com/android/server/job/controllers/JobStatus.java JobStatus.canRunInDoze AOSP 17 android-17.0.0_r1
lines 2111–2118 0.60public boolean canRunInDoze() { return appHasDozeExemption || (getFlags() & JobInfo.FLAG_WILL_BE_FOREGROUND) != 0 || shouldTreatAsUserInitiatedJob()AOSP 13 android-13.0.0_r84
lines 1199–1204 0.61public boolean canRunInDoze() { return appHasDozeExemption || (getFlags() & JobInfo.FLAG_WILL_BE_FOREGROUND) != 0 || ((shouldTreatAsExpeditedJob() || startedAsE -
frameworks/base/apex/jobscheduler/service/java/com/android/server/job/controllers/DeviceIdleJobsController.java DeviceIdleJobsController.updateIdleMode AOSP 17 android-17.0.0_r1
lines 161–186 0.59void updateIdleMode(boolean enabled) { boolean changed = false; synchronized (mLock) { if (mDeviceIdleMode != enabled) { changed = true; }AOSP 13 android-13.0.0_r84
lines 149–174 0.60void updateIdleMode(boolean enabled) { boolean changed = false; synchronized (mLock) { if (mDeviceIdleMode != enabled) { changed = true; } -
frameworks/base/services/tests/servicestests/src/com/android/server/usage/AppStandbyControllerTests.java AppStandbyControllerTests.testExemptedSyncScheduled AOSP 17 android-17.0.0_r1
lines 1902–1919 0.59@Test public void testExemptedSyncScheduled() throws Exception { setAndAssertBucket(PACKAGE_1, USER_ID, STANDBY_BUCKET_RARE, REASON_MAIN_FORCED_BY_SYSTEM); mInjector.mDeviceIdleModAOSP 13 android-13.0.0_r84
lines 1815–1833 0.59@Test @FlakyTest(bugId = 185169504) public void testExemptedSyncScheduled() throws Exception { setAndAssertBucket(PACKAGE_1, USER_ID, STANDBY_BUCKET_RARE, REASON_MAIN_FORCED_BY_SYSTEM) -
frameworks/base/services/core/java/com/android/server/wm/ActivityTaskManagerService.java ActivityTaskManagerService.setProcessAnimatingWhileDozing AOSP 17 android-17.0.0_r1
lines 3428–3438 0.59void setProcessAnimatingWhileDozing(WindowProcessController proc) { if (proc == null) return; // Set to activity manager directly to make sure the state can be seen by the subsequentAOSP 13 android-13.0.0_r84
lines 2949–2957 0.58void setProcessAnimatingWhileDozing(WindowProcessController proc) { if (proc == null) return; // Set to activity manager directly to make sure the state can be seen by the subsequent
only in 17 Removed or refactored away in 13
Matched the query in AOSP 17 (android-17.0.0_r1) but didn't appear in the top results for AOSP 13. They may have been removed, or refactored beyond the query's reach.
-
private Operation enqueueCheckInWorkRequest(boolean isExpedited, Duration delay) { OneTimeWorkRequest.Builder builder = new OneTimeWorkRequest.Builder(DeviceCheckInWorker.class -
private void maybeEnqueueFcmRegistrationTokenRetrievalWork( @Nullable String fcmRegistrationToken) { if (Strings.isNullOrEmpty(fcmRegistrationToken) || fcmRegistrationToken.isBlank -
@Override public void performReceive(Intent intent, int resultCode, String data, Bundle extras, boolean ordered, boolean sticky, int sendingUser) { // When coming o -
public static final class WorkFailureAlarmReceiver extends BroadcastReceiver { private final Executor mExecutor = Executors.newSingleThreadExecutor(); @Override public void on -
private static void delayWorkIfRequired(OneTimeWorkRequest.Builder workRequestBuilder) { if (!MediaReceiver.isBootCompleted() && SystemClock.elapsedRealtime() < INITIAL_DELAY_MS) { -
@TargetApi(Build.VERSION_CODES.TIRAMISU) private void handleIdleModeIntent(Context context, Intent intent) { if (intent == null) return; if (isDeviceIdleModeChangedAction(intent)
only in 13 New in 13 (or refactored from elsewhere)
Matched the query in AOSP 13 (android-13.0.0_r84) but didn't appear in the top results for AOSP 17. Likely added in this version, or refactored from older code that no longer matches the query.
-
@Override public void onReceive(Context context, Intent intent) { // When coming out of a deep idle, we will add in some delay before we allow // the system to settle down and -
fun schedulePendingIntent(am: AlarmManager, triggerTime: Long, pi: PendingIntent?) { if (Utils.isMOrLater) { // Ensure the timer fires even if the device is dozing. -
frameworks/base/apex/jobscheduler/service/java/com/android/server/job/controllers/JobStatus.java 0.58
private void updateExpeditedDependencies() { // DeviceIdleJobsController currently only tracks jobs with the WILL_BE_FOREGROUND flag. // Making it also track requested-expedited jobs w -
@Override public void onDeviceIdleStateChanged(boolean deviceIdle) { synchronized (mLock) { if (DEBUG) { Slog.d(TAG, "Doze state changed: " + deviceIdle); -
frameworks/base/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java 0.57
@GuardedBy("mLock") private void stopUnexemptedJobsForDoze() { // When becoming idle, make sure no jobs are actively running, // except those using the idle exemption flag.
unchanged Byte-identical across both versions
These chunks share the same content hash (chunk_id) in both versions — their bodies are byte-for-byte identical. The match is guaranteed by construction, not inferred from a similarity heuristic.
- frameworks/base/apex/jobscheduler/service/java/com/android/server/job/controllers/JobStatus.java JobStatus.setDeviceNotDozingConstraintSatisfied fe23c8792741…
- frameworks/base/packages/StatementService/src/com/android/statementservice/domain/BootCompletedReceiver.kt 067fc63cf03e…