Merge "Clarify method names and improve debug" am: 1ab7ac7f56 am: 1d74b8207b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2217306 Change-Id: I922d2d8012d82ce7dfa8a1c70e2582b60e98761e Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -352,7 +352,7 @@ public final class SystemClock {
|
|||||||
}
|
}
|
||||||
long currentNanos = elapsedRealtimeNanos();
|
long currentNanos = elapsedRealtimeNanos();
|
||||||
long deltaMs = (currentNanos - time.getElapsedRealtimeNanos()) / 1000000L;
|
long deltaMs = (currentNanos - time.getElapsedRealtimeNanos()) / 1000000L;
|
||||||
return time.getTime() + deltaMs;
|
return time.getUnixEpochTimeMillis() + deltaMs;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,28 +20,32 @@ import android.annotation.NonNull;
|
|||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
|
|
||||||
|
import java.time.Duration;
|
||||||
|
import java.time.Instant;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Data class for passing location derived time.
|
* Data class for passing GNSS-derived time.
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
public final class LocationTime implements Parcelable {
|
public final class LocationTime implements Parcelable {
|
||||||
|
|
||||||
private final long mTime;
|
private final long mUnixEpochTimeMillis;
|
||||||
private final long mElapsedRealtimeNanos;
|
private final long mElapsedRealtimeNanos;
|
||||||
|
|
||||||
public LocationTime(long time, long elapsedRealtimeNanos) {
|
public LocationTime(long unixEpochTimeMillis, long elapsedRealtimeNanos) {
|
||||||
mTime = time;
|
mUnixEpochTimeMillis = unixEpochTimeMillis;
|
||||||
mElapsedRealtimeNanos = elapsedRealtimeNanos;
|
mElapsedRealtimeNanos = elapsedRealtimeNanos;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The current time, according to the Gnss location provider. */
|
* The Unix epoch time in millis, according to the Gnss location provider.
|
||||||
public long getTime() {
|
*/
|
||||||
return mTime;
|
public long getUnixEpochTimeMillis() {
|
||||||
|
return mUnixEpochTimeMillis;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The elapsed nanos since boot {@link #getTime} was computed at.
|
* The elapsed nanos since boot when {@link #getUnixEpochTimeMillis} was the current time.
|
||||||
*/
|
*/
|
||||||
public long getElapsedRealtimeNanos() {
|
public long getElapsedRealtimeNanos() {
|
||||||
return mElapsedRealtimeNanos;
|
return mElapsedRealtimeNanos;
|
||||||
@@ -49,7 +53,7 @@ public final class LocationTime implements Parcelable {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeToParcel(Parcel out, int flags) {
|
public void writeToParcel(Parcel out, int flags) {
|
||||||
out.writeLong(mTime);
|
out.writeLong(mUnixEpochTimeMillis);
|
||||||
out.writeLong(mElapsedRealtimeNanos);
|
out.writeLong(mElapsedRealtimeNanos);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -58,8 +62,18 @@ public final class LocationTime implements Parcelable {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "LocationTime{"
|
||||||
|
+ "mUnixEpochTimeMillis=" + Instant.ofEpochMilli(mUnixEpochTimeMillis)
|
||||||
|
+ "(" + mUnixEpochTimeMillis + ")"
|
||||||
|
+ ", mElapsedRealtimeNanos=" + Duration.ofNanos(mElapsedRealtimeNanos)
|
||||||
|
+ "(" + mElapsedRealtimeNanos + ")"
|
||||||
|
+ '}';
|
||||||
|
}
|
||||||
|
|
||||||
public static final @NonNull Parcelable.Creator<LocationTime> CREATOR =
|
public static final @NonNull Parcelable.Creator<LocationTime> CREATOR =
|
||||||
new Parcelable.Creator<LocationTime>() {
|
new Parcelable.Creator<>() {
|
||||||
public LocationTime createFromParcel(Parcel in) {
|
public LocationTime createFromParcel(Parcel in) {
|
||||||
long time = in.readLong();
|
long time = in.readLong();
|
||||||
long elapsedRealtimeNanos = in.readLong();
|
long elapsedRealtimeNanos = in.readLong();
|
||||||
|
|||||||
@@ -261,10 +261,11 @@ public final class GnssTimeUpdateService extends Binder {
|
|||||||
private void suggestGnssTime(LocationTime locationTime) {
|
private void suggestGnssTime(LocationTime locationTime) {
|
||||||
logDebug("suggestGnssTime()");
|
logDebug("suggestGnssTime()");
|
||||||
|
|
||||||
long gnssTime = locationTime.getTime();
|
long gnssUnixEpochTimeMillis = locationTime.getUnixEpochTimeMillis();
|
||||||
long elapsedRealtimeMs = locationTime.getElapsedRealtimeNanos() / 1_000_000L;
|
long elapsedRealtimeMs = locationTime.getElapsedRealtimeNanos() / 1_000_000L;
|
||||||
|
|
||||||
TimestampedValue<Long> timeSignal = new TimestampedValue<>(elapsedRealtimeMs, gnssTime);
|
TimestampedValue<Long> timeSignal =
|
||||||
|
new TimestampedValue<>(elapsedRealtimeMs, gnssUnixEpochTimeMillis);
|
||||||
mLastSuggestedGnssTime = timeSignal;
|
mLastSuggestedGnssTime = timeSignal;
|
||||||
|
|
||||||
GnssTimeSuggestion timeSuggestion = new GnssTimeSuggestion(timeSignal);
|
GnssTimeSuggestion timeSuggestion = new GnssTimeSuggestion(timeSignal);
|
||||||
|
|||||||
Reference in New Issue
Block a user