Loading apex/jobscheduler/framework/java/android/app/IAlarmManager.aidl +0 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ interface IAlarmManager { long getNextWakeFromIdleTime(); @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) AlarmManager.AlarmClockInfo getNextAlarmClock(int userId); long currentNetworkTimeMillis(); boolean canScheduleExactAlarms(String packageName); boolean hasScheduleExactAlarm(String packageName, int userId); int getConfigVersion(); Loading apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java +0 −14 Original line number Diff line number Diff line Loading @@ -90,7 +90,6 @@ import android.os.Handler; import android.os.IBinder; import android.os.Looper; import android.os.Message; import android.os.ParcelableException; import android.os.PowerExemptionManager; import android.os.PowerManager; import android.os.Process; Loading @@ -116,7 +115,6 @@ import android.util.EventLog; import android.util.IndentingPrintWriter; import android.util.Log; import android.util.LongArrayQueue; import android.util.NtpTrustedTime; import android.util.Pair; import android.util.Slog; import android.util.SparseArray; Loading Loading @@ -161,7 +159,6 @@ import libcore.util.EmptyArray; import java.io.FileDescriptor; import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.time.DateTimeException; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; Loading Loading @@ -3007,17 +3004,6 @@ public class AlarmManagerService extends SystemService { return getNextAlarmClockImpl(userId); } @Override public long currentNetworkTimeMillis() { final NtpTrustedTime time = NtpTrustedTime.getInstance(getContext()); NtpTrustedTime.TimeResult ntpResult = time.getCachedTimeResult(); if (ntpResult != null) { return ntpResult.currentTimeMillis(); } else { throw new ParcelableException(new DateTimeException("Missing NTP fix")); } } @Override public int getConfigVersion() { getContext().enforceCallingOrSelfPermission(Manifest.permission.DUMP, Loading core/java/android/app/timedetector/ITimeDetectorService.aidl +4 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.app.timedetector.GnssTimeSuggestion; import android.app.timedetector.ManualTimeSuggestion; import android.app.timedetector.NetworkTimeSuggestion; import android.app.timedetector.TelephonyTimeSuggestion; import android.app.timedetector.TimePoint; /** * System private API to communicate with time detector service. Loading @@ -50,4 +51,6 @@ interface ITimeDetectorService { boolean suggestManualTime(in ManualTimeSuggestion timeSuggestion); void suggestNetworkTime(in NetworkTimeSuggestion timeSuggestion); void suggestTelephonyTime(in TelephonyTimeSuggestion timeSuggestion); TimePoint latestNetworkTime(); } core/java/android/app/timedetector/TimePoint.aidl 0 → 100644 +19 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022, The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.app.timedetector; parcelable TimePoint; core/java/android/app/timedetector/TimePoint.java 0 → 100644 +103 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.app.timedetector; import android.annotation.NonNull; import android.os.Parcel; import android.os.Parcelable; import java.util.Objects; /** * Data class for passing a Unix epoch time anchored to the elapsed realtime clock. * * @hide */ public final class TimePoint implements Parcelable { private final long mUnixEpochTimeMillis; private final long mElapsedRealtimeMillis; public TimePoint(long unixEpochTimeMillis, long elapsedRealtimeMillis) { mUnixEpochTimeMillis = unixEpochTimeMillis; mElapsedRealtimeMillis = elapsedRealtimeMillis; } /** * The current Unix epoch time, according to the external source. */ public long getUnixEpochTimeMillis() { return mUnixEpochTimeMillis; } /** * The elapsed millis since boot when {@link #getUnixEpochTimeMillis} was computed. */ public long getElapsedRealtimeMillis() { return mElapsedRealtimeMillis; } @Override public void writeToParcel(Parcel out, int flags) { out.writeLong(mUnixEpochTimeMillis); out.writeLong(mElapsedRealtimeMillis); } @Override public int describeContents() { return 0; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (!(o instanceof TimePoint)) { return false; } TimePoint timePoint = (TimePoint) o; return mUnixEpochTimeMillis == timePoint.mUnixEpochTimeMillis && mElapsedRealtimeMillis == timePoint.mElapsedRealtimeMillis; } @Override public int hashCode() { return Objects.hash(mUnixEpochTimeMillis, mElapsedRealtimeMillis); } @Override public String toString() { return "TimePoint{" + "mUnixEpochTimeMillis=" + mUnixEpochTimeMillis + ", mElapsedRealtimeMillis=" + mElapsedRealtimeMillis + '}'; } public static final @NonNull Creator<TimePoint> CREATOR = new Creator<TimePoint>() { public TimePoint createFromParcel(Parcel in) { long unixEpochTime = in.readLong(); long elapsedRealtimeMillis = in.readLong(); return new TimePoint(unixEpochTime, elapsedRealtimeMillis); } public TimePoint[] newArray(int size) { return new TimePoint[size]; } }; } Loading
apex/jobscheduler/framework/java/android/app/IAlarmManager.aidl +0 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ interface IAlarmManager { long getNextWakeFromIdleTime(); @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) AlarmManager.AlarmClockInfo getNextAlarmClock(int userId); long currentNetworkTimeMillis(); boolean canScheduleExactAlarms(String packageName); boolean hasScheduleExactAlarm(String packageName, int userId); int getConfigVersion(); Loading
apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java +0 −14 Original line number Diff line number Diff line Loading @@ -90,7 +90,6 @@ import android.os.Handler; import android.os.IBinder; import android.os.Looper; import android.os.Message; import android.os.ParcelableException; import android.os.PowerExemptionManager; import android.os.PowerManager; import android.os.Process; Loading @@ -116,7 +115,6 @@ import android.util.EventLog; import android.util.IndentingPrintWriter; import android.util.Log; import android.util.LongArrayQueue; import android.util.NtpTrustedTime; import android.util.Pair; import android.util.Slog; import android.util.SparseArray; Loading Loading @@ -161,7 +159,6 @@ import libcore.util.EmptyArray; import java.io.FileDescriptor; import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.time.DateTimeException; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; Loading Loading @@ -3007,17 +3004,6 @@ public class AlarmManagerService extends SystemService { return getNextAlarmClockImpl(userId); } @Override public long currentNetworkTimeMillis() { final NtpTrustedTime time = NtpTrustedTime.getInstance(getContext()); NtpTrustedTime.TimeResult ntpResult = time.getCachedTimeResult(); if (ntpResult != null) { return ntpResult.currentTimeMillis(); } else { throw new ParcelableException(new DateTimeException("Missing NTP fix")); } } @Override public int getConfigVersion() { getContext().enforceCallingOrSelfPermission(Manifest.permission.DUMP, Loading
core/java/android/app/timedetector/ITimeDetectorService.aidl +4 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.app.timedetector.GnssTimeSuggestion; import android.app.timedetector.ManualTimeSuggestion; import android.app.timedetector.NetworkTimeSuggestion; import android.app.timedetector.TelephonyTimeSuggestion; import android.app.timedetector.TimePoint; /** * System private API to communicate with time detector service. Loading @@ -50,4 +51,6 @@ interface ITimeDetectorService { boolean suggestManualTime(in ManualTimeSuggestion timeSuggestion); void suggestNetworkTime(in NetworkTimeSuggestion timeSuggestion); void suggestTelephonyTime(in TelephonyTimeSuggestion timeSuggestion); TimePoint latestNetworkTime(); }
core/java/android/app/timedetector/TimePoint.aidl 0 → 100644 +19 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022, The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.app.timedetector; parcelable TimePoint;
core/java/android/app/timedetector/TimePoint.java 0 → 100644 +103 −0 Original line number Diff line number Diff line /* * Copyright (C) 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.app.timedetector; import android.annotation.NonNull; import android.os.Parcel; import android.os.Parcelable; import java.util.Objects; /** * Data class for passing a Unix epoch time anchored to the elapsed realtime clock. * * @hide */ public final class TimePoint implements Parcelable { private final long mUnixEpochTimeMillis; private final long mElapsedRealtimeMillis; public TimePoint(long unixEpochTimeMillis, long elapsedRealtimeMillis) { mUnixEpochTimeMillis = unixEpochTimeMillis; mElapsedRealtimeMillis = elapsedRealtimeMillis; } /** * The current Unix epoch time, according to the external source. */ public long getUnixEpochTimeMillis() { return mUnixEpochTimeMillis; } /** * The elapsed millis since boot when {@link #getUnixEpochTimeMillis} was computed. */ public long getElapsedRealtimeMillis() { return mElapsedRealtimeMillis; } @Override public void writeToParcel(Parcel out, int flags) { out.writeLong(mUnixEpochTimeMillis); out.writeLong(mElapsedRealtimeMillis); } @Override public int describeContents() { return 0; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (!(o instanceof TimePoint)) { return false; } TimePoint timePoint = (TimePoint) o; return mUnixEpochTimeMillis == timePoint.mUnixEpochTimeMillis && mElapsedRealtimeMillis == timePoint.mElapsedRealtimeMillis; } @Override public int hashCode() { return Objects.hash(mUnixEpochTimeMillis, mElapsedRealtimeMillis); } @Override public String toString() { return "TimePoint{" + "mUnixEpochTimeMillis=" + mUnixEpochTimeMillis + ", mElapsedRealtimeMillis=" + mElapsedRealtimeMillis + '}'; } public static final @NonNull Creator<TimePoint> CREATOR = new Creator<TimePoint>() { public TimePoint createFromParcel(Parcel in) { long unixEpochTime = in.readLong(); long elapsedRealtimeMillis = in.readLong(); return new TimePoint(unixEpochTime, elapsedRealtimeMillis); } public TimePoint[] newArray(int size) { return new TimePoint[size]; } }; }