diff options
author | 2022-10-15 21:33:29 -0700 | |
---|---|---|
committer | 2022-11-14 17:57:30 -0800 | |
commit | 7da659bb6cfb38697828c27ab1b47aa0f51c7a2d (patch) | |
tree | 8301f4711c53e4b2e84526c7a2d9bf915e258878 | |
parent | 81c4fd80412d1e76d6f942fa9a12efbe6c52c404 (diff) |
Fix errorprone warnings that should be errors
This commit is part of a large scale change to fix errorprone
errors that have been downgraded to warnings in the android
source tree, so that they can be promoted to errors again.
The full list of changes include the following, but not all
will be present in any one individual commit:
BadAnnotationImplementation
BadShiftAmount
BanJNDI
BoxedPrimitiveEquality
ComparableType
ComplexBooleanConstant
CollectionToArraySafeParameter
ConditionalExpressionNumericPromotion
DangerousLiteralNull
DoubleBraceInitialization
DurationFrom
DurationTemporalUnit
EmptyTopLevelDeclaration
EqualsNull
EqualsReference
FormatString
FromTemporalAccessor
GetClassOnAnnotation
GetClassOnClass
HashtableContains
IdentityBinaryExpression
IdentityHashMapBoxing
InstantTemporalUnit
InvalidTimeZoneID
InvalidZoneId
IsInstanceIncompatibleType
JUnitParameterMethodNotFound
LockOnBoxedPrimitive
MathRoundIntLong
MislabeledAndroidString
MisusedDayOfYear
MissingSuperCall
MisusedWeekYear
ModifyingCollectionWithItself
NoCanIgnoreReturnValueOnClasses
NonRuntimeAnnotation
NullableOnContainingClass
NullTernary
OverridesJavaxInjectableMethod
ParcelableCreator
PeriodFrom
PreconditionsInvalidPlaceholder
ProtoBuilderReturnValueIgnored
ProtoFieldNullComparison
RandomModInteger
RectIntersectReturnValueIgnored
ReturnValueIgnored
SelfAssignment
SelfComparison
SelfEquals
SizeGreaterThanOrEqualsZero
StringBuilderInitWithChar
TreeToString
TryFailThrowable
UnnecessaryCheckNotNull
UnusedCollectionModifiedInPlace
XorPower
See https://errorprone.info/bugpatterns for more
information on the checks.
Bug: 253827323
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I8446f9076a45ebf7e7ffa06cb0d4ddb1001b6c00
115 files changed, 573 insertions, 607 deletions
diff --git a/apct-tests/perftests/core/Android.bp b/apct-tests/perftests/core/Android.bp index 23464f879518..67d0792f3bc9 100644 --- a/apct-tests/perftests/core/Android.bp +++ b/apct-tests/perftests/core/Android.bp @@ -59,4 +59,10 @@ android_test { test_suites: ["device-tests"], certificate: "platform", + + errorprone: { + javacflags: [ + "-Xep:ReturnValueIgnored:WARN", + ], + }, } diff --git a/apct-tests/perftests/core/src/android/libcore/ReferencePerfTest.java b/apct-tests/perftests/core/src/android/libcore/ReferencePerfTest.java index 2ef68ca7bdb2..05a3e1201a00 100644 --- a/apct-tests/perftests/core/src/android/libcore/ReferencePerfTest.java +++ b/apct-tests/perftests/core/src/android/libcore/ReferencePerfTest.java @@ -118,7 +118,7 @@ public class ReferencePerfTest { int got = count.get(); if (n != got) { throw new IllegalStateException( - String.format("Only %i of %i objects finalized?", got, n)); + String.format("Only %d of %d objects finalized?", got, n)); } } } diff --git a/core/java/android/app/SearchableInfo.java b/core/java/android/app/SearchableInfo.java index 5388282a1b46..bd5d1057f5bf 100644 --- a/core/java/android/app/SearchableInfo.java +++ b/core/java/android/app/SearchableInfo.java @@ -396,6 +396,17 @@ public final class SearchableInfo implements Parcelable { private final String mSuggestActionMsg; private final String mSuggestActionMsgColumn; + public static final Parcelable.Creator<ActionKeyInfo> CREATOR = + new Parcelable.Creator<ActionKeyInfo>() { + public ActionKeyInfo createFromParcel(Parcel in) { + return new ActionKeyInfo(in); + } + + public ActionKeyInfo[] newArray(int size) { + return new ActionKeyInfo[size]; + } + }; + /** * Create one object using attributeset as input data. * @param activityContext runtime context of the activity that the action key information diff --git a/core/java/android/content/ActivityNotFoundException.java b/core/java/android/content/ActivityNotFoundException.java index 16149bbc7012..5b50189015af 100644 --- a/core/java/android/content/ActivityNotFoundException.java +++ b/core/java/android/content/ActivityNotFoundException.java @@ -31,5 +31,4 @@ public class ActivityNotFoundException extends RuntimeException { super(name); } -}; - +} diff --git a/core/java/android/content/integrity/AtomicFormula.java b/core/java/android/content/integrity/AtomicFormula.java index f888813135be..1b5f64c456a1 100644 --- a/core/java/android/content/integrity/AtomicFormula.java +++ b/core/java/android/content/integrity/AtomicFormula.java @@ -261,8 +261,8 @@ public abstract class AtomicFormula extends IntegrityFormula { } LongAtomicFormula that = (LongAtomicFormula) o; return getKey() == that.getKey() - && mValue == that.mValue - && mOperator == that.mOperator; + && Objects.equals(mValue, that.mValue) + && Objects.equals(mOperator, that.mOperator); } @Override @@ -628,7 +628,7 @@ public abstract class AtomicFormula extends IntegrityFormula { return false; } BooleanAtomicFormula that = (BooleanAtomicFormula) o; - return getKey() == that.getKey() && mValue == that.mValue; + return getKey() == that.getKey() && Objects.equals(mValue, that.mValue); } @Override diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index a90f6d625c51..c41d5850577c 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -189,12 +189,12 @@ public abstract class PackageManager { @VisibleForTesting public Property(@NonNull String name, int type, @NonNull String packageName, @Nullable String className) { - assert name != null; - assert type >= TYPE_BOOLEAN && type <= TYPE_STRING; - assert packageName != null; - this.mName = name; + if (type < TYPE_BOOLEAN || type > TYPE_STRING) { + throw new IllegalArgumentException("Invalid type"); + } + this.mName = Objects.requireNonNull(name); this.mType = type; - this.mPackageName = packageName; + this.mPackageName = Objects.requireNonNull(packageName); this.mClassName = className; } /** @hide */ @@ -442,9 +442,8 @@ public abstract class PackageManager { */ public ComponentEnabledSetting(@NonNull ComponentName componentName, @EnabledState int newState, @EnabledFlags int flags) { - Objects.nonNull(componentName); mPackageName = null; - mComponentName = componentName; + mComponentName = Objects.requireNonNull(componentName); mEnabledState = newState; mEnabledFlags = flags; } @@ -460,8 +459,7 @@ public abstract class PackageManager { */ public ComponentEnabledSetting(@NonNull String packageName, @EnabledState int newState, @EnabledFlags int flags) { - Objects.nonNull(packageName); - mPackageName = packageName; + mPackageName = Objects.requireNonNull(packageName); mComponentName = null; mEnabledState = newState; mEnabledFlags = flags; diff --git a/core/java/android/content/pm/ShortcutInfo.java b/core/java/android/content/pm/ShortcutInfo.java index 1f83d7532f04..295df5cc42d0 100644 --- a/core/java/android/content/pm/ShortcutInfo.java +++ b/core/java/android/content/pm/ShortcutInfo.java @@ -50,6 +50,7 @@ import android.view.contentcapture.ContentCaptureContext; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.util.Preconditions; +import java.lang.IllegalArgumentException; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; @@ -1360,7 +1361,9 @@ public final class ShortcutInfo implements Parcelable { @NonNull public Builder setIntents(@NonNull Intent[] intents) { Objects.requireNonNull(intents, "intents cannot be null"); - Objects.requireNonNull(intents.length, "intents cannot be empty"); + if (intents.length == 0) { + throw new IllegalArgumentException("intents cannot be empty"); + } for (Intent intent : intents) { Objects.requireNonNull(intent, "intents cannot contain null"); Objects.requireNonNull(intent.getAction(), "intent's action must be set"); @@ -1398,7 +1401,9 @@ public final class ShortcutInfo implements Parcelable { @NonNull public Builder setPersons(@NonNull Person[] persons) { Objects.requireNonNull(persons, "persons cannot be null"); - Objects.requireNonNull(persons.length, "persons cannot be empty"); + if (persons.length == 0) { + throw new IllegalArgumentException("persons cannot be empty"); + } for (Person person : persons) { Objects.requireNonNull(person, "persons cannot contain null"); } diff --git a/core/java/android/hardware/CameraInfo.java b/core/java/android/hardware/CameraInfo.java index 072be50ad2fb..41ef6aa54ae3 100644 --- a/core/java/android/hardware/CameraInfo.java +++ b/core/java/android/hardware/CameraInfo.java @@ -60,4 +60,4 @@ public class CameraInfo implements Parcelable { return new CameraInfo[size]; } }; -}; +} diff --git a/core/java/android/hardware/CameraStatus.java b/core/java/android/hardware/CameraStatus.java index 874af297683e..fa35efbcee91 100644 --- a/core/java/android/hardware/CameraStatus.java +++ b/core/java/android/hardware/CameraStatus.java @@ -68,4 +68,4 @@ public class CameraStatus implements Parcelable { return new CameraStatus[size]; } }; -}; +} diff --git a/core/java/android/hardware/biometrics/CryptoObject.java b/core/java/android/hardware/biometrics/CryptoObject.java index d41570682fe1..267ef3637ce7 100644 --- a/core/java/android/hardware/biometrics/CryptoObject.java +++ b/core/java/android/hardware/biometrics/CryptoObject.java @@ -118,4 +118,4 @@ public class CryptoObject { } return AndroidKeyStoreProvider.getKeyStoreOperationHandle(mCrypto); } -}; +} diff --git a/core/java/android/hardware/camera2/impl/FrameNumberTracker.java b/core/java/android/hardware/camera2/impl/FrameNumberTracker.java index 7b6a457411f3..8304796f636a 100644 --- a/core/java/android/hardware/camera2/impl/FrameNumberTracker.java +++ b/core/java/android/hardware/camera2/impl/FrameNumberTracker.java @@ -26,6 +26,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.LinkedList; import java.util.List; +import java.util.Map; import java.util.TreeMap; /** @@ -63,11 +64,11 @@ public class FrameNumberTracker { } private void update() { - Iterator iter = mFutureErrorMap.entrySet().iterator(); + Iterator<Map.Entry<Long, Integer>> iter = mFutureErrorMap.entrySet().iterator(); while (iter.hasNext()) { - TreeMap.Entry pair = (TreeMap.Entry)iter.next(); - Long errorFrameNumber = (Long)pair.getKey(); - int requestType = (int) pair.getValue(); + Map.Entry<Long, Integer> pair = iter.next(); + long errorFrameNumber = pair.getKey(); + int requestType = pair.getValue(); Boolean removeError = false; if (errorFrameNumber == mCompletedFrameNumber[requestType] + 1) { removeError = true; diff --git a/core/java/android/hardware/camera2/marshal/impl/MarshalQueryableEnum.java b/core/java/android/hardware/camera2/marshal/impl/MarshalQueryableEnum.java index 621a418f43c9..92a2fb6f16b1 100644 --- a/core/java/android/hardware/camera2/marshal/impl/MarshalQueryableEnum.java +++ b/core/java/android/hardware/camera2/marshal/impl/MarshalQueryableEnum.java @@ -103,6 +103,7 @@ public class MarshalQueryableEnum<T extends Enum<T>> implements MarshalQueryable return new MarshalerEnum(managedType, nativeType); } + @SuppressWarnings("ReturnValueIgnored") @Override public boolean isTypeMappingSupported(TypeReference<T> managedType, int nativeType) { if (nativeType == TYPE_INT32 || nativeType == TYPE_BYTE) { diff --git a/core/java/android/hardware/camera2/params/OutputConfiguration.java b/core/java/android/hardware/camera2/params/OutputConfiguration.java index 4a2517763aae..bbe2319d88cc 100644 --- a/core/java/android/hardware/camera2/params/OutputConfiguration.java +++ b/core/java/android/hardware/camera2/params/OutputConfiguration.java @@ -1270,7 +1270,8 @@ public final class OutputConfiguration implements Parcelable { return false; } for (int j = 0; j < mSensorPixelModesUsed.size(); j++) { - if (mSensorPixelModesUsed.get(j) != other.mSensorPixelModesUsed.get(j)) { + if (!Objects.equals( + mSensorPixelModesUsed.get(j), other.mSensorPixelModesUsed.get(j))) { return false; } } diff --git a/core/java/android/hardware/fingerprint/Fingerprint.java b/core/java/android/hardware/fingerprint/Fingerprint.java index 9ce834ca5981..c01c94c43997 100644 --- a/core/java/android/hardware/fingerprint/Fingerprint.java +++ b/core/java/android/hardware/fingerprint/Fingerprint.java @@ -69,4 +69,4 @@ public final class Fingerprint extends BiometricAuthenticator.Identifier { return new Fingerprint[size]; } }; -};
\ No newline at end of file +}
\ No newline at end of file diff --git a/core/java/android/net/netstats/NetworkStatsDataMigrationUtils.java b/core/java/android/net/netstats/NetworkStatsDataMigrationUtils.java index 76ee097c8c93..5eeb6076b71d 100644 --- a/core/java/android/net/netstats/NetworkStatsDataMigrationUtils.java +++ b/core/java/android/net/netstats/NetworkStatsDataMigrationUtils.java @@ -53,8 +53,8 @@ import java.lang.annotation.RetentionPolicy; import java.net.ProtocolException; import java.util.ArrayList; import java.util.Arrays; -import java.util.HashMap; import java.util.HashSet; +import java.util.Map; import java.util.Set; /** @@ -89,12 +89,10 @@ public class NetworkStatsDataMigrationUtils { @Retention(RetentionPolicy.SOURCE) public @interface Prefix {} - private static final HashMap<String, String> sPrefixLegacyFileNameMap = - new HashMap<String, String>() {{ - put(PREFIX_XT, "netstats_xt.bin"); - put(PREFIX_UID, "netstats_uid.bin"); - put(PREFIX_UID_TAG, "netstats_uid.bin"); - }}; + private static final Map<String, String> sPrefixLegacyFileNameMap = Map.of( + PREFIX_XT, "netstats_xt.bin", + PREFIX_UID, "netstats_uid.bin", + PREFIX_UID_TAG, "netstats_uid.bin"); // These version constants are copied from NetworkStatsCollection/History, which is okay for // OEMs to modify to adapt their own logic. diff --git a/core/java/android/net/vcn/persistablebundleutils/TunnelConnectionParamsUtils.java b/core/java/android/net/vcn/persistablebundleutils/TunnelConnectionParamsUtils.java index 4bc5b49aa207..0427742f9c0a 100644 --- a/core/java/android/net/vcn/persistablebundleutils/TunnelConnectionParamsUtils.java +++ b/core/java/android/net/vcn/persistablebundleutils/TunnelConnectionParamsUtils.java @@ -53,7 +53,7 @@ public final class TunnelConnectionParamsUtils { if (in.keySet().size() != EXPECTED_BUNDLE_KEY_CNT) { throw new IllegalArgumentException( String.format( - "Expect PersistableBundle to have %d element but found: %d", + "Expect PersistableBundle to have %d element but found: %s", EXPECTED_BUNDLE_KEY_CNT, in.keySet())); } diff --git a/core/java/android/security/keymaster/ExportResult.java b/core/java/android/security/keymaster/ExportResult.java index 2c382efab1be..c78fb1a1f6b5 100644 --- a/core/java/android/security/keymaster/ExportResult.java +++ b/core/java/android/security/keymaster/ExportResult.java @@ -61,4 +61,4 @@ public class ExportResult implements Parcelable { out.writeInt(resultCode); out.writeByteArray(exportData); } -}; +} diff --git a/core/java/android/text/style/AccessibilityURLSpan.java b/core/java/android/text/style/AccessibilityURLSpan.java index bd816234a652..e280bdf8b339 100644 --- a/core/java/android/text/style/AccessibilityURLSpan.java +++ b/core/java/android/text/style/AccessibilityURLSpan.java @@ -26,6 +26,7 @@ import android.view.accessibility.AccessibilityNodeInfo; * It is used to replace URLSpans in {@link AccessibilityNodeInfo#setText(CharSequence)} * @hide */ +@SuppressWarnings("ParcelableCreator") public class AccessibilityURLSpan extends URLSpan implements Parcelable { final AccessibilityClickableSpan mAccessibilityClickableSpan; diff --git a/core/java/android/util/AndroidException.java b/core/java/android/util/AndroidException.java index 1345ddf189e1..d1b9d9f3c53a 100644 --- a/core/java/android/util/AndroidException.java +++ b/core/java/android/util/AndroidException.java @@ -40,5 +40,5 @@ public class AndroidException extends Exception { boolean writableStackTrace) { super(message, cause, enableSuppression, writableStackTrace); } -}; +} diff --git a/core/java/android/util/AndroidRuntimeException.java b/core/java/android/util/AndroidRuntimeException.java index 2b824bf9cb2a..72c34d8b75ac 100644 --- a/core/java/android/util/AndroidRuntimeException.java +++ b/core/java/android/util/AndroidRuntimeException.java @@ -34,5 +34,4 @@ public class AndroidRuntimeException extends RuntimeException { public AndroidRuntimeException(Exception cause) { super(cause); } -}; - +} diff --git a/core/java/android/util/Range.java b/core/java/android/util/Range.java index 9fd0ab99f01b..41c171a0bbd7 100644 --- a/core/java/android/util/Range.java +++ b/core/java/android/util/Range.java @@ -356,4 +356,4 @@ public final class Range<T extends Comparable<? super T>> { private final T mLower; private final T mUpper; -}; +} diff --git a/core/java/android/util/TypedValue.java b/core/java/android/util/TypedValue.java index 19de396c4a4a..44318bbc5468 100644 --- a/core/java/android/util/TypedValue.java +++ b/core/java/android/util/TypedValue.java @@ -696,5 +696,5 @@ public class TypedValue { sb.append("}"); return sb.toString(); } -}; +} diff --git a/core/java/android/view/CutoutSpecification.java b/core/java/android/view/CutoutSpecification.java index f8aa934af595..3fc3b6a3ccb3 100644 --- a/core/java/android/view/CutoutSpecification.java +++ b/core/java/android/view/CutoutSpecification.java @@ -394,7 +394,6 @@ public class CutoutSpecification { Log.e(TAG, "According to SVG definition, it shouldn't happen"); return; } - spec.trim(); translateMatrix(); final Path newPath = PathParser.createPathFromPathData(spec); diff --git a/core/java/android/view/RemoteAnimationDefinition.java b/core/java/android/view/RemoteAnimationDefinition.java index ea9799584e20..ff282ba0da39 100644 --- a/core/java/android/view/RemoteAnimationDefinition.java +++ b/core/java/android/view/RemoteAnimationDefinition.java @@ -19,6 +19,7 @@ package android.view; import static android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED; import android.annotation.Nullable; +import android.annotation.NonNull; import android.app.WindowConfiguration.ActivityType; import android.compat.annotation.UnsupportedAppUsage; import android.os.IBinder; @@ -157,7 +158,7 @@ public class RemoteAnimationDefinition implements Parcelable { } } - public static final @android.annotation.NonNull Creator<RemoteAnimationDefinition> CREATOR = + public static final @NonNull Creator<RemoteAnimationDefinition> CREATOR = new Creator<RemoteAnimationDefinition>() { public RemoteAnimationDefinition createFromParcel(Parcel in) { return new RemoteAnimationDefinition(in); @@ -199,18 +200,17 @@ public class RemoteAnimationDefinition implements Parcelable { return 0; } - private static final @android.annotation.NonNull Creator<RemoteAnimationAdapterEntry> CREATOR - = new Creator<RemoteAnimationAdapterEntry>() { - - @Override - public RemoteAnimationAdapterEntry createFromParcel(Parcel in) { - return new RemoteAnimationAdapterEntry(in); - } - - @Override - public RemoteAnimationAdapterEntry[] newArray(int size) { - return new RemoteAnimationAdapterEntry[size]; - } - }; + public static final @NonNull Parcelable.Creator<RemoteAnimationAdapterEntry> CREATOR = + new Parcelable.Creator<RemoteAnimationAdapterEntry>() { + @Override + public RemoteAnimationAdapterEntry createFromParcel(Parcel in) { + return new RemoteAnimationAdapterEntry(in); + } + + @Override + public RemoteAnimationAdapterEntry[] newArray(int size) { + return new RemoteAnimationAdapterEntry[size]; + } + }; } } diff --git a/core/java/android/webkit/ConsoleMessage.java b/core/java/android/webkit/ConsoleMessage.java index 5474557c9998..89cb6b2761be 100644 --- a/core/java/android/webkit/ConsoleMessage.java +++ b/core/java/android/webkit/ConsoleMessage.java @@ -68,4 +68,4 @@ public class ConsoleMessage { public int lineNumber() { return mLineNumber; } -}; +} diff --git a/core/java/android/webkit/ValueCallback.java b/core/java/android/webkit/ValueCallback.java index 5c7d97fc5d8c..3d5bb4922a77 100644 --- a/core/java/android/webkit/ValueCallback.java +++ b/core/java/android/webkit/ValueCallback.java @@ -25,4 +25,4 @@ public interface ValueCallback<T> { * @param value The value. */ public void onReceiveValue(T value); -}; +} diff --git a/core/java/android/window/TransitionFilter.java b/core/java/android/window/TransitionFilter.java index db15145b0a1e..e62d5c95a1f8 100644 --- a/core/java/android/window/TransitionFilter.java +++ b/core/java/android/window/TransitionFilter.java @@ -296,7 +296,7 @@ public final class TransitionFilter implements Parcelable { out.append((i == 0 ? "" : ",") + TransitionInfo.modeToString(mModes[i])); } } - out.append("]").toString(); + out.append("]"); out.append(" flags=" + TransitionInfo.flagsToString(mFlags)); out.append(" mustBeTask=" + mMustBeTask); out.append(" order=" + containerOrderToString(mOrder)); diff --git a/core/java/com/android/internal/app/procstats/AssociationState.java b/core/java/com/android/internal/app/procstats/AssociationState.java index 97f4b0fc8733..a21a84261ae0 100644 --- a/core/java/com/android/internal/app/procstats/AssociationState.java +++ b/core/java/com/android/internal/app/procstats/AssociationState.java @@ -59,6 +59,7 @@ public final class AssociationState { /** * The state of the source process of an association. */ + @SuppressWarnings("ParcelableCreator") public static final class SourceState implements Parcelable { private @NonNull final ProcessStats mProcessStats; private @Nullable final AssociationState mAssociationState; diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index e290812dd73e..1e0b3cc5f27d 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -3656,6 +3656,7 @@ public class BatteryStatsImpl extends BatteryStats { public abstract T instantiateObject(); } + @SuppressWarnings("ParcelableCreator") public static class ControllerActivityCounterImpl extends ControllerActivityCounter implements Parcelable { private final Clock mClock; diff --git a/core/java/com/android/internal/os/BinderCallsStats.java b/core/java/com/android/internal/os/BinderCallsStats.java index 0a29fc5285a5..eb62cb07ee68 100644 --- a/core/java/com/android/internal/os/BinderCallsStats.java +++ b/core/java/com/android/internal/os/BinderCallsStats.java @@ -735,7 +735,7 @@ public class BinderCallsStats implements BinderInternal.Observer { } protected boolean shouldRecordDetailedData() { - return mRandom.nextInt() % mPeriodicSamplingInterval == 0; + return mRandom.nextInt(mPeriodicSamplingInterval) == 0; } /** diff --git a/core/java/com/android/internal/os/BinderLatencyObserver.java b/core/java/com/android/internal/os/BinderLatencyObserver.java index e9d55db3a5b4..1276fb980799 100644 --- a/core/java/com/android/internal/os/BinderLatencyObserver.java +++ b/core/java/com/android/internal/os/BinderLatencyObserver.java @@ -236,7 +236,7 @@ public class BinderLatencyObserver { } protected boolean shouldKeepSample() { - return mRandom.nextInt() % mPeriodicSamplingInterval == 0; + return mRandom.nextInt(mPeriodicSamplingInterval) == 0; } /** Updates the sampling interval. */ diff --git a/core/java/com/android/internal/os/LooperStats.java b/core/java/com/android/internal/os/LooperStats.java index 2805dccffe50..0645eb7f0835 100644 --- a/core/java/com/android/internal/os/LooperStats.java +++ b/core/java/com/android/internal/os/LooperStats.java @@ -290,7 +290,7 @@ public class LooperStats implements Looper.Observer { } protected boolean shouldCollectDetailedData() { - return ThreadLocalRandom.current().nextInt() % mSamplingInterval == 0; + return ThreadLocalRandom.current().nextInt(mSamplingInterval) == 0; } private static class DispatchSession { diff --git a/core/java/com/android/internal/util/LatencyTracker.java b/core/java/com/android/internal/util/LatencyTracker.java index ca40a4052ca1..ab42f877cc09 100644 --- a/core/java/com/android/internal/util/LatencyTracker.java +++ b/core/java/com/android/internal/util/LatencyTracker.java @@ -413,7 +413,7 @@ public class LatencyTracker { boolean shouldSample; int traceThreshold; synchronized (mLock) { - shouldSample = ThreadLocalRandom.current().nextInt() % mSamplingInterval == 0; + shouldSample = ThreadLocalRandom.current().nextInt(mSamplingInterval) == 0; traceThreshold = mTraceThresholdPerAction[action]; } diff --git a/core/java/com/android/internal/view/BaseSurfaceHolder.java b/core/java/com/android/internal/view/BaseSurfaceHolder.java index 32ce0fe1282b..1ae1307633bb 100644 --- a/core/java/com/android/internal/view/BaseSurfaceHolder.java +++ b/core/java/com/android/internal/view/BaseSurfaceHolder.java @@ -241,4 +241,4 @@ public abstract class BaseSurfaceHolder implements SurfaceHolder { mSurfaceFrame.right = width; mSurfaceFrame.bottom = height; } -}; +} diff --git a/core/tests/benchmarks/src/android/os/ParcelableBenchmark.java b/core/tests/benchmarks/src/android/os/ParcelableBenchmark.java index 1cf430205627..372bca4664a2 100644 --- a/core/tests/benchmarks/src/android/os/ParcelableBenchmark.java +++ b/core/tests/benchmarks/src/android/os/ParcelableBenchmark.java @@ -88,6 +88,7 @@ public class ParcelableBenchmark { } } + @SuppressWarnings("ParcelableCreator") @SuppressLint("ParcelCreator") private static class PointArray implements Parcelable { Rect mBounds = new Rect(); diff --git a/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java b/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java index d505492f3b80..86e958320a04 100644 --- a/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java +++ b/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java @@ -20,6 +20,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.assertThrows; import static org.junit.Assert.fail; import android.content.pm.PackageManager.Property; @@ -162,40 +163,30 @@ public class PackageManagerPropertyTests { @Test public void testProperty_invalidName() throws Exception { - try { + assertThrows(NullPointerException.class, () -> { final Property p = new Property(null, 1, "android", null); - fail("expected assertion error"); - } catch (AssertionError expected) { - } + }); } @Test public void testProperty_invalidType() throws Exception { - try { + assertThrows(IllegalArgumentException.class, () -> { final Property p = new Property("invalidTypeProperty", 0, "android", null); - fail("expected assertion error"); - } catch (AssertionError expected) { - } + }); - try { + assertThrows(IllegalArgumentException.class, () -> { final Property p = new Property("invalidTypeProperty", 6, "android", null); - fail("expected assertion error"); - } catch (AssertionError expected) { - } + }); - try { + assertThrows(IllegalArgumentException.class, () -> { final Property p = new Property("invalidTypeProperty", -1, "android", null); - fail("expected assertion error"); - } catch (AssertionError expected) { - } + }); } @Test public void testProperty_noPackageName() throws Exception { - try { + assertThrows(NullPointerException.class, () -> { final Property p = new Property(null, 1, null, null); - fail("expected assertion error"); - } catch (AssertionError expected) { - } + }); } } diff --git a/core/tests/coretests/src/android/widget/RemoteViewsTest.java b/core/tests/coretests/src/android/widget/RemoteViewsTest.java index 00b3693c902b..bbf9f3c99402 100644 --- a/core/tests/coretests/src/android/widget/RemoteViewsTest.java +++ b/core/tests/coretests/src/android/widget/RemoteViewsTest.java @@ -128,6 +128,7 @@ public class RemoteViewsTest { RemoteViews clone = child.clone(); } + @SuppressWarnings("ReturnValueIgnored") @Test public void clone_repeatedly() { RemoteViews original = new RemoteViews(mPackage, R.layout.remote_views_test); @@ -485,6 +486,7 @@ public class RemoteViewsTest { } } + @SuppressWarnings("ReturnValueIgnored") @Test public void nestedAddViews() { RemoteViews views = new RemoteViews(mPackage, R.layout.remote_views_test); @@ -509,6 +511,7 @@ public class RemoteViewsTest { parcelAndRecreate(views); } + @SuppressWarnings("ReturnValueIgnored") @Test public void nestedLandscapeViews() { RemoteViews views = new RemoteViews(mPackage, R.layout.remote_views_test); diff --git a/core/tests/coretests/src/com/android/internal/os/BinderCallsStatsTest.java b/core/tests/coretests/src/com/android/internal/os/BinderCallsStatsTest.java index 82b2bf4185e6..8207c9ee5ff3 100644 --- a/core/tests/coretests/src/com/android/internal/os/BinderCallsStatsTest.java +++ b/core/tests/coretests/src/com/android/internal/os/BinderCallsStatsTest.java @@ -1054,10 +1054,23 @@ public class BinderCallsStatsTest { super(new Injector() { public Random getRandomGenerator() { return new Random() { - int mCallCount = 0; + int mCallCount = -1; public int nextInt() { - return mCallCount++; + throw new IllegalStateException("Should not use nextInt()"); + } + + public int nextInt(int x) { + if (mCallCount == -1) { + // The tests are written such that they expect + // the first call to nextInt() to be on the first + // callEnded(). However, the BinderCallsStats + // constructor also calls nextInt(). Fake 0 being + // rolled twice. + mCallCount++; + return 0; + } + return (mCallCount++) % x; } }; } diff --git a/core/tests/coretests/src/com/android/internal/os/BinderLatencyObserverTest.java b/core/tests/coretests/src/com/android/internal/os/BinderLatencyObserverTest.java index 5af7376dc132..7bd53b9d4fcc 100644 --- a/core/tests/coretests/src/com/android/internal/os/BinderLatencyObserverTest.java +++ b/core/tests/coretests/src/com/android/internal/os/BinderLatencyObserverTest.java @@ -98,7 +98,7 @@ public class BinderLatencyObserverTest { assertEquals(1, latencyHistograms.size()); LatencyDims dims = latencyHistograms.keySet().iterator().next(); assertEquals(binder.getClass(), dims.getBinderClass()); - assertEquals(1, dims.getTransactionCode()); + assertEquals(2, dims.getTransactionCode()); // the first nextInt() is in the constructor assertThat(latencyHistograms.get(dims)).asList().containsExactly(1, 0, 0, 0, 0).inOrder(); } @@ -313,11 +313,11 @@ public class BinderLatencyObserverTest { int mCallCount = 0; public int nextInt() { - return mCallCount++; + throw new IllegalStateException("Should not use nextInt()"); } public int nextInt(int x) { - return 1; + return (mCallCount++) % x; } }; } diff --git a/core/tests/coretests/src/com/android/internal/util/TokenBucketTest.java b/core/tests/coretests/src/com/android/internal/util/TokenBucketTest.java index 6c50bce86638..8b30828a8936 100644 --- a/core/tests/coretests/src/com/android/internal/util/TokenBucketTest.java +++ b/core/tests/coretests/src/com/android/internal/util/TokenBucketTest.java @@ -16,6 +16,8 @@ package com.android.internal.util; +import static org.junit.Assert.assertThrows; + import android.os.SystemClock; import android.text.format.DateUtils; @@ -170,10 +172,9 @@ public class TokenBucketTest extends TestCase { } void assertThrow(Fn fn) { - try { + assertThrows(Throwable.class, () -> { fn.call(); - fail("expected n exception to be thrown."); - } catch (Throwable t) { } + }); } interface Fn { void call(); } diff --git a/core/tests/hosttests/test-apps/MultiDexLegacyTestApp/src/com/android/multidexlegacytestapp/Test.java b/core/tests/hosttests/test-apps/MultiDexLegacyTestApp/src/com/android/multidexlegacytestapp/Test.java index 41b8956f55d0..a2263256508b 100644 --- a/core/tests/hosttests/test-apps/MultiDexLegacyTestApp/src/com/android/multidexlegacytestapp/Test.java +++ b/core/tests/hosttests/test-apps/MultiDexLegacyTestApp/src/com/android/multidexlegacytestapp/Test.java @@ -31,6 +31,7 @@ public class Test extends ActivityInstrumentationTestCase2<MainActivity> { assertEquals(3366, getActivity().getValue()); } + @SuppressWarnings("ReturnValueIgnored") public void testAnnotation() throws Exception { assertEquals(ReferencedByAnnotation.B, ((AnnotationWithEnum) TestApplication.annotation).value()); diff --git a/core/tests/utiltests/src/com/android/internal/util/CallbackRegistryTest.java b/core/tests/utiltests/src/com/android/internal/util/CallbackRegistryTest.java index c53f4cc7ee52..1581abb5a9c6 100644 --- a/core/tests/utiltests/src/com/android/internal/util/CallbackRegistryTest.java +++ b/core/tests/utiltests/src/com/android/internal/util/CallbackRegistryTest.java @@ -20,6 +20,7 @@ import junit.framework.TestCase; import org.junit.Test; import java.util.ArrayList; +import java.util.Objects; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -39,11 +40,11 @@ public class CallbackRegistryTest extends TestCase { Integer argValue; private void addNotifyCount(Integer callback) { - if (callback == callback1) { + if (Objects.equals(callback, callback1)) { notify1++; - } else if (callback == callback2) { + } else if (Objects.equals(callback, callback2)) { notify2++; - } else if (callback == callback3) { + } else if (Objects.equals(callback, callback3)) { notify3++; } deepNotifyCount[callback]++; @@ -114,7 +115,7 @@ public class CallbackRegistryTest extends TestCase { public void onNotifyCallback(Integer callback, CallbackRegistryTest sender, int arg1, Integer arg) { addNotifyCount(callback); - if (callback == callback1) { + if (Objects.equals(callback, callback1)) { registry.remove(callback1); registry.remove(callback2); } @@ -166,9 +167,9 @@ public class CallbackRegistryTest extends TestCase { public void onNotifyCallback(Integer callback, CallbackRegistryTest sender, int arg1, Integer arg) { addNotifyCount(callback); - if (callback == callback1) { + if (Objects.equals(callback, callback1)) { registry.remove(callback2); - } else if (callback == callback3) { + } else if (Objects.equals(callback, callback3)) { registry.add(callback2); } } diff --git a/errorprone/java/com/google/errorprone/bugpatterns/android/EfficientXmlChecker.java b/errorprone/java/com/google/errorprone/bugpatterns/android/EfficientXmlChecker.java index 8706a68226ef..42e304699cd4 100644 --- a/errorprone/java/com/google/errorprone/bugpatterns/android/EfficientXmlChecker.java +++ b/errorprone/java/com/google/errorprone/bugpatterns/android/EfficientXmlChecker.java @@ -168,6 +168,7 @@ public final class EfficientXmlChecker extends BugChecker */ private static final Matcher<ExpressionTree> CONVERT_PRIMITIVE_TO_STRING = new Matcher<ExpressionTree>() { + @SuppressWarnings("TreeToString") //TODO: Fix me @Override public boolean matches(ExpressionTree tree, VisitorState state) { if (PRIMITIVE_TO_STRING.matches(tree, state)) { @@ -205,6 +206,7 @@ public final class EfficientXmlChecker extends BugChecker */ private static final Matcher<ExpressionTree> CONVERT_STRING_TO_PRIMITIVE = new Matcher<ExpressionTree>() { + @SuppressWarnings("TreeToString") //TODO: Fix me @Override public boolean matches(ExpressionTree tree, VisitorState state) { if (PRIMITIVE_PARSE.matches(tree, state)) { diff --git a/graphics/java/android/graphics/drawable/RippleDrawable.java b/graphics/java/android/graphics/drawable/RippleDrawable.java index 74cad1aaa057..b170869672eb 100644 --- a/graphics/java/android/graphics/drawable/RippleDrawable.java +++ b/graphics/java/android/graphics/drawable/RippleDrawable.java @@ -758,7 +758,7 @@ public class RippleDrawable extends LayerDrawable { if (mBackground != null) { mBackground.onHotspotBoundsChanged(); } - float newRadius = Math.round(getComputedRadius()); + float newRadius = getComputedRadius(); for (int i = 0; i < mRunningAnimations.size(); i++) { RippleAnimationSession s = mRunningAnimations.get(i); s.setRadius(newRadius); diff --git a/graphics/java/android/graphics/drawable/VectorDrawable.java b/graphics/java/android/graphics/drawable/VectorDrawable.java index 4065bd110c7e..e25ee906b410 100644 --- a/graphics/java/android/graphics/drawable/VectorDrawable.java +++ b/graphics/java/android/graphics/drawable/VectorDrawable.java @@ -60,7 +60,7 @@ import java.io.IOException; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.util.ArrayList; -import java.util.HashMap; +import java.util.Map; import java.util.Stack; /** @@ -1171,18 +1171,14 @@ public class VectorDrawable extends Drawable { private static final int NATIVE_ALLOCATION_SIZE = 100; - private static final HashMap<String, Integer> sPropertyIndexMap = - new HashMap<String, Integer>() { - { - put("translateX", TRANSLATE_X_INDEX); - put("translateY", TRANSLATE_Y_INDEX); - put("scaleX", SCALE_X_INDEX); - put("scaleY", SCALE_Y_INDEX); - put("pivotX", PIVOT_X_INDEX); - put("pivotY", PIVOT_Y_INDEX); - put("rotation", ROTATION_INDEX); - } - }; + private static final Map<String, Integer> sPropertyIndexMap = Map.of( + "translateX", TRANSLATE_X_INDEX, + "translateY", TRANSLATE_Y_INDEX, + "scaleX", SCALE_X_INDEX, + "scaleY", SCALE_Y_INDEX, + "pivotX", PIVOT_X_INDEX, + "pivotY", PIVOT_Y_INDEX, + "rotation", ROTATION_INDEX); static int getPropertyIndex(String propertyName) { if (sPropertyIndexMap.containsKey(propertyName)) { @@ -1285,18 +1281,15 @@ public class VectorDrawable extends Drawable { } }; - private static final HashMap<String, Property> sPropertyMap = - new HashMap<String, Property>() { - { - put("translateX", TRANSLATE_X); - put("translateY", TRANSLATE_Y); - put("scaleX", SCALE_X); - put("scaleY", SCALE_Y); - put("pivotX", PIVOT_X); - put("pivotY", PIVOT_Y); - put("rotation", ROTATION); - } - }; + private static final Map<String, Property> sPropertyMap = Map.of( + "translateX", TRANSLATE_X, + "translateY", TRANSLATE_Y, + "scaleX", SCALE_X, + "scaleY", SCALE_Y, + "pivotX", PIVOT_X, + "pivotY", PIVOT_Y, + "rotation", ROTATION); + // Temp array to store transform values obtained from native. private float[] mTransform; ///////////////////////////////////////////////////// @@ -1762,19 +1755,15 @@ public class VectorDrawable extends Drawable { private static final int NATIVE_ALLOCATION_SIZE = 264; // Property map for animatable attributes. - private final static HashMap<String, Integer> sPropertyIndexMap - = new HashMap<String, Integer> () { - { - put("strokeWidth", STROKE_WIDTH_INDEX); - put("strokeColor", STROKE_COLOR_INDEX); - put("strokeAlpha", STROKE_ALPHA_INDEX); - put("fillColor", FILL_COLOR_INDEX); - put("fillAlpha", FILL_ALPHA_INDEX); - put("trimPathStart", TRIM_PATH_START_INDEX); - put("trimPathEnd", TRIM_PATH_END_INDEX); - put("trimPathOffset", TRIM_PATH_OFFSET_INDEX); - } - }; + private static final Map<String, Integer> sPropertyIndexMap = Map.of( + "strokeWidth", STROKE_WIDTH_INDEX, + "strokeColor", STROKE_COLOR_INDEX, + "strokeAlpha", STROKE_ALPHA_INDEX, + "fillColor", FILL_COLOR_INDEX, + "fillAlpha", FILL_ALPHA_INDEX, + "trimPathStart", TRIM_PATH_START_INDEX, + "trimPathEnd", TRIM_PATH_END_INDEX, + "trimPathOffset", TRIM_PATH_OFFSET_INDEX); // Below are the Properties that wrap the setters to avoid reflection overhead in animations private static final Property<VFullPath, Float> STROKE_WIDTH = @@ -1881,19 +1870,15 @@ public class VectorDrawable extends Drawable { } }; - private final static HashMap<String, Property> sPropertyMap - = new HashMap<String, Property> () { - { - put("strokeWidth", STROKE_WIDTH); - put("strokeColor", STROKE_COLOR); - put("strokeAlpha", STROKE_ALPHA); - put("fillColor", FILL_COLOR); - put("fillAlpha", FILL_ALPHA); - put("trimPathStart", TRIM_PATH_START); - put("trimPathEnd", TRIM_PATH_END); - put("trimPathOffset", TRIM_PATH_OFFSET); - } - }; + private static final Map<String, Property> sPropertyMap = Map.of( + "strokeWidth", STROKE_WIDTH, + "strokeColor", STROKE_COLOR, + "strokeAlpha", STROKE_ALPHA, + "fillColor", FILL_COLOR, + "fillAlpha", FILL_ALPHA, + "trimPathStart", TRIM_PATH_START, + "trimPathEnd", TRIM_PATH_END, + "trimPathOffset", TRIM_PATH_OFFSET); // Temp array to store property data obtained from native getter. private byte[] mPropertyData; diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index 30fae1d12d44..c3e605e396f3 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -2325,10 +2325,9 @@ public class AudioManager { return AudioSystem.SUCCESS; } - private final Map<Integer, Object> mDevRoleForCapturePresetListeners = new HashMap<>(){{ - put(AudioSystem.DEVICE_ROLE_PREFERRED, - new DevRoleListeners<OnPreferredDevicesForCapturePresetChangedListener>()); - }}; + private final Map<Integer, Object> mDevRoleForCapturePresetListeners = Map.of( + AudioSystem.DEVICE_ROLE_PREFERRED, + new DevRoleListeners<OnPreferredDevicesForCapturePresetChangedListener>()); private class DevRoleListenerInfo<T> { final @NonNull Executor mExecutor; @@ -6483,15 +6482,17 @@ public class AudioManager { // AudioPort implementation // - static final int AUDIOPORT_GENERATION_INIT = 0; - static Integer sAudioPortGeneration = new Integer(AUDIOPORT_GENERATION_INIT); - static ArrayList<AudioPort> sAudioPortsCached = new ArrayList<AudioPort>(); - static ArrayList<AudioPort> sPreviousAudioPortsCached = new ArrayList<AudioPort>(); - static ArrayList<AudioPatch> sAudioPatchesCached = new ArrayList<AudioPatch>(); + private static final int AUDIOPORT_GENERATION_INIT = 0; + private static Object sAudioPortGenerationLock = new Object(); + @GuardedBy("sAudioPortGenerationLock") + private static int sAudioPortGeneration = AUDIOPORT_GENERATION_INIT; + private static ArrayList<AudioPort> sAudioPortsCached = new ArrayList<AudioPort>(); + private static ArrayList<AudioPort> sPreviousAudioPortsCached = new ArrayList<AudioPort>(); + private static ArrayList<AudioPatch> sAudioPatchesCached = new ArrayList<AudioPatch>(); static int resetAudioPortGeneration() { int generation; - synchronized (sAudioPortGeneration) { + synchronized (sAudioPortGenerationLock) { generation = sAudioPortGeneration; sAudioPortGeneration = AUDIOPORT_GENERATION_INIT; } @@ -6501,7 +6502,7 @@ public class AudioManager { static int updateAudioPortCache(ArrayList<AudioPort> ports, ArrayList<AudioPatch> patches, ArrayList<AudioPort> previousPorts) { sAudioPortEventHandler.init(); - synchronized (sAudioPortGeneration) { + synchronized (sAudioPortGenerationLock) { if (sAudioPortGeneration == AUDIOPORT_GENERATION_INIT) { int[] patchGeneration = new int[1]; diff --git a/media/java/android/media/AudioMetadata.java b/media/java/android/media/AudioMetadata.java index ca175b4853a6..0f962f9e9d4b 100644 --- a/media/java/android/media/AudioMetadata.java +++ b/media/java/android/media/AudioMetadata.java @@ -30,6 +30,7 @@ import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.HashMap; import java.util.HashSet; +import java.util.Map; import java.util.Objects; import java.util.Set; @@ -446,14 +447,13 @@ public final class AudioMetadata { // BaseMap is corresponding to audio_utils::metadata::Data private static final int AUDIO_METADATA_OBJ_TYPE_BASEMAP = 6; - private static final HashMap<Class, Integer> AUDIO_METADATA_OBJ_TYPES = new HashMap<>() {{ - put(Integer.class, AUDIO_METADATA_OBJ_TYPE_INT); - put(Long.class, AUDIO_METADATA_OBJ_TYPE_LONG); - put(Float.class, AUDIO_METADATA_OBJ_TYPE_FLOAT); - put(Double.class, AUDIO_METADATA_OBJ_TYPE_DOUBLE); - put(String.class, AUDIO_METADATA_OBJ_TYPE_STRING); - put(BaseMap.class, AUDIO_METADATA_OBJ_TYPE_BASEMAP); - }}; + private static final Map<Class, Integer> AUDIO_METADATA_OBJ_TYPES = Map.of( + Integer.class, AUDIO_METADATA_OBJ_TYPE_INT, + Long.class, AUDIO_METADATA_OBJ_TYPE_LONG, + Float.class, AUDIO_METADATA_OBJ_TYPE_FLOAT, + Double.class, AUDIO_METADATA_OBJ_TYPE_DOUBLE, + String.class, AUDIO_METADATA_OBJ_TYPE_STRING, + BaseMap.class, AUDIO_METADATA_OBJ_TYPE_BASEMAP); private static final Charset AUDIO_METADATA_CHARSET = StandardCharsets.UTF_8; @@ -634,8 +634,8 @@ public final class AudioMetadata { * Datum corresponds to Object ****************************************************************************************/ - private static final HashMap<Integer, DataPackage<?>> DATA_PACKAGES = new HashMap<>() {{ - put(AUDIO_METADATA_OBJ_TYPE_INT, new DataPackage<Integer>() { + private static final Map<Integer, DataPackage<?>> DATA_PACKAGES = Map.of( + AUDIO_METADATA_OBJ_TYPE_INT, new DataPackage<Integer>() { @Override @Nullable public Integer unpack(ByteBuffer buffer) { @@ -647,8 +647,8 @@ public final class AudioMetadata { output.putInt(obj); return true; } - }); - put(AUDIO_METADATA_OBJ_TYPE_LONG, new DataPackage<Long>() { + }, + AUDIO_METADATA_OBJ_TYPE_LONG, new DataPackage<Long>() { @Override @Nullable public Long unpack(ByteBuffer buffer) { @@ -660,8 +660,8 @@ public final class AudioMetadata { output.putLong(obj); return true; } - }); - put(AUDIO_METADATA_OBJ_TYPE_FLOAT, new DataPackage<Float>() { + }, + AUDIO_METADATA_OBJ_TYPE_FLOAT, new DataPackage<Float>() { @Override @Nullable public Float unpack(ByteBuffer buffer) { @@ -673,8 +673,8 @@ public final class AudioMetadata { output.putFloat(obj); return true; } - }); - put(AUDIO_METADATA_OBJ_TYPE_DOUBLE, new DataPackage<Double>() { + }, + AUDIO_METADATA_OBJ_TYPE_DOUBLE, new DataPackage<Double>() { @Override @Nullable public Double unpack(ByteBuffer buffer) { @@ -686,8 +686,8 @@ public final class AudioMetadata { output.putDouble(obj); return true; } - }); - put(AUDIO_METADATA_OBJ_TYPE_STRING, new DataPackage<String>() { + }, + AUDIO_METADATA_OBJ_TYPE_STRING, new DataPackage<String>() { @Override @Nullable public String unpack(ByteBuffer buffer) { @@ -713,9 +713,9 @@ public final class AudioMetadata { output.put(valueArr); return true; } - }); - put(AUDIO_METADATA_OBJ_TYPE_BASEMAP, new BaseMapPackage()); - }}; + }, + AUDIO_METADATA_OBJ_TYPE_BASEMAP, new BaseMapPackage()); + // ObjectPackage is a special case that it is expected to unpack audio_utils::metadata::Datum, // which contains data type and data size besides the payload for the data. private static final ObjectPackage OBJECT_PACKAGE = new ObjectPackage(); diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java index 85cd342b5e11..d51f1e1327bd 100644 --- a/media/java/android/media/AudioTrack.java +++ b/media/java/android/media/AudioTrack.java @@ -48,8 +48,8 @@ import java.lang.ref.WeakReference; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.NioUtils; -import java.util.HashMap; import java.util.LinkedList; +import java.util.Map; import java.util.Objects; import java.util.concurrent.Executor; @@ -1867,26 +1867,24 @@ public class AudioTrack extends PlayerBase } // General pair map - private static final HashMap<String, Integer> CHANNEL_PAIR_MAP = new HashMap<>() {{ - put("front", AudioFormat.CHANNEL_OUT_FRONT_LEFT - | AudioFormat.CHANNEL_OUT_FRONT_RIGHT); - put("back", AudioFormat.CHANNEL_OUT_BACK_LEFT - | AudioFormat.CHANNEL_OUT_BACK_RIGHT); - put("front of center", AudioFormat.CHANNEL_OUT_FRONT_LEFT_OF_CENTER - | AudioFormat.CHANNEL_OUT_FRONT_RIGHT_OF_CENTER); - put("side", AudioFormat.CHANNEL_OUT_SIDE_LEFT - | AudioFormat.CHANNEL_OUT_SIDE_RIGHT); - put("top front", AudioFormat.CHANNEL_OUT_TOP_FRONT_LEFT - | AudioFormat.CHANNEL_OUT_TOP_FRONT_RIGHT); - put("top back", AudioFormat.CHANNEL_OUT_TOP_BACK_LEFT - | AudioFormat.CHANNEL_OUT_TOP_BACK_RIGHT); - put("top side", AudioFormat.CHANNEL_OUT_TOP_SIDE_LEFT - | AudioFormat.CHANNEL_OUT_TOP_SIDE_RIGHT); - put("bottom front", AudioFormat.CHANNEL_OUT_BOTTOM_FRONT_LEFT - | AudioFormat.CHANNEL_OUT_BOTTOM_FRONT_RIGHT); - put("front wide", AudioFormat.CHANNEL_OUT_FRONT_WIDE_LEFT - | AudioFormat.CHANNEL_OUT_FRONT_WIDE_RIGHT); - }}; + private static final Map<String, Integer> CHANNEL_PAIR_MAP = Map.of( + "front", AudioFormat.CHANNEL_OUT_FRONT_LEFT + | AudioFormat.CHANNEL_OUT_FRONT_RIGHT, + "back", AudioFormat.CHANNEL_OUT_BACK_LEFT + | AudioFormat.CHANNEL_OUT_BACK_RIGHT, + "front of center", AudioFormat.CHANNEL_OUT_FRONT_LEFT_OF_CENTER + | AudioFormat.CHANNEL_OUT_FRONT_RIGHT_OF_CENTER, + "side", AudioFormat.CHANNEL_OUT_SIDE_LEFT | AudioFormat.CHANNEL_OUT_SIDE_RIGHT, + "top front", AudioFormat.CHANNEL_OUT_TOP_FRONT_LEFT + | AudioFormat.CHANNEL_OUT_TOP_FRONT_RIGHT, + "top back", AudioFormat.CHANNEL_OUT_TOP_BACK_LEFT + | AudioFormat.CHANNEL_OUT_TOP_BACK_RIGHT, + "top side", AudioFormat.CHANNEL_OUT_TOP_SIDE_LEFT + | AudioFormat.CHANNEL_OUT_TOP_SIDE_RIGHT, + "bottom front", AudioFormat.CHANNEL_OUT_BOTTOM_FRONT_LEFT + | AudioFormat.CHANNEL_OUT_BOTTOM_FRONT_RIGHT, + "front wide", AudioFormat.CHANNEL_OUT_FRONT_WIDE_LEFT + | AudioFormat.CHANNEL_OUT_FRONT_WIDE_RIGHT); /** * Convenience method to check that the channel configuration (a.k.a channel mask) is supported @@ -1924,7 +1922,7 @@ public class AudioTrack extends PlayerBase return false; } // Check all pairs to see that they are matched (front duplicated here). - for (HashMap.Entry<String, Integer> e : CHANNEL_PAIR_MAP.entrySet()) { + for (Map.Entry<String, Integer> e : CHANNEL_PAIR_MAP.entrySet()) { final int positionPair = e.getValue(); if ((channelConfig & positionPair) != 0 && (channelConfig & positionPair) != positionPair) { diff --git a/media/java/android/media/ExifInterface.java b/media/java/android/media/ExifInterface.java index e18642ce9856..62d14e155f57 100644 --- a/media/java/android/media/ExifInterface.java +++ b/media/java/android/media/ExifInterface.java @@ -70,6 +70,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.Locale; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.TimeZone; import java.util.regex.Matcher; @@ -4833,12 +4834,13 @@ public class ExifInterface { for (int i = 1; i < entryValues.length; ++i) { final Pair<Integer, Integer> guessDataFormat = guessDataFormat(entryValues[i]); int first = -1, second = -1; - if (guessDataFormat.first == dataFormat.first - || guessDataFormat.second == dataFormat.first) { + if (Objects.equals(guessDataFormat.first, dataFormat.first) + || Objects.equals(guessDataFormat.second, dataFormat.first)) { first = dataFormat.first; } - if (dataFormat.second != -1 && (guessDataFormat.first == dataFormat.second - || guessDataFormat.second == dataFormat.second)) { + if (dataFormat.second != -1 + && (Objects.equals(guessDataFormat.first, dataFormat.second) + || Objects.equals(guessDataFormat.second, dataFormat.second))) { second = dataFormat.second; } if (first == -1 && second == -1) { diff --git a/media/java/android/media/MediaHTTPService.java b/media/java/android/media/MediaHTTPService.java index 3008067daefb..2342a426e77c 100644 --- a/media/java/android/media/MediaHTTPService.java +++ b/media/java/android/media/MediaHTTPService.java @@ -21,6 +21,8 @@ import android.compat.annotation.UnsupportedAppUsage; import android.os.IBinder; import android.util.Log; +import com.android.internal.annotations.GuardedBy; + import java.net.CookieHandler; import java.net.CookieManager; import java.net.CookieStore; @@ -31,7 +33,9 @@ import java.util.List; public class MediaHTTPService extends IMediaHTTPService.Stub { private static final String TAG = "MediaHTTPService"; @Nullable private List<HttpCookie> mCookies; - private Boolean mCookieStoreInitialized = new Boolean(false); + private final Object mCookieStoreInitializedLock = new Object(); + @GuardedBy("mCookieStoreInitializedLock") + private boolean mCookieStoreInitialized = false; public MediaHTTPService(@Nullable List<HttpCookie> cookies) { mCookies = cookies; @@ -40,7 +44,7 @@ public class MediaHTTPService extends IMediaHTTPService.Stub { public IMediaHTTPConnection makeHTTPConnection() { - synchronized (mCookieStoreInitialized) { + synchronized (mCookieStoreInitializedLock) { // Only need to do it once for all connections if ( !mCookieStoreInitialized ) { CookieHandler cookieHandler = CookieHandler.getDefault(); @@ -78,8 +82,8 @@ public class MediaHTTPService extends IMediaHTTPService.Stub { Log.v(TAG, "makeHTTPConnection(" + this + "): cookieHandler: " + cookieHandler + " Cookies: " + mCookies); - } // mCookieStoreInitialized - } // synchronized + } + } return new MediaHTTPConnection(); } diff --git a/media/java/android/media/MediaPlayer.java b/media/java/android/media/MediaPlayer.java index 737bc344c033..a9cbffb54b49 100644 --- a/media/java/android/media/MediaPlayer.java +++ b/media/java/android/media/MediaPlayer.java @@ -2473,6 +2473,8 @@ public class MediaPlayer extends PlayerBase * * @see android.media.MediaPlayer#getTrackInfo */ + // The creator needs to be pulic, which requires removing the @UnsupportedAppUsage + @SuppressWarnings("ParcelableCreator") static public class TrackInfo implements Parcelable { /** * Gets the track type. diff --git a/media/java/android/media/tv/tuner/dvr/DvrRecorder.java b/media/java/android/media/tv/tuner/dvr/DvrRecorder.java index e72026aab992..1aae8f413559 100644 --- a/media/java/android/media/tv/tuner/dvr/DvrRecorder.java +++ b/media/java/android/media/tv/tuner/dvr/DvrRecorder.java @@ -27,6 +27,7 @@ import android.os.ParcelFileDescriptor; import android.os.Process; import android.util.Log; +import com.android.internal.annotations.GuardedBy; import com.android.internal.util.FrameworkStatsLog; import java.util.concurrent.Executor; @@ -47,7 +48,9 @@ public class DvrRecorder implements AutoCloseable { private static int sInstantId = 0; private int mSegmentId = 0; private int mOverflow; - private Boolean mIsStopped = true; + private final Object mIsStoppedLock = new Object(); + @GuardedBy("mIsStoppedLock") + private boolean mIsStopped = true; private final Object mListenerLock = new Object(); private native int nativeAttachFilter(Filter filter); @@ -147,7 +150,7 @@ public class DvrRecorder implements AutoCloseable { .write(FrameworkStatsLog.TV_TUNER_DVR_STATUS, mUserId, FrameworkStatsLog.TV_TUNER_DVR_STATUS__TYPE__RECORD, FrameworkStatsLog.TV_TUNER_DVR_STATUS__STATE__STARTED, mSegmentId, 0); - synchronized (mIsStopped) { + synchronized (mIsStoppedLock) { int result = nativeStartDvr(); if (result == Tuner.RESULT_SUCCESS) { mIsStopped = false; @@ -170,7 +173,7 @@ public class DvrRecorder implements AutoCloseable { .write(FrameworkStatsLog.TV_TUNER_DVR_STATUS, mUserId, FrameworkStatsLog.TV_TUNER_DVR_STATUS__TYPE__RECORD, FrameworkStatsLog.TV_TUNER_DVR_STATUS__STATE__STOPPED, mSegmentId, mOverflow); - synchronized (mIsStopped) { + synchronized (mIsStoppedLock) { int result = nativeStopDvr(); if (result == Tuner.RESULT_SUCCESS) { mIsStopped = true; @@ -188,7 +191,7 @@ public class DvrRecorder implements AutoCloseable { */ @Result public int flush() { - synchronized (mIsStopped) { + synchronized (mIsStoppedLock) { if (mIsStopped) { return nativeFlushDvr(); } diff --git a/media/java/android/mtp/MtpPropertyGroup.java b/media/java/android/mtp/MtpPropertyGroup.java index aff2e1b4cf31..89e5e0d783ff 100644 --- a/media/java/android/mtp/MtpPropertyGroup.java +++ b/media/java/android/mtp/MtpPropertyGroup.java @@ -230,7 +230,7 @@ class MtpPropertyGroup { case MtpConstants.PROPERTY_PERSISTENT_UID: // The persistent uid must be unique and never reused among all objects, // and remain the same between sessions. - long puid = (object.getPath().toString().hashCode() << 32) + long puid = (((long) object.getPath().toString().hashCode()) << 32) + object.getModifiedTime(); list.append(id, property.code, property.type, puid); break; diff --git a/media/mca/effect/java/android/media/effect/EffectFactory.java b/media/mca/effect/java/android/media/effect/EffectFactory.java index f6fcba71e339..cbb273608ad7 100644 --- a/media/mca/effect/java/android/media/effect/EffectFactory.java +++ b/media/mca/effect/java/android/media/effect/EffectFactory.java @@ -486,11 +486,9 @@ public class EffectFactory { private Effect instantiateEffect(Class effectClass, String name) { // Make sure this is an Effect subclass - try { - effectClass.asSubclass(Effect.class); - } catch (ClassCastException e) { + if (!Effect.class.isAssignableFrom(effectClass)) { throw new IllegalArgumentException("Attempting to allocate effect '" + effectClass - + "' which is not a subclass of Effect!", e); + + "' which is not a subclass of Effect!"); } // Look for the correct constructor diff --git a/media/mca/filterfw/java/android/filterfw/core/Filter.java b/media/mca/filterfw/java/android/filterfw/core/Filter.java index a608ef5be3f4..e82c046b7390 100644 --- a/media/mca/filterfw/java/android/filterfw/core/Filter.java +++ b/media/mca/filterfw/java/android/filterfw/core/Filter.java @@ -90,9 +90,7 @@ public abstract class Filter { return false; } // Then make sure it's a subclass of Filter. - try { - filterClass.asSubclass(Filter.class); - } catch (ClassCastException e) { + if (!Filter.class.isAssignableFrom(filterClass)) { return false; } return true; diff --git a/media/mca/filterfw/java/android/filterfw/core/FilterFactory.java b/media/mca/filterfw/java/android/filterfw/core/FilterFactory.java index 779df990a9a5..736e51131ca1 100644 --- a/media/mca/filterfw/java/android/filterfw/core/FilterFactory.java +++ b/media/mca/filterfw/java/android/filterfw/core/FilterFactory.java @@ -112,9 +112,7 @@ public class FilterFactory { public Filter createFilterByClass(Class filterClass, String filterName) { // Make sure this is a Filter subclass - try { - filterClass.asSubclass(Filter.class); - } catch (ClassCastException e) { + if (!Filter.class.isAssignableFrom(filterClass)) { throw new IllegalArgumentException("Attempting to allocate class '" + filterClass + "' which is not a subclass of Filter!"); } diff --git a/media/mca/filterfw/java/android/filterfw/core/KeyValueMap.java b/media/mca/filterfw/java/android/filterfw/core/KeyValueMap.java index 8cf9a13438e5..6ff1885fa8eb 100644 --- a/media/mca/filterfw/java/android/filterfw/core/KeyValueMap.java +++ b/media/mca/filterfw/java/android/filterfw/core/KeyValueMap.java @@ -55,12 +55,12 @@ public class KeyValueMap extends HashMap<String, Object> { public int getInt(String key) { Object result = get(key); - return result != null ? (Integer)result : null; + return result != null ? (Integer) result : 0; } public float getFloat(String key) { Object result = get(key); - return result != null ? (Float)result : null; + return result != null ? (Float) result : 0; } @Override diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/performance/MediaPlayerPerformance.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/performance/MediaPlayerPerformance.java index c52816571ffb..8c05725a9ef1 100644 --- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/performance/MediaPlayerPerformance.java +++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/performance/MediaPlayerPerformance.java @@ -296,7 +296,7 @@ public class MediaPlayerPerformance extends ActivityInstrumentationTestCase2<Med mMemWriter.write("End Memory :" + mEndMemory + "\n"); } } catch (Exception e) { - e.toString(); + // TODO } } diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/CameraMetadataTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/CameraMetadataTest.java index 39add7ea8a42..c814eba7d187 100644 --- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/CameraMetadataTest.java +++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/CameraMetadataTest.java @@ -264,8 +264,14 @@ public class CameraMetadataTest extends junit.framework.TestCase { builder.append("**"); } - if (elem instanceof Number) { - builder.append(String.format("%x", elem)); + if (elem instanceof Byte) { + builder.append(String.format("%x", (Byte) elem)); + } else if (elem instanceof Short) { + builder.append(String.format("%x", (Short) elem)); + } else if (elem instanceof Integer) { + builder.append(String.format("%x", (Integer) elem)); + } else if (elem instanceof Long) { + builder.append(String.format("%x", (Long) elem)); } else { builder.append(elem); } diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/MediaPlayerGetCurrentPositionStateUnitTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/MediaPlayerGetCurrentPositionStateUnitTest.java index fd1c2d3e8e94..37dd4b5330c5 100644 --- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/MediaPlayerGetCurrentPositionStateUnitTest.java +++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/MediaPlayerGetCurrentPositionStateUnitTest.java @@ -18,7 +18,7 @@ package com.android.mediaframeworktest.unit; import android.media.MediaPlayer; import android.test.AndroidTestCase; -import android.test.suitebuilder.annotation.LargeTest;; +import android.test.suitebuilder.annotation.LargeTest; /** * Unit test class to test the set of valid and invalid states that diff --git a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java index a3aa0100870a..77f37d014010 100644 --- a/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java +++ b/packages/CompanionDeviceManager/src/com/android/companiondevicemanager/CompanionDeviceActivity.java @@ -193,6 +193,7 @@ public class CompanionDeviceActivity extends FragmentActivity implements initUI(); } + @SuppressWarnings("MissingSuperCall") // TODO: Fix me @Override protected void onNewIntent(Intent intent) { // Handle another incoming request (while we are not done with the original - mRequest - diff --git a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/google/CloudPrintPlugin.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/google/CloudPrintPlugin.java index 93e6271319f6..3029d10d4cf3 100644 --- a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/google/CloudPrintPlugin.java +++ b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/google/CloudPrintPlugin.java @@ -55,18 +55,15 @@ public class CloudPrintPlugin implements PrintServicePlugin { private static final String PRIVET_SERVICE = "_privet._tcp"; /** The required mDNS service types */ - private static final Set<String> PRINTER_SERVICE_TYPE = new HashSet<String>() {{ - // Not checking _printer_._sub - add(PRIVET_SERVICE); - }}; + private static final Set<String> PRINTER_SERVICE_TYPE = Set.of( + PRIVET_SERVICE); // Not checking _printer_._sub /** All possible connection states */ - private static final Set<String> POSSIBLE_CONNECTION_STATES = new HashSet<String>() {{ - add("online"); - add("offline"); - add("connecting"); - add("not-configured"); - }}; + private static final Set<String> POSSIBLE_CONNECTION_STATES = Set.of( + "online", + "offline", + "connecting", + "not-configured"); private static final byte SUPPORTED_TXTVERS = '1'; diff --git a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java index 34e7e3d1cd6b..0c5de2741d1b 100644 --- a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java +++ b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/mdnsFilter/MDNSFilterPlugin.java @@ -37,9 +37,7 @@ import java.util.Set; public class MDNSFilterPlugin implements PrintServicePlugin { /** The mDNS service types supported */ - private static final Set<String> PRINTER_SERVICE_TYPES = new HashSet<String>() {{ - add("_ipp._tcp"); - }}; + private static final Set<String> PRINTER_SERVICE_TYPES = Set.of("_ipp._tcp"); /** * The printer filter for {@link MDNSFilteredDiscovery} passing only mDNS results diff --git a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterMopria.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterMopria.java index d03bb1d76003..b9983c306289 100644 --- a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterMopria.java +++ b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterMopria.java @@ -23,7 +23,6 @@ import android.util.Log; import com.android.printservice.recommendation.util.MDNSFilteredDiscovery; import com.android.printservice.recommendation.util.MDNSUtils; -import java.util.HashSet; import java.util.Set; /** @@ -32,10 +31,7 @@ import java.util.Set; class PrinterFilterMopria implements MDNSFilteredDiscovery.PrinterFilter { private static final String TAG = "PrinterFilterMopria"; - static final Set<String> MOPRIA_MDNS_SERVICES = new HashSet<String>() {{ - add("_ipp._tcp"); - add("_ipps._tcp"); - }}; + static final Set<String> MOPRIA_MDNS_SERVICES = Set.of("_ipp._tcp", "_ipps._tcp"); private static final String PDL__PDF = "application/pdf"; private static final String PDL__PCLM = "application/PCLm"; diff --git a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterSamsung.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterSamsung.java index b9b90988c37b..680dd84a25df 100644 --- a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterSamsung.java +++ b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/PrinterFilterSamsung.java @@ -25,7 +25,6 @@ import androidx.annotation.NonNull; import com.android.printservice.recommendation.util.MDNSFilteredDiscovery; import com.android.printservice.recommendation.util.MDNSUtils; -import java.util.HashSet; import java.util.Locale; import java.util.Map; import java.util.Set; @@ -36,9 +35,7 @@ import java.util.Set; class PrinterFilterSamsung implements MDNSFilteredDiscovery.PrinterFilter { private static final String TAG = "PrinterFilterSamsung"; - static final Set<String> SAMSUNG_MDNS_SERVICES = new HashSet<String>() {{ - add("_pdl-datastream._tcp"); - }}; + static final Set<String> SAMSUNG_MDNS_SERVICES = Set.of("_pdl-datastream._tcp"); private static final String[] NOT_SUPPORTED_MODELS = new String[]{ "SCX-5x15", @@ -57,9 +54,7 @@ class PrinterFilterSamsung implements MDNSFilteredDiscovery.PrinterFilter { private static final String ATTR_PRODUCT = "product"; private static final String ATTR_TY = "ty"; - private static Set<String> SAMUNG_VENDOR_SET = new HashSet<String>() {{ - add("samsung"); - }}; + private static final Set<String> SAMUNG_VENDOR_SET = Set.of("samsung"); @Override public boolean matchesCriteria(NsdServiceInfo nsdServiceInfo) { diff --git a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/SamsungRecommendationPlugin.java b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/SamsungRecommendationPlugin.java index ae1bdcedaabb..cbd5833925b8 100644 --- a/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/SamsungRecommendationPlugin.java +++ b/packages/PrintRecommendationService/src/com/android/printservice/recommendation/plugin/samsung/SamsungRecommendationPlugin.java @@ -29,10 +29,11 @@ import java.util.HashSet; import java.util.Set; public class SamsungRecommendationPlugin implements PrintServicePlugin { - private static final Set<String> ALL_MDNS_SERVICES = new HashSet<String>() {{ - addAll(PrinterFilterMopria.MOPRIA_MDNS_SERVICES); - addAll(PrinterFilterSamsung.SAMSUNG_MDNS_SERVICES); - }}; + private static final Set<String> ALL_MDNS_SERVICES = new HashSet<String>(); + static { + ALL_MDNS_SERVICES.addAll(PrinterFilterMopria.MOPRIA_MDNS_SERVICES); + ALL_MDNS_SERVICES.addAll(PrinterFilterSamsung.SAMSUNG_MDNS_SERVICES); + } private final @NonNull Context mContext; private final @NonNull MDNSFilteredDiscovery mMDNSFilteredDiscovery; diff --git a/packages/PrintSpooler/src/com/android/printspooler/widget/PrintContentView.java b/packages/PrintSpooler/src/com/android/printspooler/widget/PrintContentView.java index 00b3736f8d6b..b0aa8f19f24b 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/widget/PrintContentView.java +++ b/packages/PrintSpooler/src/com/android/printspooler/widget/PrintContentView.java @@ -402,7 +402,7 @@ public final class PrintContentView extends ViewGroup implements View.OnClickLis @Override public void onViewPositionChanged(View changedView, int left, int top, int dx, int dy) { - if ((isOptionsClosed() || isOptionsClosed()) && dy <= 0) { + if (isOptionsClosed() && dy <= 0) { return; } diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothDiscoverableTimeoutReceiver.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothDiscoverableTimeoutReceiver.java index 6ce72bbc6909..3af64e2889e7 100644 --- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothDiscoverableTimeoutReceiver.java +++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothDiscoverableTimeoutReceiver.java @@ -82,4 +82,4 @@ public class BluetoothDiscoverableTimeoutReceiver extends BroadcastReceiver { Log.e(TAG, "localBluetoothAdapter is NULL!!"); } } -}; +} diff --git a/packages/SystemUI/src/com/android/systemui/fragments/ExtensionFragmentListener.java b/packages/SystemUI/src/com/android/systemui/fragments/ExtensionFragmentListener.java index 18fb423b87a5..d9bcb508c8e2 100644 --- a/packages/SystemUI/src/com/android/systemui/fragments/ExtensionFragmentListener.java +++ b/packages/SystemUI/src/com/android/systemui/fragments/ExtensionFragmentListener.java @@ -50,13 +50,12 @@ public class ExtensionFragmentListener<T extends FragmentBase> implements Consum @Override public void accept(T extension) { - try { - Fragment.class.cast(extension); + if (Fragment.class.isInstance(extension)) { mFragmentHostManager.getExtensionManager().setCurrentExtension(mId, mTag, mOldClass, extension.getClass().getName(), mExtension.getContext()); mOldClass = extension.getClass().getName(); - } catch (ClassCastException e) { - Log.e(TAG, extension.getClass().getName() + " must be a Fragment", e); + } else { + Log.e(TAG, extension.getClass().getName() + " must be a Fragment"); } mExtension.clearItem(true); } diff --git a/packages/SystemUI/src/com/android/systemui/people/PeopleTileViewHelper.java b/packages/SystemUI/src/com/android/systemui/people/PeopleTileViewHelper.java index 00aa1381ace1..7f16a6b9166b 100644 --- a/packages/SystemUI/src/com/android/systemui/people/PeopleTileViewHelper.java +++ b/packages/SystemUI/src/com/android/systemui/people/PeopleTileViewHelper.java @@ -1093,7 +1093,7 @@ public class PeopleTileViewHelper { Pair<Integer, Integer> first = emojiIndices.get(i - 1); // Check if second emoji starts right after first starts - if (second.first == first.second) { + if (Objects.equals(second.first, first.second)) { // Check if emojis in sequence are the same if (Objects.equals(emojiTexts.get(i), emojiTexts.get(i - 1))) { if (DEBUG) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java index 9fbd5c39dedd..61236630194f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/logging/NotificationLogger.java @@ -56,6 +56,7 @@ import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.concurrent.Executor; import javax.inject.Inject; @@ -592,7 +593,7 @@ public class NotificationLogger implements StateListener { return; } if (loggedExpansionState != null - && state.mIsExpanded == loggedExpansionState) { + && Objects.equals(state.mIsExpanded, loggedExpansionState)) { return; } mLoggedExpansionState.put(key, state.mIsExpanded); diff --git a/packages/SystemUI/tests/src/com/android/systemui/screenshot/ImageExporterTest.java b/packages/SystemUI/tests/src/com/android/systemui/screenshot/ImageExporterTest.java index 7d563399ee1c..8a6895e5a80b 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/screenshot/ImageExporterTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/screenshot/ImageExporterTest.java @@ -65,7 +65,7 @@ public class ImageExporterTest extends SysuiTestCase { private static final byte[] EXIF_FILE_TAG = "Exif\u0000\u0000".getBytes(US_ASCII); private static final ZonedDateTime CAPTURE_TIME = - ZonedDateTime.of(LocalDateTime.of(2020, 12, 15, 13, 15), ZoneId.of("EST")); + ZonedDateTime.of(LocalDateTime.of(2020, 12, 15, 13, 15), ZoneId.of("America/New_York")); @Test public void testImageFilename() { diff --git a/services/autofill/java/com/android/server/autofill/RemoteAugmentedAutofillService.java b/services/autofill/java/com/android/server/autofill/RemoteAugmentedAutofillService.java index 8525e3634e3a..592045c23372 100644 --- a/services/autofill/java/com/android/server/autofill/RemoteAugmentedAutofillService.java +++ b/services/autofill/java/com/android/server/autofill/RemoteAugmentedAutofillService.java @@ -245,6 +245,7 @@ final class RemoteAugmentedAutofillService }); } + @SuppressWarnings("ReturnValueIgnored") private void maybeRequestShowInlineSuggestions(int sessionId, @Nullable InlineSuggestionsRequest request, @Nullable List<Dataset> inlineSuggestionsData, @Nullable Bundle clientState, diff --git a/services/backup/java/com/android/server/backup/OperationStorage.java b/services/backup/java/com/android/server/backup/OperationStorage.java index 466f647fd034..8f73436d193a 100644 --- a/services/backup/java/com/android/server/backup/OperationStorage.java +++ b/services/backup/java/com/android/server/backup/OperationStorage.java @@ -153,4 +153,4 @@ public interface OperationStorage { * @return a set of operation tokens for operations in that state. */ Set<Integer> operationTokensForOpState(@OpState int state); -}; +} diff --git a/services/backup/java/com/android/server/backup/internal/LifecycleOperationStorage.java b/services/backup/java/com/android/server/backup/internal/LifecycleOperationStorage.java index 6908c60034b6..a94167eb9fa7 100644 --- a/services/backup/java/com/android/server/backup/internal/LifecycleOperationStorage.java +++ b/services/backup/java/com/android/server/backup/internal/LifecycleOperationStorage.java @@ -353,4 +353,4 @@ public class LifecycleOperationStorage implements OperationStorage { op.callback.handleCancel(cancelAll); } } -}; +} diff --git a/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureManagerService.java b/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureManagerService.java index ff1a495edcbb..36b82f845ce3 100644 --- a/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureManagerService.java +++ b/services/contentcapture/java/com/android/server/contentcapture/ContentCaptureManagerService.java @@ -657,7 +657,6 @@ public final class ContentCaptureManagerService extends int sessionId, int flags, @NonNull IResultReceiver result) { Objects.requireNonNull(activityToken); Objects.requireNonNull(shareableActivityToken); - Objects.requireNonNull(sessionId); final int userId = UserHandle.getCallingUserId(); final ActivityPresentationInfo activityPresentationInfo = getAmInternal() @@ -676,7 +675,6 @@ public final class ContentCaptureManagerService extends @Override public void finishSession(int sessionId) { - Objects.requireNonNull(sessionId); final int userId = UserHandle.getCallingUserId(); synchronized (mLock) { diff --git a/services/core/java/com/android/server/appop/AppOpsService.java b/services/core/java/com/android/server/appop/AppOpsService.java index b56654fd7b9a..2f7f2da925dd 100644 --- a/services/core/java/com/android/server/appop/AppOpsService.java +++ b/services/core/java/com/android/server/appop/AppOpsService.java @@ -7551,7 +7551,6 @@ public class AppOpsService extends IAppOpsService.Stub { Objects.requireNonNull(stackTrace); Preconditions.checkArgument(op >= 0); Preconditions.checkArgument(op < AppOpsManager._NUM_OP); - Objects.requireNonNull(version); NoteOpTrace noteOpTrace = new NoteOpTrace(stackTrace, op, packageName, version); diff --git a/services/core/java/com/android/server/broadcastradio/hal2/Utils.java b/services/core/java/com/android/server/broadcastradio/hal2/Utils.java index 384c9bab94b4..85d796e8404d 100644 --- a/services/core/java/com/android/server/broadcastradio/hal2/Utils.java +++ b/services/core/java/com/android/server/broadcastradio/hal2/Utils.java @@ -25,7 +25,7 @@ enum FrequencyBand { AM_LW, AM_MW, AM_SW, -}; +} class Utils { private static final String TAG = "BcRadio2Srv.utils"; diff --git a/services/core/java/com/android/server/hdmi/HdmiUtils.java b/services/core/java/com/android/server/hdmi/HdmiUtils.java index ba19cf062cdf..308a0c801076 100644 --- a/services/core/java/com/android/server/hdmi/HdmiUtils.java +++ b/services/core/java/com/android/server/hdmi/HdmiUtils.java @@ -20,6 +20,8 @@ import static com.android.server.hdmi.Constants.ADDR_BACKUP_1; import static com.android.server.hdmi.Constants.ADDR_BACKUP_2; import static com.android.server.hdmi.Constants.ADDR_TV; +import static java.util.Map.entry; + import android.annotation.Nullable; import android.hardware.hdmi.HdmiControlManager; import android.hardware.hdmi.HdmiDeviceInfo; @@ -45,7 +47,6 @@ import java.io.InputStream; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; -import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; @@ -57,38 +58,34 @@ final class HdmiUtils { private static final String TAG = "HdmiUtils"; - private static final Map<Integer, List<Integer>> ADDRESS_TO_TYPE = - new HashMap<Integer, List<Integer>>() { - { - put(Constants.ADDR_TV, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TV)); - put(Constants.ADDR_RECORDER_1, - Lists.newArrayList(HdmiDeviceInfo.DEVICE_RECORDER)); - put(Constants.ADDR_RECORDER_2, - Lists.newArrayList(HdmiDeviceInfo.DEVICE_RECORDER)); - put(Constants.ADDR_TUNER_1, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)); - put(Constants.ADDR_PLAYBACK_1, - Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK)); - put(Constants.ADDR_AUDIO_SYSTEM, - Lists.newArrayList(HdmiDeviceInfo.DEVICE_AUDIO_SYSTEM)); - put(Constants.ADDR_TUNER_2, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)); - put(Constants.ADDR_TUNER_3, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)); - put(Constants.ADDR_PLAYBACK_2, - Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK)); - put(Constants.ADDR_RECORDER_3, - Lists.newArrayList(HdmiDeviceInfo.DEVICE_RECORDER)); - put(Constants.ADDR_TUNER_4, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)); - put(Constants.ADDR_PLAYBACK_3, - Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK)); - put(Constants.ADDR_BACKUP_1, Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK, - HdmiDeviceInfo.DEVICE_RECORDER, HdmiDeviceInfo.DEVICE_TUNER, - HdmiDeviceInfo.DEVICE_VIDEO_PROCESSOR)); - put(Constants.ADDR_BACKUP_2, Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK, - HdmiDeviceInfo.DEVICE_RECORDER, HdmiDeviceInfo.DEVICE_TUNER, - HdmiDeviceInfo.DEVICE_VIDEO_PROCESSOR)); - put(Constants.ADDR_SPECIFIC_USE, Lists.newArrayList(ADDR_TV)); - put(Constants.ADDR_UNREGISTERED, Collections.emptyList()); - } - }; + private static final Map<Integer, List<Integer>> ADDRESS_TO_TYPE = Map.ofEntries( + entry(Constants.ADDR_TV, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TV)), + entry(Constants.ADDR_RECORDER_1, + Lists.newArrayList(HdmiDeviceInfo.DEVICE_RECORDER)), + entry(Constants.ADDR_RECORDER_2, + Lists.newArrayList(HdmiDeviceInfo.DEVICE_RECORDER)), + entry(Constants.ADDR_TUNER_1, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)), + entry(Constants.ADDR_PLAYBACK_1, + Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK)), + entry(Constants.ADDR_AUDIO_SYSTEM, + Lists.newArrayList(HdmiDeviceInfo.DEVICE_AUDIO_SYSTEM)), + entry(Constants.ADDR_TUNER_2, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)), + entry(Constants.ADDR_TUNER_3, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)), + entry(Constants.ADDR_PLAYBACK_2, + Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK)), + entry(Constants.ADDR_RECORDER_3, + Lists.newArrayList(HdmiDeviceInfo.DEVICE_RECORDER)), + entry(Constants.ADDR_TUNER_4, Lists.newArrayList(HdmiDeviceInfo.DEVICE_TUNER)), + entry(Constants.ADDR_PLAYBACK_3, + Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK)), + entry(Constants.ADDR_BACKUP_1, Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK, + HdmiDeviceInfo.DEVICE_RECORDER, HdmiDeviceInfo.DEVICE_TUNER, + HdmiDeviceInfo.DEVICE_VIDEO_PROCESSOR)), + entry(Constants.ADDR_BACKUP_2, Lists.newArrayList(HdmiDeviceInfo.DEVICE_PLAYBACK, + HdmiDeviceInfo.DEVICE_RECORDER, HdmiDeviceInfo.DEVICE_TUNER, + HdmiDeviceInfo.DEVICE_VIDEO_PROCESSOR)), + entry(Constants.ADDR_SPECIFIC_USE, Lists.newArrayList(ADDR_TV)), + entry(Constants.ADDR_UNREGISTERED, Collections.emptyList())); private static final String[] DEFAULT_NAMES = { "TV", diff --git a/services/core/java/com/android/server/input/InputManagerService.java b/services/core/java/com/android/server/input/InputManagerService.java index 72612a0468cd..a9d747cc61e4 100644 --- a/services/core/java/com/android/server/input/InputManagerService.java +++ b/services/core/java/com/android/server/input/InputManagerService.java @@ -1799,8 +1799,8 @@ public class InputManagerService extends IInputManager.Stub */ public boolean transferTouchFocus(@NonNull IBinder fromChannelToken, @NonNull IBinder toChannelToken) { - Objects.nonNull(fromChannelToken); - Objects.nonNull(toChannelToken); + Objects.requireNonNull(fromChannelToken); + Objects.requireNonNull(toChannelToken); return mNative.transferTouchFocus(fromChannelToken, toChannelToken, false /* isDragDrop */); } diff --git a/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java b/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java index c199bb30a6d3..2d3f176f5d4d 100644 --- a/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java +++ b/services/core/java/com/android/server/location/contexthub/ContextHubTransactionManager.java @@ -519,9 +519,9 @@ import java.util.concurrent.atomic.AtomicInteger; @Override public String toString() { StringBuilder sb = new StringBuilder(100); - TransactionRecord[] arr; + ContextHubServiceTransaction[] arr; synchronized (this) { - arr = mTransactionQueue.toArray(new TransactionRecord[0]); + arr = mTransactionQueue.toArray(new ContextHubServiceTransaction[0]); } for (int i = 0; i < arr.length; i++) { sb.append(i + ": " + arr[i] + "\n"); diff --git a/services/core/java/com/android/server/location/gnss/GnssConfiguration.java b/services/core/java/com/android/server/location/gnss/GnssConfiguration.java index 12f8776a8e18..25350d0f128e 100644 --- a/services/core/java/com/android/server/location/gnss/GnssConfiguration.java +++ b/services/core/java/com/android/server/location/gnss/GnssConfiguration.java @@ -260,26 +260,24 @@ public class GnssConfiguration { Log.e(TAG, "Unable to set " + CONFIG_ES_EXTENSION_SEC + ": " + mEsExtensionSec); } - Map<String, SetCarrierProperty> map = new HashMap<String, SetCarrierProperty>() { - { - put(CONFIG_SUPL_VER, GnssConfiguration::native_set_supl_version); - put(CONFIG_SUPL_MODE, GnssConfiguration::native_set_supl_mode); + Map<String, SetCarrierProperty> map = new HashMap<String, SetCarrierProperty>(); - if (isConfigSuplEsSupported(gnssConfigurationIfaceVersion)) { - put(CONFIG_SUPL_ES, GnssConfiguration::native_set_supl_es); - } + map.put(CONFIG_SUPL_VER, GnssConfiguration::native_set_supl_version); + map.put(CONFIG_SUPL_MODE, GnssConfiguration::native_set_supl_mode); - put(CONFIG_LPP_PROFILE, GnssConfiguration::native_set_lpp_profile); - put(CONFIG_A_GLONASS_POS_PROTOCOL_SELECT, - GnssConfiguration::native_set_gnss_pos_protocol_select); - put(CONFIG_USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL, - GnssConfiguration::native_set_emergency_supl_pdn); + if (isConfigSuplEsSupported(gnssConfigurationIfaceVersion)) { + map.put(CONFIG_SUPL_ES, GnssConfiguration::native_set_supl_es); + } - if (isConfigGpsLockSupported(gnssConfigurationIfaceVersion)) { - put(CONFIG_GPS_LOCK, GnssConfiguration::native_set_gps_lock); - } - } - }; + map.put(CONFIG_LPP_PROFILE, GnssConfiguration::native_set_lpp_profile); + map.put(CONFIG_A_GLONASS_POS_PROTOCOL_SELECT, + GnssConfiguration::native_set_gnss_pos_protocol_select); + map.put(CONFIG_USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL, + GnssConfiguration::native_set_emergency_supl_pdn); + + if (isConfigGpsLockSupported(gnssConfigurationIfaceVersion)) { + map.put(CONFIG_GPS_LOCK, GnssConfiguration::native_set_gps_lock); + } for (Entry<String, SetCarrierProperty> entry : map.entrySet()) { String propertyName = entry.getKey(); diff --git a/services/core/java/com/android/server/notification/PreferencesHelper.java b/services/core/java/com/android/server/notification/PreferencesHelper.java index 477b8da61e0f..634ee7e57f50 100644 --- a/services/core/java/com/android/server/notification/PreferencesHelper.java +++ b/services/core/java/com/android/server/notification/PreferencesHelper.java @@ -852,7 +852,9 @@ public class PreferencesHelper implements RankingConfig { Objects.requireNonNull(pkg); Objects.requireNonNull(group); Objects.requireNonNull(group.getId()); - Objects.requireNonNull(!TextUtils.isEmpty(group.getName())); + if (TextUtils.isEmpty(group.getName())) { + throw new IllegalArgumentException("group.getName() can't be empty"); + } boolean needsDndChange = false; synchronized (mPackagePreferences) { PackagePreferences r = getOrCreatePackagePreferencesLocked(pkg, uid); diff --git a/services/core/java/com/android/server/pm/PerPackageReadTimeouts.java b/services/core/java/com/android/server/pm/PerPackageReadTimeouts.java index 3b306a850b64..b310c62aafb4 100644 --- a/services/core/java/com/android/server/pm/PerPackageReadTimeouts.java +++ b/services/core/java/com/android/server/pm/PerPackageReadTimeouts.java @@ -16,7 +16,7 @@ package com.android.server.pm; -import android.annotation.NonNull;; +import android.annotation.NonNull; import android.text.TextUtils; import com.android.internal.util.HexDump; diff --git a/services/core/java/com/android/server/pm/dex/DexoptUtils.java b/services/core/java/com/android/server/pm/dex/DexoptUtils.java index beea86d1b0df..d519c529a512 100644 --- a/services/core/java/com/android/server/pm/dex/DexoptUtils.java +++ b/services/core/java/com/android/server/pm/dex/DexoptUtils.java @@ -295,6 +295,7 @@ public final class DexoptUtils { * NOTE: Keep this in sync with the dexopt expectations! Right now that is either "PCL[path]" * for a PathClassLoader or "DLC[path]" for a DelegateLastClassLoader. */ + @SuppressWarnings("ReturnValueIgnored") /*package*/ static String encodeClassLoader(String classpath, String classLoaderName) { classpath.getClass(); // Throw NPE if classpath is null String classLoaderDexoptEncoding = classLoaderName; diff --git a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java index 073776f14e68..98bbcb94701a 100644 --- a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java +++ b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java @@ -86,6 +86,7 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Set; /** @@ -1924,7 +1925,7 @@ final class DefaultPermissionGrantPolicy { mPkgRequestingPerm, newRestrictionExcemptFlags, -1, mUser); } - if (newGranted != null && newGranted != mOriginalGranted) { + if (newGranted != null && !Objects.equals(newGranted, mOriginalGranted)) { if (newGranted) { NO_PM_CACHE.grantPermission(mPermission, mPkgRequestingPerm, mUser); } else { diff --git a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java index e197319707e3..eb8464e8d671 100644 --- a/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java +++ b/services/core/java/com/android/server/wallpaper/WallpaperManagerService.java @@ -1888,12 +1888,9 @@ public class WallpaperManagerService extends IWallpaperManager.Stub } } - private static final HashMap<Integer, String> sWallpaperType = new HashMap<Integer, String>() { - { - put(FLAG_SYSTEM, RECORD_FILE); - put(FLAG_LOCK, RECORD_LOCK_FILE); - } - }; + private static final Map<Integer, String> sWallpaperType = Map.of( + FLAG_SYSTEM, RECORD_FILE, + FLAG_LOCK, RECORD_LOCK_FILE); private void errorCheck(int userID) { sWallpaperType.forEach((type, filename) -> { diff --git a/services/core/java/com/android/server/wm/DisplayWindowSettings.java b/services/core/java/com/android/server/wm/DisplayWindowSettings.java index 11bcd8ca3681..a9d0e96e484f 100644 --- a/services/core/java/com/android/server/wm/DisplayWindowSettings.java +++ b/services/core/java/com/android/server/wm/DisplayWindowSettings.java @@ -436,11 +436,12 @@ class DisplayWindowSettings { mRemoveContentMode = other.mRemoveContentMode; changed = true; } - if (other.mShouldShowWithInsecureKeyguard != mShouldShowWithInsecureKeyguard) { + if (!Objects.equals( + other.mShouldShowWithInsecureKeyguard, mShouldShowWithInsecureKeyguard)) { mShouldShowWithInsecureKeyguard = other.mShouldShowWithInsecureKeyguard; changed = true; } - if (other.mShouldShowSystemDecors != mShouldShowSystemDecors) { + if (!Objects.equals(other.mShouldShowSystemDecors, mShouldShowSystemDecors)) { mShouldShowSystemDecors = other.mShouldShowSystemDecors; changed = true; } @@ -452,15 +453,15 @@ class DisplayWindowSettings { mFixedToUserRotation = other.mFixedToUserRotation; changed = true; } - if (other.mIgnoreOrientationRequest != mIgnoreOrientationRequest) { + if (!Objects.equals(other.mIgnoreOrientationRequest, mIgnoreOrientationRequest)) { mIgnoreOrientationRequest = other.mIgnoreOrientationRequest; changed = true; } - if (other.mIgnoreDisplayCutout != mIgnoreDisplayCutout) { + if (!Objects.equals(other.mIgnoreDisplayCutout, mIgnoreDisplayCutout)) { mIgnoreDisplayCutout = other.mIgnoreDisplayCutout; changed = true; } - if (other.mDontMoveToTop != mDontMoveToTop) { + if (!Objects.equals(other.mDontMoveToTop, mDontMoveToTop)) { mDontMoveToTop = other.mDontMoveToTop; changed = true; } @@ -516,14 +517,13 @@ class DisplayWindowSettings { mRemoveContentMode = delta.mRemoveContentMode; changed = true; } - if (delta.mShouldShowWithInsecureKeyguard != null - && delta.mShouldShowWithInsecureKeyguard - != mShouldShowWithInsecureKeyguard) { + if (delta.mShouldShowWithInsecureKeyguard != null && !Objects.equals( + delta.mShouldShowWithInsecureKeyguard, mShouldShowWithInsecureKeyguard)) { mShouldShowWithInsecureKeyguard = delta.mShouldShowWithInsecureKeyguard; changed = true; } - if (delta.mShouldShowSystemDecors != null - && delta.mShouldShowSystemDecors != mShouldShowSystemDecors) { + if (delta.mShouldShowSystemDecors != null && !Objects.equals( + delta.mShouldShowSystemDecors, mShouldShowSystemDecors)) { mShouldShowSystemDecors = delta.mShouldShowSystemDecors; changed = true; } @@ -537,18 +537,18 @@ class DisplayWindowSettings { mFixedToUserRotation = delta.mFixedToUserRotation; changed = true; } - if (delta.mIgnoreOrientationRequest != null - && delta.mIgnoreOrientationRequest != mIgnoreOrientationRequest) { + if (delta.mIgnoreOrientationRequest != null && !Objects.equals( + delta.mIgnoreOrientationRequest, mIgnoreOrientationRequest)) { mIgnoreOrientationRequest = delta.mIgnoreOrientationRequest; changed = true; } - if (delta.mIgnoreDisplayCutout != null - && delta.mIgnoreDisplayCutout != mIgnoreDisplayCutout) { + if (delta.mIgnoreDisplayCutout != null && !Objects.equals( + delta.mIgnoreDisplayCutout, mIgnoreDisplayCutout)) { mIgnoreDisplayCutout = delta.mIgnoreDisplayCutout; changed = true; } - if (delta.mDontMoveToTop != null - && delta.mDontMoveToTop != mDontMoveToTop) { + if (delta.mDontMoveToTop != null && !Objects.equals( + delta.mDontMoveToTop, mDontMoveToTop)) { mDontMoveToTop = delta.mDontMoveToTop; changed = true; } diff --git a/services/core/java/com/android/server/wm/WindowManagerThreadPriorityBooster.java b/services/core/java/com/android/server/wm/WindowManagerThreadPriorityBooster.java index 6f2930c46b12..1b70d1d4a8b6 100644 --- a/services/core/java/com/android/server/wm/WindowManagerThreadPriorityBooster.java +++ b/services/core/java/com/android/server/wm/WindowManagerThreadPriorityBooster.java @@ -21,7 +21,7 @@ import static android.os.Process.THREAD_PRIORITY_TOP_APP_BOOST; import static android.os.Process.myTid; import static android.os.Process.setThreadPriority; -import static com.android.server.LockGuard.INDEX_WINDOW;; +import static com.android.server.LockGuard.INDEX_WINDOW; import com.android.internal.annotations.GuardedBy; import com.android.server.AnimationThread; diff --git a/services/people/java/com/android/server/people/PeopleService.java b/services/people/java/com/android/server/people/PeopleService.java index eab3b770a94a..292320e498a3 100644 --- a/services/people/java/com/android/server/people/PeopleService.java +++ b/services/people/java/com/android/server/people/PeopleService.java @@ -53,6 +53,7 @@ import com.android.server.people.data.DataManager; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.function.Consumer; /** @@ -372,7 +373,8 @@ public class PeopleService extends SystemService { @Override public boolean equals(Object o) { ListenerKey key = (ListenerKey) o; - return key.getPackageName().equals(mPackageName) && key.getUserId() == mUserId + return key.getPackageName().equals(mPackageName) + && Objects.equals(key.getUserId(), mUserId) && key.getShortcutId().equals(mShortcutId); } diff --git a/services/tests/servicestests/src/com/android/server/camera/CameraServiceProxyTest.java b/services/tests/servicestests/src/com/android/server/camera/CameraServiceProxyTest.java index ea746d1f4fd3..faad961510d6 100644 --- a/services/tests/servicestests/src/com/android/server/camera/CameraServiceProxyTest.java +++ b/services/tests/servicestests/src/com/android/server/camera/CameraServiceProxyTest.java @@ -30,7 +30,7 @@ import android.hardware.camera2.CameraMetadata; import android.view.Display; import android.view.Surface; -import java.util.HashMap; +import java.util.Map; @RunWith(JUnit4.class) public class CameraServiceProxyTest { @@ -75,24 +75,22 @@ public class CameraServiceProxyTest { /*ignoreResizableAndSdkCheck*/true)).isEqualTo( CameraMetadata.SCALER_ROTATE_AND_CROP_NONE); // Check rotation and lens facing combinations - HashMap<Integer, Integer> backFacingMap = new HashMap<Integer, Integer>() {{ - put(Surface.ROTATION_0, CameraMetadata.SCALER_ROTATE_AND_CROP_NONE); - put(Surface.ROTATION_90, CameraMetadata.SCALER_ROTATE_AND_CROP_90); - put(Surface.ROTATION_270, CameraMetadata.SCALER_ROTATE_AND_CROP_270); - put(Surface.ROTATION_180, CameraMetadata.SCALER_ROTATE_AND_CROP_180); - }}; + Map<Integer, Integer> backFacingMap = Map.of( + Surface.ROTATION_0, CameraMetadata.SCALER_ROTATE_AND_CROP_NONE, + Surface.ROTATION_90, CameraMetadata.SCALER_ROTATE_AND_CROP_90, + Surface.ROTATION_270, CameraMetadata.SCALER_ROTATE_AND_CROP_270, + Surface.ROTATION_180, CameraMetadata.SCALER_ROTATE_AND_CROP_180); taskInfo.isFixedOrientationPortrait = true; backFacingMap.forEach((key, value) -> { assertThat(CameraServiceProxy.getCropRotateScale(ctx, ctx.getPackageName(), taskInfo, key, CameraCharacteristics.LENS_FACING_BACK, /*ignoreResizableAndSdkCheck*/true)).isEqualTo(value); }); - HashMap<Integer, Integer> frontFacingMap = new HashMap<Integer, Integer>() {{ - put(Surface.ROTATION_0, CameraMetadata.SCALER_ROTATE_AND_CROP_NONE); - put(Surface.ROTATION_90, CameraMetadata.SCALER_ROTATE_AND_CROP_270); - put(Surface.ROTATION_270, CameraMetadata.SCALER_ROTATE_AND_CROP_90); - put(Surface.ROTATION_180, CameraMetadata.SCALER_ROTATE_AND_CROP_180); - }}; + Map<Integer, Integer> frontFacingMap = Map.of( + Surface.ROTATION_0, CameraMetadata.SCALER_ROTATE_AND_CROP_NONE, + Surface.ROTATION_90, CameraMetadata.SCALER_ROTATE_AND_CROP_270, + Surface.ROTATION_270, CameraMetadata.SCALER_ROTATE_AND_CROP_90, + Surface.ROTATION_180, CameraMetadata.SCALER_ROTATE_AND_CROP_180); frontFacingMap.forEach((key, value) -> { assertThat(CameraServiceProxy.getCropRotateScale(ctx, ctx.getPackageName(), taskInfo, key, CameraCharacteristics.LENS_FACING_FRONT, diff --git a/services/tests/servicestests/src/com/android/server/display/AmbientBrightnessStatsTrackerTest.java b/services/tests/servicestests/src/com/android/server/display/AmbientBrightnessStatsTrackerTest.java index df672c9f248d..2c4fe536b75c 100644 --- a/services/tests/servicestests/src/com/android/server/display/AmbientBrightnessStatsTrackerTest.java +++ b/services/tests/servicestests/src/com/android/server/display/AmbientBrightnessStatsTrackerTest.java @@ -424,7 +424,7 @@ public class AmbientBrightnessStatsTrackerTest { @Override public LocalDate getLocalDate() { - return LocalDate.from(mLocalDate); + return mLocalDate; } } diff --git a/services/tests/servicestests/src/com/android/server/inputmethod/InputMethodSubtypeSwitchingControllerTest.java b/services/tests/servicestests/src/com/android/server/inputmethod/InputMethodSubtypeSwitchingControllerTest.java index 9092ec325946..0884b784ac73 100644 --- a/services/tests/servicestests/src/com/android/server/inputmethod/InputMethodSubtypeSwitchingControllerTest.java +++ b/services/tests/servicestests/src/com/android/server/inputmethod/InputMethodSubtypeSwitchingControllerTest.java @@ -367,6 +367,7 @@ public class InputMethodSubtypeSwitchingControllerTest { assertFalse(item_en_us_allcaps.mIsSystemLocale); } + @SuppressWarnings("SelfComparison") @Test public void testImeSubtypeListComparator() throws Exception { final ComponentName imeX1 = new ComponentName("com.example.imeX", "Ime1"); diff --git a/services/tests/servicestests/src/com/android/server/locksettings/PasswordSlotManagerTestable.java b/services/tests/servicestests/src/com/android/server/locksettings/PasswordSlotManagerTestable.java index 1e855a9819ac..1eb4fa5439e6 100644 --- a/services/tests/servicestests/src/com/android/server/locksettings/PasswordSlotManagerTestable.java +++ b/services/tests/servicestests/src/com/android/server/locksettings/PasswordSlotManagerTestable.java @@ -58,4 +58,4 @@ public class PasswordSlotManagerTestable extends PasswordSlotManager { } catch (Exception e) { } } -}; +} diff --git a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java index 598a22bbde39..d46530c27690 100644 --- a/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java +++ b/services/tests/uiservicestests/src/com/android/server/notification/PreferencesHelperTest.java @@ -2727,7 +2727,7 @@ public class PreferencesHelperTest extends UiServiceTestCase { @Test public void testCreateChannel_addToGroup() { - NotificationChannelGroup group = new NotificationChannelGroup("group", ""); + NotificationChannelGroup group = new NotificationChannelGroup("group", "group"); mHelper.createNotificationChannelGroup(PKG_N_MR1, UID_N_MR1, group, true); NotificationChannel nc = new NotificationChannel("id", "hello", IMPORTANCE_DEFAULT); assertTrue(mHelper.createNotificationChannel(PKG_N_MR1, UID_N_MR1, nc, true, false)); @@ -3177,8 +3177,8 @@ public class PreferencesHelperTest extends UiServiceTestCase { @Test public void testGetNotificationChannelGroupWithChannels() throws Exception { - NotificationChannelGroup group = new NotificationChannelGroup("group", ""); - NotificationChannelGroup other = new NotificationChannelGroup("something else", ""); + NotificationChannelGroup group = new NotificationChannelGroup("group", "group"); + NotificationChannelGroup other = new NotificationChannelGroup("something else", "name"); mHelper.createNotificationChannelGroup(PKG_N_MR1, UID_N_MR1, group, true); mHelper.createNotificationChannelGroup(PKG_N_MR1, UID_N_MR1, other, true); diff --git a/services/usb/java/com/android/server/usb/descriptors/UsbVCInputTerminal.java b/services/usb/java/com/android/server/usb/descriptors/UsbVCInputTerminal.java index df637950899b..7a41b50e26bd 100644 --- a/services/usb/java/com/android/server/usb/descriptors/UsbVCInputTerminal.java +++ b/services/usb/java/com/android/server/usb/descriptors/UsbVCInputTerminal.java @@ -46,4 +46,4 @@ public final class UsbVCInputTerminal extends UsbVCInterface { // TODO Add reporting specific to this descriptor super.report(canvas); } -}; +} diff --git a/services/usb/java/com/android/server/usb/descriptors/UsbVCOutputTerminal.java b/services/usb/java/com/android/server/usb/descriptors/UsbVCOutputTerminal.java index 4aa8ca22cc4e..32275a60644c 100644 --- a/services/usb/java/com/android/server/usb/descriptors/UsbVCOutputTerminal.java +++ b/services/usb/java/com/android/server/usb/descriptors/UsbVCOutputTerminal.java @@ -46,4 +46,4 @@ public final class UsbVCOutputTerminal extends UsbVCInterface { super.report(canvas); // TODO Add reporting specific to this descriptor } -}; +} diff --git a/services/usb/java/com/android/server/usb/descriptors/UsbVCProcessingUnit.java b/services/usb/java/com/android/server/usb/descriptors/UsbVCProcessingUnit.java index 5ce842e82598..0692066e1dee 100644 --- a/services/usb/java/com/android/server/usb/descriptors/UsbVCProcessingUnit.java +++ b/services/usb/java/com/android/server/usb/descriptors/UsbVCProcessingUnit.java @@ -47,4 +47,4 @@ public final class UsbVCProcessingUnit extends UsbVCInterface { super.report(canvas); // TODO Add reporting specific to this descriptor } -}; +} diff --git a/services/usb/java/com/android/server/usb/descriptors/UsbVCSelectorUnit.java b/services/usb/java/com/android/server/usb/descriptors/UsbVCSelectorUnit.java index 8e9b0d886389..604dd66905da 100644 --- a/services/usb/java/com/android/server/usb/descriptors/UsbVCSelectorUnit.java +++ b/services/usb/java/com/android/server/usb/descriptors/UsbVCSelectorUnit.java @@ -47,4 +47,4 @@ public final class UsbVCSelectorUnit extends UsbVCInterface { super.report(canvas); // TODO Add reporting specific to this descriptor } -}; +} diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java index 42d446d058b4..af626f57356e 100644 --- a/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java +++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/HotwordDetectionConnection.java @@ -1196,4 +1196,4 @@ final class HotwordDetectionConnection { private static final String OP_MESSAGE = "Providing hotword detection result to VoiceInteractionService"; -}; +} diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java index a061618b1ca7..e02f2f00afa0 100644 --- a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java +++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionSessionConnection.java @@ -810,4 +810,4 @@ final class VoiceInteractionSessionConnection implements ServiceConnection, } } }; -}; +} diff --git a/telephony/common/com/google/android/mms/pdu/EncodedStringValue.java b/telephony/common/com/google/android/mms/pdu/EncodedStringValue.java index 8b01cb3c4405..2787d83a99a3 100644 --- a/telephony/common/com/google/android/mms/pdu/EncodedStringValue.java +++ b/telephony/common/com/google/android/mms/pdu/EncodedStringValue.java @@ -199,7 +199,6 @@ public class EncodedStringValue implements Cloneable { */ @Override public Object clone() throws CloneNotSupportedException { - super.clone(); int len = mData.length; byte[] dstBytes = new byte[len]; System.arraycopy(mData, 0, dstBytes, 0, len); diff --git a/telephony/java/android/telephony/DataFailCause.java b/telephony/java/android/telephony/DataFailCause.java index 5f7cfd109ec9..5186c7268cb6 100644 --- a/telephony/java/android/telephony/DataFailCause.java +++ b/telephony/java/android/telephony/DataFailCause.java @@ -1613,29 +1613,26 @@ public final class DataFailCause { // If we are not able to find the configuration from carrier config, use the default // ones. if (permanentFailureSet == null) { - permanentFailureSet = new HashSet<Integer>() { - { - add(OPERATOR_BARRED); - add(MISSING_UNKNOWN_APN); - add(UNKNOWN_PDP_ADDRESS_TYPE); - add(USER_AUTHENTICATION); - add(ACTIVATION_REJECT_GGSN); - add(SERVICE_OPTION_NOT_SUPPORTED); - add(SERVICE_OPTION_NOT_SUBSCRIBED); - add(NSAPI_IN_USE); - add(ONLY_IPV4_ALLOWED); - add(ONLY_IPV6_ALLOWED); - add(PROTOCOL_ERRORS); - add(RADIO_POWER_OFF); - add(TETHERED_CALL_ACTIVE); - add(RADIO_NOT_AVAILABLE); - add(UNACCEPTABLE_NETWORK_PARAMETER); - add(SIGNAL_LOST); - add(DUPLICATE_CID); - add(MATCH_ALL_RULE_NOT_ALLOWED); - add(ALL_MATCHING_RULES_FAILED); - } - }; + permanentFailureSet = new HashSet<Integer>(); + permanentFailureSet.add(OPERATOR_BARRED); + permanentFailureSet.add(MISSING_UNKNOWN_APN); + permanentFailureSet.add(UNKNOWN_PDP_ADDRESS_TYPE); + permanentFailureSet.add(USER_AUTHENTICATION); + permanentFailureSet.add(ACTIVATION_REJECT_GGSN); + permanentFailureSet.add(SERVICE_OPTION_NOT_SUPPORTED); + permanentFailureSet.add(SERVICE_OPTION_NOT_SUBSCRIBED); + permanentFailureSet.add(NSAPI_IN_USE); + permanentFailureSet.add(ONLY_IPV4_ALLOWED); + permanentFailureSet.add(ONLY_IPV6_ALLOWED); + permanentFailureSet.add(PROTOCOL_ERRORS); + permanentFailureSet.add(RADIO_POWER_OFF); + permanentFailureSet.add(TETHERED_CALL_ACTIVE); + permanentFailureSet.add(RADIO_NOT_AVAILABLE); + permanentFailureSet.add(UNACCEPTABLE_NETWORK_PARAMETER); + permanentFailureSet.add(SIGNAL_LOST); + permanentFailureSet.add(DUPLICATE_CID); + permanentFailureSet.add(MATCH_ALL_RULE_NOT_ALLOWED); + permanentFailureSet.add(ALL_MATCHING_RULES_FAILED); } permanentFailureSet.add(NO_RETRY_FAILURE); diff --git a/telephony/java/android/telephony/ims/ImsService.java b/telephony/java/android/telephony/ims/ImsService.java index bccb6ef2b1e5..4477f81a378d 100644 --- a/telephony/java/android/telephony/ims/ImsService.java +++ b/telephony/java/android/telephony/ims/ImsService.java @@ -50,7 +50,6 @@ import com.android.internal.telephony.util.TelephonyUtils; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; -import java.util.HashMap; import java.util.Map; import java.util.concurrent.CancellationException; import java.util.concurrent.CompletableFuture; @@ -164,10 +163,9 @@ public class ImsService extends Service { * Used for logging purposes, see {@link #getCapabilitiesString(long)} * @hide */ - private static final Map<Long, String> CAPABILITIES_LOG_MAP = new HashMap<Long, String>() {{ - put(CAPABILITY_EMERGENCY_OVER_MMTEL, "EMERGENCY_OVER_MMTEL"); - put(CAPABILITY_SIP_DELEGATE_CREATION, "SIP_DELEGATE_CREATION"); - }}; + private static final Map<Long, String> CAPABILITIES_LOG_MAP = Map.of( + CAPABILITY_EMERGENCY_OVER_MMTEL, "EMERGENCY_OVER_MMTEL", + CAPABILITY_SIP_DELEGATE_CREATION, "SIP_DELEGATE_CREATION"); /** * The intent that must be defined as an intent-filter in the AndroidManifest of the ImsService. diff --git a/telephony/java/android/telephony/ims/RegistrationManager.java b/telephony/java/android/telephony/ims/RegistrationManager.java index 090d4136872e..9996b868afc7 100644 --- a/telephony/java/android/telephony/ims/RegistrationManager.java +++ b/telephony/java/android/telephony/ims/RegistrationManager.java @@ -78,24 +78,22 @@ public interface RegistrationManager { /**@hide*/ // Translate ImsRegistrationImplBase API to new AccessNetworkConstant because WLAN // and WWAN are more accurate constants. - Map<Integer, Integer> IMS_REG_TO_ACCESS_TYPE_MAP = - new HashMap<Integer, Integer>() {{ - // Map NONE to -1 to make sure that we handle the REGISTRATION_TECH_NONE - // case, since it is defined. - put(ImsRegistrationImplBase.REGISTRATION_TECH_NONE, - AccessNetworkConstants.TRANSPORT_TYPE_INVALID); - put(ImsRegistrationImplBase.REGISTRATION_TECH_LTE, - AccessNetworkConstants.TRANSPORT_TYPE_WWAN); - put(ImsRegistrationImplBase.REGISTRATION_TECH_NR, - AccessNetworkConstants.TRANSPORT_TYPE_WWAN); - put(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN, - AccessNetworkConstants.TRANSPORT_TYPE_WLAN); - /* As the cross sim will be using ePDG tunnel over internet, it behaves - like IWLAN in most cases. Hence setting the access type as IWLAN - */ - put(ImsRegistrationImplBase.REGISTRATION_TECH_CROSS_SIM, - AccessNetworkConstants.TRANSPORT_TYPE_WLAN); - }}; + Map<Integer, Integer> IMS_REG_TO_ACCESS_TYPE_MAP = Map.of( + // Map NONE to -1 to make sure that we handle the REGISTRATION_TECH_NONE + // case, since it is defined. + ImsRegistrationImplBase.REGISTRATION_TECH_NONE, + AccessNetworkConstants.TRANSPORT_TYPE_INVALID, + ImsRegistrationImplBase.REGISTRATION_TECH_LTE, + AccessNetworkConstants.TRANSPORT_TYPE_WWAN, + ImsRegistrationImplBase.REGISTRATION_TECH_NR, + AccessNetworkConstants.TRANSPORT_TYPE_WWAN, + ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN, + AccessNetworkConstants.TRANSPORT_TYPE_WLAN, + /* As the cross sim will be using ePDG tunnel over internet, it behaves + like IWLAN in most cases. Hence setting the access type as IWLAN + */ + ImsRegistrationImplBase.REGISTRATION_TECH_CROSS_SIM, + AccessNetworkConstants.TRANSPORT_TYPE_WLAN); /** @hide */ @NonNull diff --git a/telephony/java/android/telephony/ims/feature/ImsFeature.java b/telephony/java/android/telephony/ims/feature/ImsFeature.java index a42327b8a1a9..174675fcde4c 100644 --- a/telephony/java/android/telephony/ims/feature/ImsFeature.java +++ b/telephony/java/android/telephony/ims/feature/ImsFeature.java @@ -34,7 +34,6 @@ import com.android.internal.telephony.util.RemoteCallbackListExt; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; -import java.util.HashMap; import java.util.Map; /** @@ -85,11 +84,10 @@ public abstract class ImsFeature { * Used for logging purposes. * @hide */ - public static final Map<Integer, String> FEATURE_LOG_MAP = new HashMap<Integer, String>() {{ - put(FEATURE_EMERGENCY_MMTEL, "EMERGENCY_MMTEL"); - put(FEATURE_MMTEL, "MMTEL"); - put(FEATURE_RCS, "RCS"); - }}; + public static final Map<Integer, String> FEATURE_LOG_MAP = Map.of( + FEATURE_EMERGENCY_MMTEL, "EMERGENCY_MMTEL", + FEATURE_MMTEL, "MMTEL", + FEATURE_RCS, "RCS"); /** * Integer values defining IMS features that are supported in ImsFeature. @@ -145,11 +143,10 @@ public abstract class ImsFeature { * Used for logging purposes. * @hide */ - public static final Map<Integer, String> STATE_LOG_MAP = new HashMap<Integer, String>() {{ - put(STATE_UNAVAILABLE, "UNAVAILABLE"); - put(STATE_INITIALIZING, "INITIALIZING"); - put(STATE_READY, "READY"); - }}; + public static final Map<Integer, String> STATE_LOG_MAP = Map.of( + STATE_UNAVAILABLE, "UNAVAILABLE", + STATE_INITIALIZING, "INITIALIZING", + STATE_READY, "READY"); /** * Integer values defining the result codes that should be returned from diff --git a/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java b/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java index 0f4e122d147a..4bcf5a4e30d5 100644 --- a/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java +++ b/tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java @@ -16,14 +16,16 @@ package com.android.test.hwuicompare; -import java.util.LinkedHashMap; -import java.util.Map.Entry; +import static java.util.Map.entry; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.RectF; import android.util.Log; +import java.util.Map; +import java.util.Map.Entry; + public abstract class DisplayModifier { // automated tests ignore any combination of operations that don't together return TOTAL_MASK @@ -76,41 +78,36 @@ public abstract class DisplayModifier { }; @SuppressWarnings("serial") - private static final LinkedHashMap<String, LinkedHashMap<String, DisplayModifier>> gMaps = new LinkedHashMap<String, LinkedHashMap<String, DisplayModifier>>() { - { - put("aa", new LinkedHashMap<String, DisplayModifier>() { - { - put("true", new DisplayModifier() { + private static final Map<String, Map<String, DisplayModifier>> gMaps = Map.of( + "aa", Map.of( + "true", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setAntiAlias(true); } - }); - put("false", new DisplayModifier() { + }, + "false", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setAntiAlias(false); } - }); - } - }); - put("style", new LinkedHashMap<String, DisplayModifier>() { - { - put("fill", new DisplayModifier() { + }), + "style", Map.of( + "fill", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStyle(Paint.Style.FILL); } - }); - put("stroke", new DisplayModifier() { + }, + "stroke", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStyle(Paint.Style.STROKE); } @Override protected int mask() { return SWEEP_STROKE_WIDTH_BIT; } - }); - put("fillAndStroke", new DisplayModifier() { + }, + "fillAndStroke", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStyle(Paint.Style.FILL_AND_STROKE); @@ -118,131 +115,118 @@ public abstract class DisplayModifier { @Override protected int mask() { return SWEEP_STROKE_WIDTH_BIT; } - }); - } - }); - put("strokeWidth", new LinkedHashMap<String, DisplayModifier>() { - { - put("hair", new DisplayModifier() { + }), + "strokeWidth", Map.of( + "hair", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeWidth(0); } @Override protected int mask() { return SWEEP_STROKE_WIDTH_BIT; } - }); - put("0.3", new DisplayModifier() { + }, + "0.3", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeWidth(0.3f); } - }); - put("1", new DisplayModifier() { + }, + "1", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeWidth(1); } - }); - put("5", new DisplayModifier() { + }, + "5", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeWidth(5); } - }); - put("30", new DisplayModifier() { + }, + "30", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeWidth(30); } - }); - } - }); - put("strokeCap", new LinkedHashMap<String, DisplayModifier>() { - { - put("butt", new DisplayModifier() { + }), + "strokeCap", Map.of( + "butt", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeCap(Paint.Cap.BUTT); } @Override protected int mask() { return SWEEP_STROKE_CAP_BIT; } - }); - put("round", new DisplayModifier() { + }, + "round", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeCap(Paint.Cap.ROUND); } - }); - put("square", new DisplayModifier() { + }, + "square", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeCap(Paint.Cap.SQUARE); } - }); - } - }); - put("strokeJoin", new LinkedHashMap<String, DisplayModifier>() { - { - put("bevel", new DisplayModifier() { + }), + "strokeJoin", Map.of( + "bevel", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeJoin(Paint.Join.BEVEL); } @Override protected int mask() { return SWEEP_STROKE_JOIN_BIT; } - }); - put("round", new DisplayModifier() { + }, + "round", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeJoin(Paint.Join.ROUND); } - }); - put("miter", new DisplayModifier() { + }, + "miter", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setStrokeJoin(Paint.Join.MITER); } - }); + }), // TODO: add miter0, miter1 etc to test miter distances - } - }); - - put("transform", new LinkedHashMap<String, DisplayModifier>() { - { - put("noTransform", new DisplayModifier() { + "transform", Map.of( + "noTransform", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) {} @Override protected int mask() { return SWEEP_TRANSFORM_BIT; }; - }); - put("rotate5", new DisplayModifier() { + }, + "rotate5", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.rotate(5); } - }); - put("rotate45", new DisplayModifier() { + }, + "rotate45", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.rotate(45); } - }); - put("rotate90", new DisplayModifier() { + }, + "rotate90", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.rotate(90); canvas.translate(0, -200); } - }); - put("scale2x2", new DisplayModifier() { + }, + "scale2x2", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.scale(2, 2); } @Override protected int mask() { return SWEEP_TRANSFORM_BIT; }; - }); - put("rot20scl1x4", new DisplayModifier() { + }, + "rot20scl1x4", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.rotate(20); @@ -250,180 +234,167 @@ public abstract class DisplayModifier { } @Override protected int mask() { return SWEEP_TRANSFORM_BIT; }; - }); - } - }); - - put("shader", new LinkedHashMap<String, DisplayModifier>() { - { - put("noShader", new DisplayModifier() { + }), + "shader", Map.ofEntries( + entry("noShader", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) {} @Override protected int mask() { return SWEEP_SHADER_BIT; }; - }); - put("repeatShader", new DisplayModifier() { + }), + entry("repeatShader", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mRepeatShader); } @Override protected int mask() { return SWEEP_SHADER_BIT; }; - }); - put("translatedShader", new DisplayModifier() { + }), + entry("translatedShader", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mTranslatedShader); } - }); - put("scaledShader", new DisplayModifier() { + }), + entry("scaledShader", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mScaledShader); } - }); - put("horGradient", new DisplayModifier() { + }), + entry("horGradient", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mHorGradient); } - }); - put("diagGradient", new DisplayModifier() { + }), + entry("diagGradient", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mDiagGradient); } @Override protected int mask() { return SWEEP_SHADER_BIT; }; - }); - put("vertGradient", new DisplayModifier() { + }), + entry("vertGradient", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mVertGradient); } - }); - put("radGradient", new DisplayModifier() { + }), + entry("radGradient", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mRadGradient); } - }); - put("sweepGradient", new DisplayModifier() { + }), + entry("sweepGradient", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mSweepGradient); } - }); - put("composeShader", new DisplayModifier() { + }), + entry("composeShader", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mComposeShader); } - }); - put("bad composeShader", new DisplayModifier() { + }), + entry("bad composeShader", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mBadComposeShader); } - }); - put("bad composeShader 2", new DisplayModifier() { + }), + entry("bad composeShader 2", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setShader(ResourceModifiers.instance().mAnotherBadComposeShader); } - }); - } - }); - - // FINAL MAP: DOES ACTUAL DRAWING - put("drawing", new LinkedHashMap<String, DisplayModifier>() { - { - put("roundRect", new DisplayModifier() { + })), + "drawing", Map.ofEntries( + entry("roundRect", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawRoundRect(gRect, 20, 20, paint); } - }); - put("rect", new DisplayModifier() { + }), + entry("rect", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawRect(gRect, paint); } @Override protected int mask() { return SWEEP_SHADER_BIT | SWEEP_STROKE_CAP_BIT; }; - }); - put("circle", new DisplayModifier() { + }), + entry("circle", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawCircle(100, 100, 75, paint); } - }); - put("oval", new DisplayModifier() { + }), + entry("oval", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawOval(gRect, paint); } - }); - put("lines", new DisplayModifier() { + }), + entry("lines", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawLines(gLinePts, paint); } @Override protected int mask() { return SWEEP_STROKE_CAP_BIT; }; - }); - put("plusPoints", new DisplayModifier() { + }), + entry("plusPoints", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawPoints(gPts, paint); } - }); - put("text", new DisplayModifier() { + }), + entry("text", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setTextSize(36); canvas.drawText("TEXTTEST", 0, 50, paint); } - }); - put("shadowtext", new DisplayModifier() { + }), + entry("shadowtext", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { paint.setTextSize(36); paint.setShadowLayer(3.0f, 0.0f, 3.0f, 0xffff00ff); canvas.drawText("TEXTTEST", 0, 50, paint); } - }); - put("bitmapMesh", new DisplayModifier() { + }), + entry("bitmapMesh", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawBitmapMesh(ResourceModifiers.instance().mBitmap, 3, 3, ResourceModifiers.instance().mBitmapVertices, 0, null, 0, null); } - }); - put("arc", new DisplayModifier() { + }), + entry("arc", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawArc(gRect, 260, 285, false, paint); } @Override protected int mask() { return SWEEP_STROKE_CAP_BIT; }; - }); - put("arcFromCenter", new DisplayModifier() { + }), + entry("arcFromCenter", new DisplayModifier() { @Override public void modifyDrawing(Paint paint, Canvas canvas) { canvas.drawArc(gRect, 260, 285, true, paint); } @Override protected int mask() { return SWEEP_STROKE_JOIN_BIT; }; - }); - } - }); + }))); // WARNING: DON'T PUT MORE MAPS BELOW THIS - } - }; - private static LinkedHashMap<String, DisplayModifier> getMapAtIndex(int index) { - for (LinkedHashMap<String, DisplayModifier> map : gMaps.values()) { + private static Map<String, DisplayModifier> getMapAtIndex(int index) { + for (Map<String, DisplayModifier> map : gMaps.values()) { if (index == 0) { return map; } @@ -439,7 +410,7 @@ public abstract class DisplayModifier { private static boolean stepInternal(boolean forward) { int modifierMapIndex = gMaps.size() - 1; while (modifierMapIndex >= 0) { - LinkedHashMap<String, DisplayModifier> map = getMapAtIndex(modifierMapIndex); + Map<String, DisplayModifier> map = getMapAtIndex(modifierMapIndex); mIndices[modifierMapIndex] += (forward ? 1 : -1); if (mIndices[modifierMapIndex] >= 0 && mIndices[modifierMapIndex] < map.size()) { @@ -471,7 +442,7 @@ public abstract class DisplayModifier { private static boolean checkModificationStateMask() { int operatorMask = 0x0; int mapIndex = 0; - for (LinkedHashMap<String, DisplayModifier> map : gMaps.values()) { + for (Map<String, DisplayModifier> map : gMaps.values()) { int displayModifierIndex = mIndices[mapIndex]; for (Entry<String, DisplayModifier> modifierEntry : map.entrySet()) { if (displayModifierIndex == 0) { @@ -488,7 +459,7 @@ public abstract class DisplayModifier { public static void apply(Paint paint, Canvas canvas) { int mapIndex = 0; - for (LinkedHashMap<String, DisplayModifier> map : gMaps.values()) { + for (Map<String, DisplayModifier> map : gMaps.values()) { int displayModifierIndex = mIndices[mapIndex]; for (Entry<String, DisplayModifier> modifierEntry : map.entrySet()) { if (displayModifierIndex == 0) { @@ -510,7 +481,7 @@ public abstract class DisplayModifier { String[][] keys = new String[gMaps.size()][]; int i = 0; - for (LinkedHashMap<String, DisplayModifier> map : gMaps.values()) { + for (Map<String, DisplayModifier> map : gMaps.values()) { keys[i] = new String[map.size()]; int j = 0; for (String key : map.keySet()) { diff --git a/tests/HierarchyViewerTest/src/com/android/test/hierarchyviewer/ViewDumpParser.java b/tests/HierarchyViewerTest/src/com/android/test/hierarchyviewer/ViewDumpParser.java index 2ad0da98c409..8b9c02049351 100644 --- a/tests/HierarchyViewerTest/src/com/android/test/hierarchyviewer/ViewDumpParser.java +++ b/tests/HierarchyViewerTest/src/com/android/test/hierarchyviewer/ViewDumpParser.java @@ -58,7 +58,7 @@ public class ViewDumpParser { Object hash = getProperty(props, "__hash__"); if (name instanceof String && hash instanceof Integer) { - return String.format(Locale.US, "%s@%x", name, hash); + return String.format(Locale.US, "%s@%x", name, (Integer) hash); } else { return null; } diff --git a/tests/JankBench/app/src/main/java/com/android/benchmark/app/HomeActivity.java b/tests/JankBench/app/src/main/java/com/android/benchmark/app/HomeActivity.java index 4de51fb57308..43dc9de6c90a 100644 --- a/tests/JankBench/app/src/main/java/com/android/benchmark/app/HomeActivity.java +++ b/tests/JankBench/app/src/main/java/com/android/benchmark/app/HomeActivity.java @@ -140,9 +140,9 @@ public class HomeActivity extends AppCompatActivity implements Button.OnClickLis handleNextBenchmark(); } + @SuppressWarnings("MissingSuperCall") // TODO: Fix me @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { - } private void handleNextBenchmark() { diff --git a/tests/JankBench/app/src/main/java/com/android/benchmark/app/RunLocalBenchmarksActivity.java b/tests/JankBench/app/src/main/java/com/android/benchmark/app/RunLocalBenchmarksActivity.java index c16efbda1830..d015a5695ec0 100644 --- a/tests/JankBench/app/src/main/java/com/android/benchmark/app/RunLocalBenchmarksActivity.java +++ b/tests/JankBench/app/src/main/java/com/android/benchmark/app/RunLocalBenchmarksActivity.java @@ -367,6 +367,7 @@ public class RunLocalBenchmarksActivity extends AppCompatActivity { } } + @SuppressWarnings("MissingSuperCall") // TODO: Fix me @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { diff --git a/tests/MirrorSurfaceTest/src/com/google/android/test/mirrorsurface/MirrorSurfaceActivity.java b/tests/MirrorSurfaceTest/src/com/google/android/test/mirrorsurface/MirrorSurfaceActivity.java index 8afe8411a790..17fa210a1db6 100644 --- a/tests/MirrorSurfaceTest/src/com/google/android/test/mirrorsurface/MirrorSurfaceActivity.java +++ b/tests/MirrorSurfaceTest/src/com/google/android/test/mirrorsurface/MirrorSurfaceActivity.java @@ -295,8 +295,8 @@ public class MirrorSurfaceActivity extends Activity implements View.OnClickListe private void updateMirror(Rect displayFrame, float scale) { if (displayFrame.isEmpty()) { Rect bounds = mWindowBounds; - int defaultCropW = Math.round(bounds.width() / 2); - int defaultCropH = Math.round(bounds.height() / 2); + int defaultCropW = bounds.width() / 2; + int defaultCropH = bounds.height() / 2; displayFrame.set(0, 0, defaultCropW, defaultCropH); } diff --git a/tests/RenderThreadTest/src/com/example/renderthread/MainActivity.java b/tests/RenderThreadTest/src/com/example/renderthread/MainActivity.java index 241206d8919b..65b7549f22d1 100644 --- a/tests/RenderThreadTest/src/com/example/renderthread/MainActivity.java +++ b/tests/RenderThreadTest/src/com/example/renderthread/MainActivity.java @@ -24,18 +24,14 @@ public class MainActivity extends Activity implements OnItemClickListener { static final String KEY_NAME = "name"; static final String KEY_CLASS = "clazz"; - static Map<String,?> make(String name) { - Map<String,Object> ret = new HashMap<String,Object>(); - ret.put(KEY_NAME, name); - return ret; - } - - @SuppressWarnings("serial") - static final ArrayList<Map<String,?>> SAMPLES = new ArrayList<Map<String,?>>() {{ + static final ArrayList<Map<String, ?>> SAMPLES = new ArrayList<>(); + static { for (int i = 1; i < 25; i++) { - add(make("List Item: " + i)); + Map<String, Object> sample = new HashMap<String, Object>(); + sample.put(KEY_NAME, "List Item: " + i); + SAMPLES.add(sample); } - }}; + } Handler mHandler = new Handler(); diff --git a/tests/SmokeTestApps/src/com/android/smoketest/triggers/CrashyApp.java b/tests/SmokeTestApps/src/com/android/smoketest/triggers/CrashyApp.java index c11b0f3acf79..f85fb0f267d5 100644 --- a/tests/SmokeTestApps/src/com/android/smoketest/triggers/CrashyApp.java +++ b/tests/SmokeTestApps/src/com/android/smoketest/triggers/CrashyApp.java @@ -30,6 +30,7 @@ public class CrashyApp extends Activity { setContentView(tv); } + @SuppressWarnings("ReturnValueIgnored") @Override public void onResume() { ((String) null).length(); diff --git a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java index f924b2e9b932..ad068308d481 100644 --- a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java +++ b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java @@ -637,8 +637,7 @@ public class VcnManagementServiceTest { final BroadcastReceiver receiver = getPackageChangeReceiver(); verify(mMockContext).registerReceiver(any(), argThat(filter -> { - return filter.hasAction(Intent.ACTION_PACKAGE_REMOVED) - && filter.hasAction(Intent.ACTION_PACKAGE_REMOVED); + return filter.hasAction(Intent.ACTION_PACKAGE_REMOVED); }), any(), any()); receiver.onReceive(mMockContext, new Intent(Intent.ACTION_PACKAGE_REMOVED)); diff --git a/wifi/tests/src/android/net/wifi/nl80211/WifiNl80211ManagerTest.java b/wifi/tests/src/android/net/wifi/nl80211/WifiNl80211ManagerTest.java index a750696628f9..50126226eb94 100644 --- a/wifi/tests/src/android/net/wifi/nl80211/WifiNl80211ManagerTest.java +++ b/wifi/tests/src/android/net/wifi/nl80211/WifiNl80211ManagerTest.java @@ -117,13 +117,12 @@ public class WifiNl80211ManagerTest { private static final byte[] TEST_PSK = new byte[]{'T', 'e', 's', 't'}; - private static final Set<Integer> SCAN_FREQ_SET = - new HashSet<Integer>() {{ - add(2410); - add(2450); - add(5050); - add(5200); - }}; + private static final Set<Integer> SCAN_FREQ_SET = Set.of( + 2410, + 2450, + 5050, + 5200); + private static final String TEST_QUOTED_SSID_1 = "\"testSsid1\""; private static final String TEST_QUOTED_SSID_2 = "\"testSsid2\""; private static final int[] TEST_FREQUENCIES_1 = {}; @@ -131,13 +130,11 @@ public class WifiNl80211ManagerTest { private static final MacAddress TEST_RAW_MAC_BYTES = MacAddress.fromBytes( new byte[]{0x00, 0x01, 0x02, 0x03, 0x04, 0x05}); - private static final List<byte[]> SCAN_HIDDEN_NETWORK_SSID_LIST = - new ArrayList<byte[]>() {{ - add(LocalNativeUtil.byteArrayFromArrayList( - LocalNativeUtil.decodeSsid(TEST_QUOTED_SSID_1))); - add(LocalNativeUtil.byteArrayFromArrayList( - LocalNativeUtil.decodeSsid(TEST_QUOTED_SSID_2))); - }}; + private static final List<byte[]> SCAN_HIDDEN_NETWORK_SSID_LIST = List.of( + LocalNativeUtil.byteArrayFromArrayList( + LocalNativeUtil.decodeSsid(TEST_QUOTED_SSID_1)), + LocalNativeUtil.byteArrayFromArrayList( + LocalNativeUtil.decodeSsid(TEST_QUOTED_SSID_2))); private static final PnoSettings TEST_PNO_SETTINGS = new PnoSettings(); static { |