Fix array-related errorprone warnings

The ArrayEquals, ArrayHashCode, ArrayToString, and
ArraysAsListPrimitiveArray errorprone findings were
demoted from errors to warnings. Fix existing
occurrences of them so they can be made errors again.

Bug: 242630963
Test: RUN_ERROR_PRONE=true m javac-check
Change-Id: Ia6f216cc36ad0a5758f39fd9b34962cd4adf9d8e
This commit is contained in:
Cole Faust 2022-08-15 15:03:05 -07:00
parent b09fa7a106
commit 584140c83a
53 changed files with 266 additions and 204 deletions

View File

@ -367,6 +367,15 @@ java_library {
name: "framework-minus-apex-intdefs", name: "framework-minus-apex-intdefs",
defaults: ["framework-minus-apex-defaults"], defaults: ["framework-minus-apex-defaults"],
plugins: ["intdef-annotation-processor"], plugins: ["intdef-annotation-processor"],
// Errorprone and android lint will already run on framework-minus-apex, don't rerun them on
// the intdefs version in order to speed up the build.
errorprone: {
enabled: false,
},
lint: {
enabled: false,
},
} }
// This "framework" module is NOT installed to the device. It's // This "framework" module is NOT installed to the device. It's

View File

@ -257,7 +257,7 @@ public class BlobStorePerfTests {
runShellCommand(String.format( runShellCommand(String.format(
"cmd blob_store delete-blob --algo %s --digest %s --label %s --expiry %d --tag %s", "cmd blob_store delete-blob --algo %s --digest %s --label %s --expiry %d --tag %s",
blobHandle.algorithm, blobHandle.algorithm,
Base64.getEncoder().encode(blobHandle.digest), Base64.getEncoder().encodeToString(blobHandle.digest),
blobHandle.label, blobHandle.label,
blobHandle.expiryTimeMillis, blobHandle.expiryTimeMillis,
blobHandle.tag)); blobHandle.tag));

View File

@ -43,6 +43,7 @@ import java.io.FileDescriptor;
import java.io.PrintWriter; import java.io.PrintWriter;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.Executor; import java.util.concurrent.Executor;
@ -1103,7 +1104,10 @@ public final class VoiceInteractor {
} }
try { try {
boolean[] res = mInteractor.supportsCommands(mContext.getOpPackageName(), commands); boolean[] res = mInteractor.supportsCommands(mContext.getOpPackageName(), commands);
if (DEBUG) Log.d(TAG, "supportsCommands: cmds=" + commands + " res=" + res); if (DEBUG) {
Log.d(TAG, "supportsCommands: cmds=" + Arrays.toString(commands) + " res="
+ Arrays.toString(res));
}
return res; return res;
} catch (RemoteException e) { } catch (RemoteException e) {
throw new RuntimeException("Voice interactor has died", e); throw new RuntimeException("Voice interactor has died", e);

View File

@ -203,17 +203,14 @@ public final class PreferentialNetworkServiceConfig implements Parcelable {
return mIsEnabled == that.mIsEnabled return mIsEnabled == that.mIsEnabled
&& mAllowFallbackToDefaultConnection == that.mAllowFallbackToDefaultConnection && mAllowFallbackToDefaultConnection == that.mAllowFallbackToDefaultConnection
&& mNetworkId == that.mNetworkId && mNetworkId == that.mNetworkId
&& Objects.equals(mIncludedUids, that.mIncludedUids) && Arrays.equals(mIncludedUids, that.mIncludedUids)
&& Objects.equals(mExcludedUids, that.mExcludedUids); && Arrays.equals(mExcludedUids, that.mExcludedUids);
} }
@Override @Override
public int hashCode() { public int hashCode() {
return ((Objects.hashCode(mIsEnabled) * 17) return Objects.hash(mIsEnabled, mAllowFallbackToDefaultConnection,
+ (Objects.hashCode(mAllowFallbackToDefaultConnection) * 19) Arrays.hashCode(mIncludedUids), Arrays.hashCode(mExcludedUids), mNetworkId);
+ (Objects.hashCode(mIncludedUids) * 23)
+ (Objects.hashCode(mExcludedUids) * 29)
+ mNetworkId * 31);
} }
/** /**

View File

@ -204,9 +204,10 @@ public final class BluetoothLeDeviceFilter implements DeviceFilter<ScanResult> {
@Override @Override
public int hashCode() { public int hashCode() {
return Objects.hash(mNamePattern, mScanFilter, mRawDataFilter, mRawDataFilterMask, return Objects.hash(mNamePattern, mScanFilter, Arrays.hashCode(mRawDataFilter),
mRenamePrefix, mRenameSuffix, mRenameBytesFrom, mRenameBytesLength, Arrays.hashCode(mRawDataFilterMask), mRenamePrefix, mRenameSuffix,
mRenameNameFrom, mRenameNameLength, mRenameBytesReverseOrder); mRenameBytesFrom, mRenameBytesLength, mRenameNameFrom, mRenameNameLength,
mRenameBytesReverseOrder);
} }
@Override @Override

View File

@ -495,14 +495,9 @@ public final class AttributionSource implements Parcelable {
@Override @Override
public int hashCode() { public int hashCode() {
int _hash = 1; return Objects.hash(mAttributionSourceState.uid, mAttributionSourceState.packageName,
_hash = 31 * _hash + mAttributionSourceState.uid; mAttributionSourceState.attributionTag, mAttributionSourceState.token,
_hash = 31 * _hash + Objects.hashCode(mAttributionSourceState.packageName); Arrays.hashCode(mAttributionSourceState.renouncedPermissions), getNext());
_hash = 31 * _hash + Objects.hashCode(mAttributionSourceState.attributionTag);
_hash = 31 * _hash + Objects.hashCode(mAttributionSourceState.token);
_hash = 31 * _hash + Objects.hashCode(mAttributionSourceState.renouncedPermissions);
_hash = 31 * _hash + Objects.hashCode(getNext());
return _hash;
} }
@Override @Override

View File

@ -1723,7 +1723,8 @@ public class LauncherApps {
public void onPackagesAvailable(UserHandle user, String[] packageNames, boolean replacing) public void onPackagesAvailable(UserHandle user, String[] packageNames, boolean replacing)
throws RemoteException { throws RemoteException {
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "onPackagesAvailable " + user.getIdentifier() + "," + packageNames); Log.d(TAG, "onPackagesAvailable " + user.getIdentifier() + ","
+ Arrays.toString(packageNames));
} }
synchronized (LauncherApps.this) { synchronized (LauncherApps.this) {
for (CallbackMessageHandler callback : mCallbacks) { for (CallbackMessageHandler callback : mCallbacks) {
@ -1736,7 +1737,8 @@ public class LauncherApps {
public void onPackagesUnavailable(UserHandle user, String[] packageNames, boolean replacing) public void onPackagesUnavailable(UserHandle user, String[] packageNames, boolean replacing)
throws RemoteException { throws RemoteException {
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "onPackagesUnavailable " + user.getIdentifier() + "," + packageNames); Log.d(TAG, "onPackagesUnavailable " + user.getIdentifier() + ","
+ Arrays.toString(packageNames));
} }
synchronized (LauncherApps.this) { synchronized (LauncherApps.this) {
for (CallbackMessageHandler callback : mCallbacks) { for (CallbackMessageHandler callback : mCallbacks) {
@ -1750,7 +1752,8 @@ public class LauncherApps {
Bundle launcherExtras) Bundle launcherExtras)
throws RemoteException { throws RemoteException {
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "onPackagesSuspended " + user.getIdentifier() + "," + packageNames); Log.d(TAG, "onPackagesSuspended " + user.getIdentifier() + ","
+ Arrays.toString(packageNames));
} }
synchronized (LauncherApps.this) { synchronized (LauncherApps.this) {
for (CallbackMessageHandler callback : mCallbacks) { for (CallbackMessageHandler callback : mCallbacks) {
@ -1763,7 +1766,8 @@ public class LauncherApps {
public void onPackagesUnsuspended(UserHandle user, String[] packageNames) public void onPackagesUnsuspended(UserHandle user, String[] packageNames)
throws RemoteException { throws RemoteException {
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "onPackagesUnsuspended " + user.getIdentifier() + "," + packageNames); Log.d(TAG, "onPackagesUnsuspended " + user.getIdentifier() + ","
+ Arrays.toString(packageNames));
} }
synchronized (LauncherApps.this) { synchronized (LauncherApps.this) {
for (CallbackMessageHandler callback : mCallbacks) { for (CallbackMessageHandler callback : mCallbacks) {

View File

@ -53,6 +53,7 @@ import com.android.internal.util.Preconditions;
import java.lang.annotation.Retention; import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
@ -2617,7 +2618,7 @@ public final class ShortcutInfo implements Parcelable {
addIndentOrComma(sb, indent); addIndentOrComma(sb, indent);
sb.append("persons="); sb.append("persons=");
sb.append(mPersons); sb.append(Arrays.toString(mPersons));
addIndentOrComma(sb, indent); addIndentOrComma(sb, indent);

View File

@ -22,13 +22,6 @@ import android.annotation.NonNull;
import android.annotation.Nullable; import android.annotation.Nullable;
import android.content.pm.ActivityInfo.Config; import android.content.pm.ActivityInfo.Config;
import android.content.res.Resources.Theme; import android.content.res.Resources.Theme;
import com.android.internal.R;
import com.android.internal.util.GrowingArrayUtils;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import android.graphics.LinearGradient; import android.graphics.LinearGradient;
import android.graphics.RadialGradient; import android.graphics.RadialGradient;
import android.graphics.Shader; import android.graphics.Shader;
@ -38,9 +31,16 @@ import android.util.AttributeSet;
import android.util.Log; import android.util.Log;
import android.util.Xml; import android.util.Xml;
import com.android.internal.R;
import com.android.internal.util.GrowingArrayUtils;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import java.io.IOException; import java.io.IOException;
import java.lang.annotation.Retention; import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.util.Arrays;
/** /**
* Lets you define a gradient color, which is used inside * Lets you define a gradient color, which is used inside
@ -466,7 +466,7 @@ public class GradientColor extends ComplexColor {
} }
if (tempColors.length < 2) { if (tempColors.length < 2) {
Log.w(TAG, "<gradient> tag requires 2 color values specified!" + tempColors.length Log.w(TAG, "<gradient> tag requires 2 color values specified!" + tempColors.length
+ " " + tempColors); + " " + Arrays.toString(tempColors));
} }
if (mGradientType == GradientDrawable.LINEAR_GRADIENT) { if (mGradientType == GradientDrawable.LINEAR_GRADIENT) {

View File

@ -490,8 +490,12 @@ public final class ProgramSelector implements Parcelable {
public String toString() { public String toString() {
StringBuilder sb = new StringBuilder("ProgramSelector(type=").append(mProgramType) StringBuilder sb = new StringBuilder("ProgramSelector(type=").append(mProgramType)
.append(", primary=").append(mPrimaryId); .append(", primary=").append(mPrimaryId);
if (mSecondaryIds.length > 0) sb.append(", secondary=").append(mSecondaryIds); if (mSecondaryIds.length > 0) {
if (mVendorIds.length > 0) sb.append(", vendor=").append(mVendorIds); sb.append(", secondary=").append(Arrays.toString(mSecondaryIds));
}
if (mVendorIds.length > 0) {
sb.append(", vendor=").append(Arrays.toString(mVendorIds));
}
sb.append(")"); sb.append(")");
return sb.toString(); return sb.toString();
} }

View File

@ -505,7 +505,8 @@ public class RadioManager {
public int hashCode() { public int hashCode() {
return Objects.hash(mId, mServiceName, mClassId, mImplementor, mProduct, mVersion, return Objects.hash(mId, mServiceName, mClassId, mImplementor, mProduct, mVersion,
mSerial, mNumTuners, mNumAudioSources, mIsInitializationRequired, mSerial, mNumTuners, mNumAudioSources, mIsInitializationRequired,
mIsCaptureSupported, mBands, mIsBgScanSupported, mDabFrequencyTable, mVendorInfo); mIsCaptureSupported, Arrays.hashCode(mBands), mIsBgScanSupported,
mDabFrequencyTable, mVendorInfo);
} }
@Override @Override
@ -525,7 +526,7 @@ public class RadioManager {
if (mNumAudioSources != other.mNumAudioSources) return false; if (mNumAudioSources != other.mNumAudioSources) return false;
if (mIsInitializationRequired != other.mIsInitializationRequired) return false; if (mIsInitializationRequired != other.mIsInitializationRequired) return false;
if (mIsCaptureSupported != other.mIsCaptureSupported) return false; if (mIsCaptureSupported != other.mIsCaptureSupported) return false;
if (!Objects.equals(mBands, other.mBands)) return false; if (!Arrays.equals(mBands, other.mBands)) return false;
if (mIsBgScanSupported != other.mIsBgScanSupported) return false; if (mIsBgScanSupported != other.mIsBgScanSupported) return false;
if (!Objects.equals(mDabFrequencyTable, other.mDabFrequencyTable)) return false; if (!Objects.equals(mDabFrequencyTable, other.mDabFrequencyTable)) return false;
if (!Objects.equals(mVendorInfo, other.mVendorInfo)) return false; if (!Objects.equals(mVendorInfo, other.mVendorInfo)) return false;

View File

@ -23,6 +23,7 @@ import android.util.SparseArray;
import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import java.util.Arrays;
/** /**
@ -395,7 +396,7 @@ public class LogMaker {
out[i * 2] = entries.keyAt(i); out[i * 2] = entries.keyAt(i);
out[i * 2 + 1] = entries.valueAt(i); out[i * 2 + 1] = entries.valueAt(i);
} }
int size = out.toString().getBytes().length; int size = Arrays.toString(out).getBytes().length;
if (size > MAX_SERIALIZED_SIZE) { if (size > MAX_SERIALIZED_SIZE) {
Log.i(TAG, "Log line too long, did not emit: " + size + " bytes."); Log.i(TAG, "Log line too long, did not emit: " + size + " bytes.");
throw new RuntimeException(); throw new RuntimeException();

View File

@ -26,6 +26,7 @@ import android.os.RemoteException;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.util.Arrays;
import java.util.Objects; import java.util.Objects;
import java.util.UUID; import java.util.UUID;
@ -515,7 +516,7 @@ public final class IncrementalStorage {
throw new IOException("Unsupported log2BlockSize: " + hashingInfo.log2BlockSize); throw new IOException("Unsupported log2BlockSize: " + hashingInfo.log2BlockSize);
} }
if (hashingInfo.salt != null && hashingInfo.salt.length > 0) { if (hashingInfo.salt != null && hashingInfo.salt.length > 0) {
throw new IOException("Unsupported salt: " + hashingInfo.salt); throw new IOException("Unsupported salt: " + Arrays.toString(hashingInfo.salt));
} }
if (hashingInfo.rawRootHash.length != INCFS_MAX_HASH_SIZE) { if (hashingInfo.rawRootHash.length != INCFS_MAX_HASH_SIZE) {
throw new IOException("rawRootHash has to be " + INCFS_MAX_HASH_SIZE + " bytes"); throw new IOException("rawRootHash has to be " + INCFS_MAX_HASH_SIZE + " bytes");

View File

@ -25,6 +25,8 @@ import android.util.Log;
import com.android.internal.util.Preconditions; import com.android.internal.util.Preconditions;
import java.util.Arrays;
/** /**
* Compound validator that returns {@code true} on {@link #isValid(ValueFinder)} if any * Compound validator that returns {@code true} on {@link #isValid(ValueFinder)} if any
* of its subvalidators returns {@code true} as well. * of its subvalidators returns {@code true} as well.
@ -61,7 +63,8 @@ final class OptionalValidators extends InternalValidator {
public String toString() { public String toString() {
if (!sDebug) return super.toString(); if (!sDebug) return super.toString();
return new StringBuilder("OptionalValidators: [validators=").append(mValidators) return new StringBuilder("OptionalValidators: [validators=")
.append(Arrays.toString(mValidators))
.append("]") .append("]")
.toString(); .toString();
} }

View File

@ -25,6 +25,8 @@ import android.util.Log;
import com.android.internal.util.Preconditions; import com.android.internal.util.Preconditions;
import java.util.Arrays;
/** /**
* Compound validator that only returns {@code true} on {@link #isValid(ValueFinder)} if all * Compound validator that only returns {@code true} on {@link #isValid(ValueFinder)} if all
* of its subvalidators return {@code true} as well. * of its subvalidators return {@code true} as well.
@ -60,7 +62,8 @@ final class RequiredValidators extends InternalValidator {
public String toString() { public String toString() {
if (!sDebug) return super.toString(); if (!sDebug) return super.toString();
return new StringBuilder("RequiredValidators: [validators=").append(mValidators) return new StringBuilder("RequiredValidators: [validators=")
.append(Arrays.toString(mValidators))
.append("]") .append("]")
.toString(); .toString();
} }

View File

@ -73,6 +73,7 @@ import java.io.FileDescriptor;
import java.io.PrintWriter; import java.io.PrintWriter;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -597,7 +598,7 @@ public class VoiceInteractionSession implements KeyEvent.Callback, ComponentCall
VoiceInteractor.PickOptionRequest.Option[] selections, Bundle result) { VoiceInteractor.PickOptionRequest.Option[] selections, Bundle result) {
try { try {
if (DEBUG) Log.d(TAG, "sendPickOptionResult: req=" + mInterface if (DEBUG) Log.d(TAG, "sendPickOptionResult: req=" + mInterface
+ " finished=" + finished + " selections=" + selections + " finished=" + finished + " selections=" + Arrays.toString(selections)
+ " result=" + result); + " result=" + result);
if (finished) { if (finished) {
finishRequest(); finishRequest();

View File

@ -24,6 +24,7 @@ import java.io.IOException;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import java.nio.ByteOrder; import java.nio.ByteOrder;
import java.nio.channels.FileChannel; import java.nio.channels.FileChannel;
import java.util.Arrays;
/** /**
* Speech synthesis request that writes the audio to a WAV file. * Speech synthesis request that writes the audio to a WAV file.
@ -152,8 +153,8 @@ class FileSynthesisCallback extends AbstractSynthesisCallback {
@Override @Override
public int audioAvailable(byte[] buffer, int offset, int length) { public int audioAvailable(byte[] buffer, int offset, int length) {
if (DBG) { if (DBG) {
Log.d(TAG, "FileSynthesisRequest.audioAvailable(" + buffer + "," + offset Log.d(TAG, "FileSynthesisRequest.audioAvailable(" + Arrays.toString(buffer)
+ "," + length + ")"); + "," + offset + "," + length + ")");
} }
FileChannel fileChannel = null; FileChannel fileChannel = null;
synchronized (mStateLock) { synchronized (mStateLock) {

View File

@ -23,6 +23,7 @@ import com.android.internal.util.ArrayUtils;
import libcore.util.EmptyArray; import libcore.util.EmptyArray;
import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
import java.util.ConcurrentModificationException; import java.util.ConcurrentModificationException;
import java.util.Map; import java.util.Map;
@ -231,7 +232,7 @@ public final class ArrayMap<K, V> implements Map<K, V> {
array[0] = array[1] = null; array[0] = array[1] = null;
mTwiceBaseCacheSize--; mTwiceBaseCacheSize--;
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "Retrieving 2x cache " + mHashes Log.d(TAG, "Retrieving 2x cache " + Arrays.toString(mHashes)
+ " now have " + mTwiceBaseCacheSize + " entries"); + " now have " + mTwiceBaseCacheSize + " entries");
} }
return; return;
@ -258,7 +259,7 @@ public final class ArrayMap<K, V> implements Map<K, V> {
array[0] = array[1] = null; array[0] = array[1] = null;
mBaseCacheSize--; mBaseCacheSize--;
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "Retrieving 1x cache " + mHashes Log.d(TAG, "Retrieving 1x cache " + Arrays.toString(mHashes)
+ " now have " + mBaseCacheSize + " entries"); + " now have " + mBaseCacheSize + " entries");
} }
return; return;
@ -295,8 +296,10 @@ public final class ArrayMap<K, V> implements Map<K, V> {
} }
mTwiceBaseCache = array; mTwiceBaseCache = array;
mTwiceBaseCacheSize++; mTwiceBaseCacheSize++;
if (DEBUG) Log.d(TAG, "Storing 2x cache " + array if (DEBUG) {
+ " now have " + mTwiceBaseCacheSize + " entries"); Log.d(TAG, "Storing 2x cache " + Arrays.toString(array)
+ " now have " + mTwiceBaseCacheSize + " entries");
}
} }
} }
} else if (hashes.length == BASE_SIZE) { } else if (hashes.length == BASE_SIZE) {
@ -309,8 +312,10 @@ public final class ArrayMap<K, V> implements Map<K, V> {
} }
mBaseCache = array; mBaseCache = array;
mBaseCacheSize++; mBaseCacheSize++;
if (DEBUG) Log.d(TAG, "Storing 1x cache " + array if (DEBUG) {
+ " now have " + mBaseCacheSize + " entries"); Log.d(TAG, "Storing 1x cache " + Arrays.toString(array)
+ " now have " + mBaseCacheSize + " entries");
}
} }
} }
} }

View File

@ -23,6 +23,7 @@ import android.compat.annotation.UnsupportedAppUsage;
import libcore.util.EmptyArray; import libcore.util.EmptyArray;
import java.lang.reflect.Array; import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
import java.util.ConcurrentModificationException; import java.util.ConcurrentModificationException;
import java.util.Iterator; import java.util.Iterator;
@ -194,8 +195,8 @@ public final class ArraySet<E> implements Collection<E>, Set<E> {
array[0] = array[1] = null; array[0] = array[1] = null;
sTwiceBaseCacheSize--; sTwiceBaseCacheSize--;
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "Retrieving 2x cache " + mHashes + " now have " Log.d(TAG, "Retrieving 2x cache " + Arrays.toString(mHashes)
+ sTwiceBaseCacheSize + " entries"); + " now have " + sTwiceBaseCacheSize + " entries");
} }
return; return;
} }
@ -221,8 +222,8 @@ public final class ArraySet<E> implements Collection<E>, Set<E> {
array[0] = array[1] = null; array[0] = array[1] = null;
sBaseCacheSize--; sBaseCacheSize--;
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "Retrieving 1x cache " + mHashes + " now have " Log.d(TAG, "Retrieving 1x cache " + Arrays.toString(mHashes)
+ sBaseCacheSize + " entries"); + " now have " + sBaseCacheSize + " entries");
} }
return; return;
} }
@ -259,8 +260,8 @@ public final class ArraySet<E> implements Collection<E>, Set<E> {
sTwiceBaseCache = array; sTwiceBaseCache = array;
sTwiceBaseCacheSize++; sTwiceBaseCacheSize++;
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "Storing 2x cache " + array + " now have " + sTwiceBaseCacheSize Log.d(TAG, "Storing 2x cache " + Arrays.toString(array) + " now have "
+ " entries"); + sTwiceBaseCacheSize + " entries");
} }
} }
} }
@ -275,7 +276,7 @@ public final class ArraySet<E> implements Collection<E>, Set<E> {
sBaseCache = array; sBaseCache = array;
sBaseCacheSize++; sBaseCacheSize++;
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "Storing 1x cache " + array + " now have " Log.d(TAG, "Storing 1x cache " + Arrays.toString(array) + " now have "
+ sBaseCacheSize + " entries"); + sBaseCacheSize + " entries");
} }
} }

View File

@ -21,6 +21,8 @@ import android.util.LongArray;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Objects;
/** /**
* Class to read to a protobuf stream. * Class to read to a protobuf stream.
@ -968,26 +970,17 @@ public final class ProtoInputStream extends ProtoStream {
public String dumpDebugData() { public String dumpDebugData() {
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append("\nmFieldNumber : 0x" + Integer.toHexString(mFieldNumber)); sb.append("\nmFieldNumber : 0x").append(Integer.toHexString(mFieldNumber));
sb.append("\nmWireType : 0x" + Integer.toHexString(mWireType)); sb.append("\nmWireType : 0x").append(Integer.toHexString(mWireType));
sb.append("\nmState : 0x" + Integer.toHexString(mState)); sb.append("\nmState : 0x").append(Integer.toHexString(mState));
sb.append("\nmDiscardedBytes : 0x" + Integer.toHexString(mDiscardedBytes)); sb.append("\nmDiscardedBytes : 0x").append(Integer.toHexString(mDiscardedBytes));
sb.append("\nmOffset : 0x" + Integer.toHexString(mOffset)); sb.append("\nmOffset : 0x").append(Integer.toHexString(mOffset));
sb.append("\nmExpectedObjectTokenStack : "); sb.append("\nmExpectedObjectTokenStack : ")
if (mExpectedObjectTokenStack == null) { .append(Objects.toString(mExpectedObjectTokenStack));
sb.append("null"); sb.append("\nmDepth : 0x").append(Integer.toHexString(mDepth));
} else { sb.append("\nmBuffer : ").append(Arrays.toString(mBuffer));
sb.append(mExpectedObjectTokenStack); sb.append("\nmBufferSize : 0x").append(Integer.toHexString(mBufferSize));
} sb.append("\nmEnd : 0x").append(Integer.toHexString(mEnd));
sb.append("\nmDepth : 0x" + Integer.toHexString(mDepth));
sb.append("\nmBuffer : ");
if (mBuffer == null) {
sb.append("null");
} else {
sb.append(mBuffer);
}
sb.append("\nmBufferSize : 0x" + Integer.toHexString(mBufferSize));
sb.append("\nmEnd : 0x" + Integer.toHexString(mEnd));
return sb.toString(); return sb.toString();
} }

View File

@ -20,6 +20,7 @@ import android.util.AggStats;
import android.util.Duration; import android.util.Duration;
import java.io.IOException; import java.io.IOException;
import java.util.Arrays;
/** /**
* This class contains a list of helper functions to write common proto in * This class contains a list of helper functions to write common proto in
@ -91,27 +92,27 @@ public class ProtoUtils {
final int wireType = proto.getWireType(); final int wireType = proto.getWireType();
long fieldConstant; long fieldConstant;
sb.append("Offset : 0x" + Integer.toHexString(proto.getOffset())); sb.append("Offset : 0x").append(Integer.toHexString(proto.getOffset()));
sb.append("\nField Number : 0x" + Integer.toHexString(proto.getFieldNumber())); sb.append("\nField Number : 0x").append(Integer.toHexString(proto.getFieldNumber()));
sb.append("\nWire Type : "); sb.append("\nWire Type : ");
switch (wireType) { switch (wireType) {
case ProtoStream.WIRE_TYPE_VARINT: case ProtoStream.WIRE_TYPE_VARINT:
sb.append("varint");
fieldConstant = ProtoStream.makeFieldId(fieldNumber, fieldConstant = ProtoStream.makeFieldId(fieldNumber,
ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_INT64); ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_INT64);
sb.append("\nField Value : 0x" + Long.toHexString(proto.readLong(fieldConstant))); sb.append("varint\nField Value : 0x");
sb.append(Long.toHexString(proto.readLong(fieldConstant)));
break; break;
case ProtoStream.WIRE_TYPE_FIXED64: case ProtoStream.WIRE_TYPE_FIXED64:
sb.append("fixed64");
fieldConstant = ProtoStream.makeFieldId(fieldNumber, fieldConstant = ProtoStream.makeFieldId(fieldNumber,
ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_FIXED64); ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_FIXED64);
sb.append("\nField Value : 0x" + Long.toHexString(proto.readLong(fieldConstant))); sb.append("fixed64\nField Value : 0x");
sb.append(Long.toHexString(proto.readLong(fieldConstant)));
break; break;
case ProtoStream.WIRE_TYPE_LENGTH_DELIMITED: case ProtoStream.WIRE_TYPE_LENGTH_DELIMITED:
sb.append("length delimited");
fieldConstant = ProtoStream.makeFieldId(fieldNumber, fieldConstant = ProtoStream.makeFieldId(fieldNumber,
ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_BYTES); ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_BYTES);
sb.append("\nField Bytes : " + proto.readBytes(fieldConstant)); sb.append("length delimited\nField Bytes : ");
sb.append(Arrays.toString(proto.readBytes(fieldConstant)));
break; break;
case ProtoStream.WIRE_TYPE_START_GROUP: case ProtoStream.WIRE_TYPE_START_GROUP:
sb.append("start group"); sb.append("start group");
@ -120,13 +121,13 @@ public class ProtoUtils {
sb.append("end group"); sb.append("end group");
break; break;
case ProtoStream.WIRE_TYPE_FIXED32: case ProtoStream.WIRE_TYPE_FIXED32:
sb.append("fixed32");
fieldConstant = ProtoStream.makeFieldId(fieldNumber, fieldConstant = ProtoStream.makeFieldId(fieldNumber,
ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_FIXED32); ProtoStream.FIELD_COUNT_SINGLE | ProtoStream.FIELD_TYPE_FIXED32);
sb.append("\nField Value : 0x" + Integer.toHexString(proto.readInt(fieldConstant))); sb.append("fixed32\nField Value : 0x");
sb.append(Integer.toHexString(proto.readInt(fieldConstant)));
break; break;
default: default:
sb.append("unknown(" + proto.getWireType() + ")"); sb.append("unknown(").append(proto.getWireType()).append(")");
} }
return sb.toString(); return sb.toString();
} }

View File

@ -1934,7 +1934,7 @@ public final class SurfaceControl implements Parcelable {
@Override @Override
public int hashCode() { public int hashCode() {
return Objects.hash(supportedDisplayModes, activeDisplayModeId, activeDisplayModeId, return Objects.hash(Arrays.hashCode(supportedDisplayModes), activeDisplayModeId,
activeColorMode, hdrCapabilities); activeColorMode, hdrCapabilities);
} }
} }

View File

@ -7928,20 +7928,31 @@ public class BatteryStatsImpl extends BatteryStats {
synchronized (mModemNetworkLock) { synchronized (mModemNetworkLock) {
if (displayTransport == TRANSPORT_CELLULAR) { if (displayTransport == TRANSPORT_CELLULAR) {
mModemIfaces = includeInStringArray(mModemIfaces, iface); mModemIfaces = includeInStringArray(mModemIfaces, iface);
if (DEBUG) Slog.d(TAG, "Note mobile iface " + iface + ": " + mModemIfaces); if (DEBUG) {
Slog.d(TAG, "Note mobile iface " + iface + ": "
+ Arrays.toString(mModemIfaces));
}
} else { } else {
mModemIfaces = excludeFromStringArray(mModemIfaces, iface); mModemIfaces = excludeFromStringArray(mModemIfaces, iface);
if (DEBUG) Slog.d(TAG, "Note non-mobile iface " + iface + ": " + mModemIfaces); if (DEBUG) {
Slog.d(TAG, "Note non-mobile iface " + iface + ": "
+ Arrays.toString(mModemIfaces));
}
} }
} }
synchronized (mWifiNetworkLock) { synchronized (mWifiNetworkLock) {
if (displayTransport == TRANSPORT_WIFI) { if (displayTransport == TRANSPORT_WIFI) {
mWifiIfaces = includeInStringArray(mWifiIfaces, iface); mWifiIfaces = includeInStringArray(mWifiIfaces, iface);
if (DEBUG) Slog.d(TAG, "Note wifi iface " + iface + ": " + mWifiIfaces); if (DEBUG) {
Slog.d(TAG, "Note wifi iface " + iface + ": " + Arrays.toString(mWifiIfaces));
}
} else { } else {
mWifiIfaces = excludeFromStringArray(mWifiIfaces, iface); mWifiIfaces = excludeFromStringArray(mWifiIfaces, iface);
if (DEBUG) Slog.d(TAG, "Note non-wifi iface " + iface + ": " + mWifiIfaces); if (DEBUG) {
Slog.d(TAG, "Note non-wifi iface " + iface + ": "
+ Arrays.toString(mWifiIfaces));
}
} }
} }
} }
@ -14409,7 +14420,7 @@ public class BatteryStatsImpl extends BatteryStats {
@NonNull CpuDeltaPowerAccumulator accumulator) { @NonNull CpuDeltaPowerAccumulator accumulator) {
if (DEBUG_ENERGY) { if (DEBUG_ENERGY) {
Slog.d(TAG, Slog.d(TAG,
"Updating cpu cluster stats: " + clusterChargeUC.toString()); "Updating cpu cluster stats: " + Arrays.toString(clusterChargeUC));
} }
if (mGlobalMeasuredEnergyStats == null) { if (mGlobalMeasuredEnergyStats == null) {
return; return;

View File

@ -26,7 +26,6 @@ import android.annotation.NonNull;
import android.annotation.Nullable; import android.annotation.Nullable;
import android.os.Parcel; import android.os.Parcel;
import android.os.Parcelable; import android.os.Parcelable;
import android.os.storage.StorageManager;
import android.text.TextUtils; import android.text.TextUtils;
import com.android.internal.util.Preconditions; import com.android.internal.util.Preconditions;
@ -368,7 +367,7 @@ public class LockscreenCredential implements Parcelable, AutoCloseable {
@Override @Override
public int hashCode() { public int hashCode() {
// Effective Java Always override hashCode when you override equals // Effective Java Always override hashCode when you override equals
return (17 + mType) * 31 + mCredential.hashCode(); return Objects.hash(mType, Arrays.hashCode(mCredential));
} }
@Override @Override

View File

@ -42,6 +42,7 @@ import androidx.test.filters.SmallTest;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections;
import java.util.List; import java.util.List;
/** /**
@ -282,9 +283,10 @@ public class FontsContractTest extends ProviderTestCase2<TestFontsProvider> {
setupPackageManager(); setupPackageManager();
byte[] wrongCert = Base64.decode("this is a wrong cert", Base64.DEFAULT); byte[] wrongCert = Base64.decode("this is a wrong cert", Base64.DEFAULT);
List<byte[]> certList = Arrays.asList(wrongCert); List<byte[]> certList = Collections.singletonList(wrongCert);
FontRequest requestWrongCerts = new FontRequest( FontRequest requestWrongCerts = new FontRequest(
TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query", Arrays.asList(certList)); TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query",
Collections.singletonList(certList));
assertNull(FontsContract.getProvider(mPackageManager, requestWrongCerts)); assertNull(FontsContract.getProvider(mPackageManager, requestWrongCerts));
} }
@ -293,9 +295,10 @@ public class FontsContractTest extends ProviderTestCase2<TestFontsProvider> {
throws PackageManager.NameNotFoundException { throws PackageManager.NameNotFoundException {
ProviderInfo info = setupPackageManager(); ProviderInfo info = setupPackageManager();
List<byte[]> certList = Arrays.asList(BYTE_ARRAY); List<byte[]> certList = Collections.singletonList(BYTE_ARRAY);
FontRequest requestRightCerts = new FontRequest( FontRequest requestRightCerts = new FontRequest(
TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query", Arrays.asList(certList)); TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query",
Collections.singletonList(certList));
ProviderInfo result = FontsContract.getProvider( ProviderInfo result = FontsContract.getProvider(
mPackageManager, requestRightCerts); mPackageManager, requestRightCerts);
@ -309,7 +312,8 @@ public class FontsContractTest extends ProviderTestCase2<TestFontsProvider> {
byte[] wrongCert = Base64.decode("this is a wrong cert", Base64.DEFAULT); byte[] wrongCert = Base64.decode("this is a wrong cert", Base64.DEFAULT);
List<byte[]> certList = Arrays.asList(wrongCert, BYTE_ARRAY); List<byte[]> certList = Arrays.asList(wrongCert, BYTE_ARRAY);
FontRequest requestRightCerts = new FontRequest( FontRequest requestRightCerts = new FontRequest(
TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query", Arrays.asList(certList)); TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query",
Collections.singletonList(certList));
assertNull(FontsContract.getProvider(mPackageManager, requestRightCerts)); assertNull(FontsContract.getProvider(mPackageManager, requestRightCerts));
} }
@ -332,7 +336,8 @@ public class FontsContractTest extends ProviderTestCase2<TestFontsProvider> {
// {BYTE_ARRAY_2, BYTE_ARRAY_COPY}. // {BYTE_ARRAY_2, BYTE_ARRAY_COPY}.
List<byte[]> certList = Arrays.asList(BYTE_ARRAY_2, BYTE_ARRAY_COPY); List<byte[]> certList = Arrays.asList(BYTE_ARRAY_2, BYTE_ARRAY_COPY);
FontRequest requestRightCerts = new FontRequest( FontRequest requestRightCerts = new FontRequest(
TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query", Arrays.asList(certList)); TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query",
Collections.singletonList(certList));
assertNull(FontsContract.getProvider(mPackageManager, requestRightCerts)); assertNull(FontsContract.getProvider(mPackageManager, requestRightCerts));
} }
@ -341,9 +346,9 @@ public class FontsContractTest extends ProviderTestCase2<TestFontsProvider> {
ProviderInfo info = setupPackageManager(); ProviderInfo info = setupPackageManager();
List<List<byte[]>> certList = new ArrayList<>(); List<List<byte[]>> certList = new ArrayList<>();
byte[] wrongCert = Base64.decode("this is a wrong cert", Base64.DEFAULT); certList.add(Collections.singletonList(
certList.add(Arrays.asList(wrongCert)); Base64.decode("this is a wrong cert", Base64.DEFAULT)));
certList.add(Arrays.asList(BYTE_ARRAY)); certList.add(Collections.singletonList(BYTE_ARRAY));
FontRequest requestRightCerts = new FontRequest( FontRequest requestRightCerts = new FontRequest(
TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query", certList); TestFontsProvider.AUTHORITY, PACKAGE_NAME, "query", certList);
ProviderInfo result = FontsContract.getProvider(mPackageManager, requestRightCerts); ProviderInfo result = FontsContract.getProvider(mPackageManager, requestRightCerts);
@ -356,7 +361,7 @@ public class FontsContractTest extends ProviderTestCase2<TestFontsProvider> {
setupPackageManager(); setupPackageManager();
List<List<byte[]>> certList = new ArrayList<>(); List<List<byte[]>> certList = new ArrayList<>();
certList.add(Arrays.asList(BYTE_ARRAY)); certList.add(Collections.singletonList(BYTE_ARRAY));
FontRequest requestRightCerts = new FontRequest( FontRequest requestRightCerts = new FontRequest(
TestFontsProvider.AUTHORITY, "com.wrong.package.name", "query", certList); TestFontsProvider.AUTHORITY, "com.wrong.package.name", "query", certList);
try { try {

View File

@ -2796,7 +2796,8 @@ public abstract class ColorSpace {
if (mWhitePoint == null || mTransform == null) { if (mWhitePoint == null || mTransform == null) {
throw new IllegalStateException( throw new IllegalStateException(
"ColorSpace (" + this + ") cannot create native object! mWhitePoint: " "ColorSpace (" + this + ") cannot create native object! mWhitePoint: "
+ mWhitePoint + " mTransform: " + mTransform); + Arrays.toString(mWhitePoint) + " mTransform: "
+ Arrays.toString(mTransform));
} }
// This mimics the old code that was in native. // This mimics the old code that was in native.

View File

@ -5089,9 +5089,12 @@ public class MediaPlayer extends PlayerBase
@Nullable Map<String, String> optionalParameters) @Nullable Map<String, String> optionalParameters)
throws NoDrmSchemeException throws NoDrmSchemeException
{ {
Log.v(TAG, "getKeyRequest: " + Log.v(TAG, "getKeyRequest: "
" keySetId: " + keySetId + " initData:" + initData + " mimeType: " + mimeType + + " keySetId: " + Arrays.toString(keySetId)
" keyType: " + keyType + " optionalParameters: " + optionalParameters); + " initData:" + Arrays.toString(initData)
+ " mimeType: " + mimeType
+ " keyType: " + keyType
+ " optionalParameters: " + optionalParameters);
synchronized (mDrmLock) { synchronized (mDrmLock) {
if (!mActiveDrmScheme) { if (!mActiveDrmScheme) {
@ -5150,7 +5153,8 @@ public class MediaPlayer extends PlayerBase
public byte[] provideKeyResponse(@Nullable byte[] keySetId, @NonNull byte[] response) public byte[] provideKeyResponse(@Nullable byte[] keySetId, @NonNull byte[] response)
throws NoDrmSchemeException, DeniedByServerException throws NoDrmSchemeException, DeniedByServerException
{ {
Log.v(TAG, "provideKeyResponse: keySetId: " + keySetId + " response: " + response); Log.v(TAG, "provideKeyResponse: keySetId: " + Arrays.toString(keySetId)
+ " response: " + Arrays.toString(response));
synchronized (mDrmLock) { synchronized (mDrmLock) {
@ -5166,8 +5170,9 @@ public class MediaPlayer extends PlayerBase
byte[] keySetResult = mDrmObj.provideKeyResponse(scope, response); byte[] keySetResult = mDrmObj.provideKeyResponse(scope, response);
Log.v(TAG, "provideKeyResponse: keySetId: " + keySetId + " response: " + response + Log.v(TAG, "provideKeyResponse: keySetId: " + Arrays.toString(keySetId)
" --> " + keySetResult); + " response: " + Arrays.toString(response)
+ " --> " + Arrays.toString(keySetResult));
return keySetResult; return keySetResult;
@ -5194,7 +5199,7 @@ public class MediaPlayer extends PlayerBase
public void restoreKeys(@NonNull byte[] keySetId) public void restoreKeys(@NonNull byte[] keySetId)
throws NoDrmSchemeException throws NoDrmSchemeException
{ {
Log.v(TAG, "restoreKeys: keySetId: " + keySetId); Log.v(TAG, "restoreKeys: keySetId: " + Arrays.toString(keySetId));
synchronized (mDrmLock) { synchronized (mDrmLock) {
@ -5481,7 +5486,8 @@ public class MediaPlayer extends PlayerBase
// at prepareDrm/openSession rather than getKeyRequest/provideKeyResponse // at prepareDrm/openSession rather than getKeyRequest/provideKeyResponse
try { try {
mDrmSessionId = mDrmObj.openSession(); mDrmSessionId = mDrmObj.openSession();
Log.v(TAG, "prepareDrm_openSessionStep: mDrmSessionId=" + mDrmSessionId); Log.v(TAG, "prepareDrm_openSessionStep: mDrmSessionId="
+ Arrays.toString(mDrmSessionId));
// Sending it down to native/mediaserver to create the crypto object // Sending it down to native/mediaserver to create the crypto object
// This call could simply fail due to bad player state, e.g., after start(). // This call could simply fail due to bad player state, e.g., after start().
@ -5544,7 +5550,7 @@ public class MediaPlayer extends PlayerBase
response = Streams.readFully(connection.getInputStream()); response = Streams.readFully(connection.getInputStream());
Log.v(TAG, "HandleProvisioninig: Thread run: response " + Log.v(TAG, "HandleProvisioninig: Thread run: response " +
response.length + " " + response); response.length + " " + Arrays.toString(response));
} catch (Exception e) { } catch (Exception e) {
status = PREPARE_DRM_STATUS_PROVISIONING_NETWORK_ERROR; status = PREPARE_DRM_STATUS_PROVISIONING_NETWORK_ERROR;
Log.w(TAG, "HandleProvisioninig: Thread run: connect " + e + " url: " + url); Log.w(TAG, "HandleProvisioninig: Thread run: connect " + e + " url: " + url);
@ -5628,8 +5634,9 @@ public class MediaPlayer extends PlayerBase
return PREPARE_DRM_STATUS_PREPARATION_ERROR; return PREPARE_DRM_STATUS_PREPARATION_ERROR;
} }
Log.v(TAG, "HandleProvisioninig provReq " + Log.v(TAG, "HandleProvisioninig provReq "
" data: " + provReq.getData() + " url: " + provReq.getDefaultUrl()); + " data: " + Arrays.toString(provReq.getData())
+ " url: " + provReq.getDefaultUrl());
// networking in a background thread // networking in a background thread
mDrmProvisioningInProgress = true; mDrmProvisioningInProgress = true;
@ -5712,7 +5719,8 @@ public class MediaPlayer extends PlayerBase
private void cleanDrmObj() private void cleanDrmObj()
{ {
// the caller holds mDrmLock // the caller holds mDrmLock
Log.v(TAG, "cleanDrmObj: mDrmObj=" + mDrmObj + " mDrmSessionId=" + mDrmSessionId); Log.v(TAG, "cleanDrmObj: mDrmObj=" + mDrmObj
+ " mDrmSessionId=" + Arrays.toString(mDrmSessionId));
if (mDrmSessionId != null) { if (mDrmSessionId != null) {
mDrmObj.closeSession(mDrmSessionId); mDrmObj.closeSession(mDrmSessionId);

View File

@ -32,6 +32,7 @@ import com.android.internal.annotations.GuardedBy;
import com.android.internal.util.Preconditions; import com.android.internal.util.Preconditions;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
@ -182,7 +183,7 @@ public final class AudioProductStrategy implements Parcelable {
AudioProductStrategy thatStrategy = (AudioProductStrategy) o; AudioProductStrategy thatStrategy = (AudioProductStrategy) o;
return mName == thatStrategy.mName && mId == thatStrategy.mId return mName == thatStrategy.mName && mId == thatStrategy.mId
&& mAudioAttributesGroups.equals(thatStrategy.mAudioAttributesGroups); && Arrays.equals(mAudioAttributesGroups, thatStrategy.mAudioAttributesGroups);
} }
/** /**
@ -415,7 +416,7 @@ public final class AudioProductStrategy implements Parcelable {
return mVolumeGroupId == thatAag.mVolumeGroupId return mVolumeGroupId == thatAag.mVolumeGroupId
&& mLegacyStreamType == thatAag.mLegacyStreamType && mLegacyStreamType == thatAag.mLegacyStreamType
&& mAudioAttributes.equals(thatAag.mAudioAttributes); && Arrays.equals(mAudioAttributes, thatAag.mAudioAttributes);
} }
public int getStreamType() { public int getStreamType() {

View File

@ -114,7 +114,7 @@ public final class AudioVolumeGroup implements Parcelable {
AudioVolumeGroup thatAvg = (AudioVolumeGroup) o; AudioVolumeGroup thatAvg = (AudioVolumeGroup) o;
return mName == thatAvg.mName && mId == thatAvg.mId return mName == thatAvg.mName && mId == thatAvg.mId
&& mAudioAttributes.equals(thatAvg.mAudioAttributes); && Arrays.equals(mAudioAttributes, thatAvg.mAudioAttributes);
} }
/** /**

View File

@ -402,9 +402,10 @@ public final class PlaybackMetrics implements Parcelable {
@Override @Override
public int hashCode() { public int hashCode() {
return Objects.hash(mMediaDurationMillis, mStreamSource, mStreamType, mPlaybackType, return Objects.hash(mMediaDurationMillis, mStreamSource, mStreamType, mPlaybackType,
mDrmType, mContentType, mPlayerName, mPlayerVersion, mExperimentIds, mDrmType, mContentType, mPlayerName, mPlayerVersion,
mVideoFramesPlayed, mVideoFramesDropped, mAudioUnderrunCount, mNetworkBytesRead, Arrays.hashCode(mExperimentIds), mVideoFramesPlayed, mVideoFramesDropped,
mLocalBytesRead, mNetworkTransferDurationMillis, mDrmSessionId); mAudioUnderrunCount, mNetworkBytesRead, mLocalBytesRead,
mNetworkTransferDurationMillis, Arrays.hashCode(mDrmSessionId));
} }
@Override @Override

View File

@ -16,10 +16,6 @@
package com.android.mediaframeworktest.helpers; package com.android.mediaframeworktest.helpers;
import org.hamcrest.CoreMatchers;
import org.hamcrest.Matcher;
import org.junit.rules.ErrorCollector;
import android.graphics.Rect; import android.graphics.Rect;
import android.hardware.camera2.CameraCharacteristics; import android.hardware.camera2.CameraCharacteristics;
import android.hardware.camera2.CaptureRequest; import android.hardware.camera2.CaptureRequest;
@ -30,6 +26,10 @@ import android.media.Image;
import android.util.Log; import android.util.Log;
import android.util.Size; import android.util.Size;
import org.hamcrest.CoreMatchers;
import org.hamcrest.Matcher;
import org.junit.rules.ErrorCollector;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.HashSet; import java.util.HashSet;
@ -903,7 +903,7 @@ public class CameraErrorCollector extends ErrorCollector {
if ((value = expectKeyValueNotNull(characteristics, key)) == null) { if ((value = expectKeyValueNotNull(characteristics, key)) == null) {
return; return;
} }
String reason = "Key " + key.getName() + " value " + value String reason = "Key " + key.getName() + " value " + Arrays.toString(value)
+ " doesn't contain the expected value " + expected; + " doesn't contain the expected value " + expected;
expectContains(reason, value, expected); expectContains(reason, value, expected);
} }
@ -921,7 +921,7 @@ public class CameraErrorCollector extends ErrorCollector {
if ((value = expectKeyValueNotNull(characteristics, key)) == null) { if ((value = expectKeyValueNotNull(characteristics, key)) == null) {
return; return;
} }
String reason = "Key " + key.getName() + " value " + value String reason = "Key " + key.getName() + " value " + Arrays.toString(value)
+ " doesn't contain the expected value " + expected; + " doesn't contain the expected value " + expected;
expectContains(reason, value, expected); expectContains(reason, value, expected);
} }
@ -939,7 +939,7 @@ public class CameraErrorCollector extends ErrorCollector {
if ((value = expectKeyValueNotNull(characteristics, key)) == null) { if ((value = expectKeyValueNotNull(characteristics, key)) == null) {
return; return;
} }
String reason = "Key " + key.getName() + " value " + value String reason = "Key " + key.getName() + " value " + Arrays.toString(value)
+ " doesn't contain the expected value " + expected; + " doesn't contain the expected value " + expected;
expectContains(reason, value, expected); expectContains(reason, value, expected);
} }
@ -960,7 +960,7 @@ public class CameraErrorCollector extends ErrorCollector {
public <T> void expectContains(T[] values, T expected) { public <T> void expectContains(T[] values, T expected) {
String reason = "Expected value " + expected String reason = "Expected value " + expected
+ " is not contained in the given values " + values; + " is not contained in the given values " + Arrays.toString(values);
expectContains(reason, values, expected); expectContains(reason, values, expected);
} }
@ -996,7 +996,7 @@ public class CameraErrorCollector extends ErrorCollector {
public void expectContains(int[] values, int expected) { public void expectContains(int[] values, int expected) {
String reason = "Expected value " + expected String reason = "Expected value " + expected
+ " is not contained in the given values " + values; + " is not contained in the given values " + Arrays.toString(values);
expectContains(reason, values, expected); expectContains(reason, values, expected);
} }
@ -1040,7 +1040,7 @@ public class CameraErrorCollector extends ErrorCollector {
*/ */
public void expectContains(boolean[] values, boolean expected) { public void expectContains(boolean[] values, boolean expected) {
String reason = "Expected value " + expected String reason = "Expected value " + expected
+ " is not contained in the given values " + values; + " is not contained in the given values " + Arrays.toString(values);
expectContains(reason, values, expected); expectContains(reason, values, expected);
} }

View File

@ -2812,7 +2812,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glDeleteBuffers(int n, int[] buffers, int offset) { public void glDeleteBuffers(int n, int[] buffers, int offset) {
begin("glDeleteBuffers"); begin("glDeleteBuffers");
arg("n", n); arg("n", n);
arg("buffers", buffers.toString()); arg("buffers", Arrays.toString(buffers));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glDeleteBuffers(n, buffers, offset); mgl11.glDeleteBuffers(n, buffers, offset);
@ -2831,7 +2831,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGenBuffers(int n, int[] buffers, int offset) { public void glGenBuffers(int n, int[] buffers, int offset) {
begin("glGenBuffers"); begin("glGenBuffers");
arg("n", n); arg("n", n);
arg("buffers", buffers.toString()); arg("buffers", Arrays.toString(buffers));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGenBuffers(n, buffers, offset); mgl11.glGenBuffers(n, buffers, offset);
@ -2850,7 +2850,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGetBooleanv(int pname, boolean[] params, int offset) { public void glGetBooleanv(int pname, boolean[] params, int offset) {
begin("glGetBooleanv"); begin("glGetBooleanv");
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetBooleanv(pname, params, offset); mgl11.glGetBooleanv(pname, params, offset);
@ -2871,7 +2871,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetBufferParameteriv"); begin("glGetBufferParameteriv");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetBufferParameteriv(target, pname, params, offset); mgl11.glGetBufferParameteriv(target, pname, params, offset);
@ -2891,7 +2891,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGetClipPlanef(int pname, float[] eqn, int offset) { public void glGetClipPlanef(int pname, float[] eqn, int offset) {
begin("glGetClipPlanef"); begin("glGetClipPlanef");
arg("pname", pname); arg("pname", pname);
arg("eqn", eqn.toString()); arg("eqn", Arrays.toString(eqn));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetClipPlanef(pname, eqn, offset); mgl11.glGetClipPlanef(pname, eqn, offset);
@ -2910,7 +2910,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGetClipPlanex(int pname, int[] eqn, int offset) { public void glGetClipPlanex(int pname, int[] eqn, int offset) {
begin("glGetClipPlanex"); begin("glGetClipPlanex");
arg("pname", pname); arg("pname", pname);
arg("eqn", eqn.toString()); arg("eqn", Arrays.toString(eqn));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetClipPlanex(pname, eqn, offset); mgl11.glGetClipPlanex(pname, eqn, offset);
@ -2928,7 +2928,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGetFixedv(int pname, int[] params, int offset) { public void glGetFixedv(int pname, int[] params, int offset) {
begin("glGetFixedv"); begin("glGetFixedv");
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetFixedv(pname, params, offset); mgl11.glGetFixedv(pname, params, offset);
@ -2946,7 +2946,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGetFloatv(int pname, float[] params, int offset) { public void glGetFloatv(int pname, float[] params, int offset) {
begin("glGetFloatv"); begin("glGetFloatv");
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetFloatv(pname, params, offset); mgl11.glGetFloatv(pname, params, offset);
@ -2965,7 +2965,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetLightfv"); begin("glGetLightfv");
arg("light", light); arg("light", light);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetLightfv(light, pname, params, offset); mgl11.glGetLightfv(light, pname, params, offset);
@ -2986,7 +2986,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetLightxv"); begin("glGetLightxv");
arg("light", light); arg("light", light);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetLightxv(light, pname, params, offset); mgl11.glGetLightxv(light, pname, params, offset);
@ -3008,7 +3008,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetMaterialfv"); begin("glGetMaterialfv");
arg("face", face); arg("face", face);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetMaterialfv(face, pname, params, offset); mgl11.glGetMaterialfv(face, pname, params, offset);
@ -3029,7 +3029,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetMaterialxv"); begin("glGetMaterialxv");
arg("face", face); arg("face", face);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetMaterialxv(face, pname, params, offset); mgl11.glGetMaterialxv(face, pname, params, offset);
@ -3050,7 +3050,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexEnviv"); begin("glGetTexEnviv");
arg("env", env); arg("env", env);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetTexEnviv(env, pname, params, offset); mgl11.glGetTexEnviv(env, pname, params, offset);
@ -3071,7 +3071,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexEnviv"); begin("glGetTexEnviv");
arg("env", env); arg("env", env);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetTexEnviv(env, pname, params, offset); mgl11.glGetTexEnviv(env, pname, params, offset);
@ -3092,7 +3092,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexParameterfv"); begin("glGetTexParameterfv");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetTexParameterfv(target, pname, params, offset); mgl11.glGetTexParameterfv(target, pname, params, offset);
@ -3113,7 +3113,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexParameteriv"); begin("glGetTexParameteriv");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetTexEnviv(target, pname, params, offset); mgl11.glGetTexEnviv(target, pname, params, offset);
@ -3135,7 +3135,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexParameterxv"); begin("glGetTexParameterxv");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glGetTexParameterxv(target, pname, params, offset); mgl11.glGetTexParameterxv(target, pname, params, offset);
@ -3191,7 +3191,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glPointParameterfv(int pname, float[] params, int offset) { public void glPointParameterfv(int pname, float[] params, int offset) {
begin("glPointParameterfv"); begin("glPointParameterfv");
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glPointParameterfv(pname, params, offset); mgl11.glPointParameterfv(pname, params, offset);
@ -3219,7 +3219,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glPointParameterxv(int pname, int[] params, int offset) { public void glPointParameterxv(int pname, int[] params, int offset) {
begin("glPointParameterxv"); begin("glPointParameterxv");
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glPointParameterxv(pname, params, offset); mgl11.glPointParameterxv(pname, params, offset);
@ -3259,7 +3259,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glTexEnviv"); begin("glTexEnviv");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glTexEnviv(target, pname, params, offset); mgl11.glTexEnviv(target, pname, params, offset);
@ -3281,7 +3281,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glTexParameterfv"); begin("glTexParameterfv");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glTexParameterfv( target, pname, params, offset); mgl11.glTexParameterfv( target, pname, params, offset);
@ -3313,7 +3313,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glTexParameterxv"); begin("glTexParameterxv");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11.glTexParameterxv(target, pname, params, offset); mgl11.glTexParameterxv(target, pname, params, offset);
@ -3356,7 +3356,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGetPointerv(int pname, Buffer[] params) { public void glGetPointerv(int pname, Buffer[] params) {
begin("glGetPointerv"); begin("glGetPointerv");
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
end(); end();
mgl11.glGetPointerv(pname, params); mgl11.glGetPointerv(pname, params);
checkError(); checkError();
@ -3513,7 +3513,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glDeleteFramebuffersOES(int n, int[] framebuffers, int offset) { public void glDeleteFramebuffersOES(int n, int[] framebuffers, int offset) {
begin("glDeleteFramebuffersOES"); begin("glDeleteFramebuffersOES");
arg("n", n); arg("n", n);
arg("framebuffers", framebuffers.toString()); arg("framebuffers", Arrays.toString(framebuffers));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glDeleteFramebuffersOES(n, framebuffers, offset); mgl11ExtensionPack.glDeleteFramebuffersOES(n, framebuffers, offset);
@ -3534,7 +3534,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glDeleteRenderbuffersOES(int n, int[] renderbuffers, int offset) { public void glDeleteRenderbuffersOES(int n, int[] renderbuffers, int offset) {
begin("glDeleteRenderbuffersOES"); begin("glDeleteRenderbuffersOES");
arg("n", n); arg("n", n);
arg("renderbuffers", renderbuffers.toString()); arg("renderbuffers", Arrays.toString(renderbuffers));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glDeleteRenderbuffersOES(n, renderbuffers, offset); mgl11ExtensionPack.glDeleteRenderbuffersOES(n, renderbuffers, offset);
@ -3591,7 +3591,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGenFramebuffersOES(int n, int[] framebuffers, int offset) { public void glGenFramebuffersOES(int n, int[] framebuffers, int offset) {
begin("glGenFramebuffersOES"); begin("glGenFramebuffersOES");
arg("n", n); arg("n", n);
arg("framebuffers", framebuffers.toString()); arg("framebuffers", Arrays.toString(framebuffers));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glGenFramebuffersOES(n, framebuffers, offset); mgl11ExtensionPack.glGenFramebuffersOES(n, framebuffers, offset);
@ -3612,7 +3612,7 @@ class GLLogWrapper extends GLWrapperBase {
public void glGenRenderbuffersOES(int n, int[] renderbuffers, int offset) { public void glGenRenderbuffersOES(int n, int[] renderbuffers, int offset) {
begin("glGenRenderbuffersOES"); begin("glGenRenderbuffersOES");
arg("n", n); arg("n", n);
arg("renderbuffers", renderbuffers.toString()); arg("renderbuffers", Arrays.toString(renderbuffers));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glGenRenderbuffersOES(n, renderbuffers, offset); mgl11ExtensionPack.glGenRenderbuffersOES(n, renderbuffers, offset);
@ -3636,7 +3636,7 @@ class GLLogWrapper extends GLWrapperBase {
arg("target", target); arg("target", target);
arg("attachment", attachment); arg("attachment", attachment);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glGetFramebufferAttachmentParameterivOES(target, attachment, pname, params, offset); mgl11ExtensionPack.glGetFramebufferAttachmentParameterivOES(target, attachment, pname, params, offset);
@ -3662,7 +3662,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetRenderbufferParameterivOES"); begin("glGetRenderbufferParameterivOES");
arg("target", target); arg("target", target);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glGetRenderbufferParameterivOES(target, pname, params, offset); mgl11ExtensionPack.glGetRenderbufferParameterivOES(target, pname, params, offset);
@ -3686,7 +3686,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexGenfv"); begin("glGetTexGenfv");
arg("coord", coord); arg("coord", coord);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glGetTexGenfv(coord, pname, params, offset); mgl11ExtensionPack.glGetTexGenfv(coord, pname, params, offset);
@ -3709,7 +3709,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexGeniv"); begin("glGetTexGeniv");
arg("coord", coord); arg("coord", coord);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glGetTexGeniv(coord, pname, params, offset); mgl11ExtensionPack.glGetTexGeniv(coord, pname, params, offset);
@ -3732,7 +3732,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glGetTexGenxv"); begin("glGetTexGenxv");
arg("coord", coord); arg("coord", coord);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glGetTexGenxv(coord, pname, params, offset); mgl11ExtensionPack.glGetTexGenxv(coord, pname, params, offset);
@ -3799,7 +3799,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glTexGenfv"); begin("glTexGenfv");
arg("coord", coord); arg("coord", coord);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glTexGenfv(coord, pname, params, offset); mgl11ExtensionPack.glTexGenfv(coord, pname, params, offset);
@ -3833,7 +3833,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glTexGeniv"); begin("glTexGeniv");
arg("coord", coord); arg("coord", coord);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glTexGeniv(coord, pname, params, offset); mgl11ExtensionPack.glTexGeniv(coord, pname, params, offset);
@ -3867,7 +3867,7 @@ class GLLogWrapper extends GLWrapperBase {
begin("glTexGenxv"); begin("glTexGenxv");
arg("coord", coord); arg("coord", coord);
arg("pname", pname); arg("pname", pname);
arg("params", params.toString()); arg("params", Arrays.toString(params));
arg("offset", offset); arg("offset", offset);
end(); end();
mgl11ExtensionPack.glTexGenxv(coord, pname, params, offset); mgl11ExtensionPack.glTexGenxv(coord, pname, params, offset);

View File

@ -685,8 +685,8 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub
if (mTraceManager.isA11yTracingEnabledForTypes(FLAGS_PACKAGE_BROADCAST_RECEIVER)) { if (mTraceManager.isA11yTracingEnabledForTypes(FLAGS_PACKAGE_BROADCAST_RECEIVER)) {
mTraceManager.logTrace(LOG_TAG + ".PM.onHandleForceStop", mTraceManager.logTrace(LOG_TAG + ".PM.onHandleForceStop",
FLAGS_PACKAGE_BROADCAST_RECEIVER, FLAGS_PACKAGE_BROADCAST_RECEIVER,
"intent=" + intent + ";packages=" + packages + ";uid=" + uid "intent=" + intent + ";packages=" + Arrays.toString(packages)
+ ";doit=" + doit); + ";uid=" + uid + ";doit=" + doit);
} }
synchronized (mLock) { synchronized (mLock) {
final int userId = getChangingUserId(); final int userId = getChangingUserId();

View File

@ -447,7 +447,7 @@ class MultiFingerSwipe extends GestureMatcher {
StringBuilder builder = new StringBuilder(super.toString()); StringBuilder builder = new StringBuilder(super.toString());
if (getState() != STATE_GESTURE_CANCELED) { if (getState() != STATE_GESTURE_CANCELED) {
builder.append(", mBase: ") builder.append(", mBase: ")
.append(mBase.toString()) .append(Arrays.toString(mBase))
.append(", mMinPixelsBetweenSamplesX:") .append(", mMinPixelsBetweenSamplesX:")
.append(mMinPixelsBetweenSamplesX) .append(mMinPixelsBetweenSamplesX)
.append(", mMinPixelsBetweenSamplesY:") .append(", mMinPixelsBetweenSamplesY:")

View File

@ -85,7 +85,6 @@ import android.os.PowerSaveState;
import android.os.Process; import android.os.Process;
import android.os.RemoteException; import android.os.RemoteException;
import android.os.SELinux; import android.os.SELinux;
import android.os.ServiceManager;
import android.os.SystemClock; import android.os.SystemClock;
import android.os.UserHandle; import android.os.UserHandle;
import android.os.WorkSource; import android.os.WorkSource;
@ -2832,7 +2831,7 @@ public class UserBackupManagerService {
+ " includekeyvalue=" + " includekeyvalue="
+ doKeyValue + doKeyValue
+ " pkgs=" + " pkgs="
+ pkgList)); + Arrays.toString(pkgList)));
} }
Slog.i(TAG, addUserIdToLogMessage(mUserId, "Beginning adb backup...")); Slog.i(TAG, addUserIdToLogMessage(mUserId, "Beginning adb backup..."));

View File

@ -25,9 +25,9 @@ import static com.android.server.pm.PackageManagerService.PLATFORM_PACKAGE_NAME;
import android.annotation.Nullable; import android.annotation.Nullable;
import android.app.backup.BackupManager.OperationType; import android.app.backup.BackupManager.OperationType;
import android.app.backup.BackupTransport; import android.app.backup.BackupTransport;
import android.app.compat.CompatChanges;
import android.compat.annotation.ChangeId; import android.compat.annotation.ChangeId;
import android.compat.annotation.EnabledSince; import android.compat.annotation.EnabledSince;
import android.app.compat.CompatChanges;
import android.compat.annotation.Overridable; import android.compat.annotation.Overridable;
import android.content.pm.ApplicationInfo; import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo; import android.content.pm.PackageInfo;
@ -46,6 +46,7 @@ import com.android.server.backup.transport.TransportConnection;
import com.google.android.collect.Sets; import com.google.android.collect.Sets;
import java.util.Arrays;
import java.util.Set; import java.util.Set;
/** /**
@ -359,8 +360,8 @@ public class BackupEligibilityRules {
} }
if (DEBUG) { if (DEBUG) {
Slog.v(TAG, "signaturesMatch(): stored=" + storedSigs + " device=" Slog.v(TAG, "signaturesMatch(): stored=" + Arrays.toString(storedSigs)
+ signingInfo.getApkContentsSigners()); + " device=" + Arrays.toString(signingInfo.getApkContentsSigners()));
} }
final int nStored = storedSigs.length; final int nStored = storedSigs.length;

View File

@ -816,8 +816,7 @@ final class DiscreteRegistry {
} }
} catch (Throwable t) { } catch (Throwable t) {
Slog.e(TAG, "Error while cleaning timeline files: " + t.getMessage() + " " Slog.e(TAG, "Error while cleaning timeline files: ", t);
+ t.getStackTrace());
} }
} }
} }

View File

@ -30,6 +30,7 @@ import java.security.NoSuchAlgorithmException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
public class BackupUtils { public class BackupUtils {
private static final String TAG = "BackupUtils"; private static final String TAG = "BackupUtils";
@ -64,8 +65,9 @@ public class BackupUtils {
} }
if (DEBUG) { if (DEBUG) {
Slog.v(TAG, "signaturesMatch(): stored=" + storedSigHashes Slog.v(TAG, "signaturesMatch(): stored="
+ " device=" + signingInfo.getApkContentsSigners()); + storedSigHashes.stream().map(Arrays::toString).collect(Collectors.toList())
+ " device=" + Arrays.toString(signingInfo.getApkContentsSigners()));
} }
final int nStored = storedSigHashes.size(); final int nStored = storedSigHashes.size();

View File

@ -554,7 +554,7 @@ class GnssNetworkConnectivityHandler {
mAGpsDataConnectionIpAddr = InetAddress.getByAddress(suplIpAddr); mAGpsDataConnectionIpAddr = InetAddress.getByAddress(suplIpAddr);
if (DEBUG) Log.d(TAG, "IP address converted to: " + mAGpsDataConnectionIpAddr); if (DEBUG) Log.d(TAG, "IP address converted to: " + mAGpsDataConnectionIpAddr);
} catch (UnknownHostException e) { } catch (UnknownHostException e) {
Log.e(TAG, "Bad IP Address: " + suplIpAddr, e); Log.e(TAG, "Bad IP Address: " + Arrays.toString(suplIpAddr), e);
} }
} }

View File

@ -36,7 +36,6 @@ import android.provider.Settings;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Slog; import android.util.Slog;
import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.util.ArrayUtils; import com.android.internal.util.ArrayUtils;
import com.android.internal.util.HexDump; import com.android.internal.util.HexDump;
@ -45,8 +44,8 @@ import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.security.NoSuchAlgorithmException; import java.security.NoSuchAlgorithmException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.GregorianCalendar; import java.util.GregorianCalendar;
import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
@ -155,7 +154,7 @@ class WatchlistLoggingHandler extends Handler {
try { try {
final String[] packageNames = mPm.getPackagesForUid(uid); final String[] packageNames = mPm.getPackagesForUid(uid);
if (packageNames == null || packageNames.length == 0) { if (packageNames == null || packageNames.length == 0) {
Slog.e(TAG, "Couldn't find package: " + packageNames); Slog.e(TAG, "Couldn't find package: " + Arrays.toString(packageNames));
return false; return false;
} }
ai = mPm.getApplicationInfo(packageNames[0], 0); ai = mPm.getApplicationInfo(packageNames[0], 0);

View File

@ -420,7 +420,7 @@ final class AccessibilityController {
if (mAccessibilityTracing.isTracingEnabled(FLAGS_WINDOWS_FOR_ACCESSIBILITY_CALLBACK)) { if (mAccessibilityTracing.isTracingEnabled(FLAGS_WINDOWS_FOR_ACCESSIBILITY_CALLBACK)) {
mAccessibilityTracing.logTrace(TAG + ".onSomeWindowResizedOrMoved", mAccessibilityTracing.logTrace(TAG + ".onSomeWindowResizedOrMoved",
FLAGS_WINDOWS_FOR_ACCESSIBILITY_CALLBACK, FLAGS_WINDOWS_FOR_ACCESSIBILITY_CALLBACK,
"displayIds={" + displayIds.toString() + "}", "".getBytes(), callingUid); "displayIds={" + Arrays.toString(displayIds) + "}", "".getBytes(), callingUid);
} }
// Not relevant for the display magnifier. // Not relevant for the display magnifier.
for (int i = 0; i < displayIds.length; i++) { for (int i = 0; i < displayIds.length; i++) {

View File

@ -53,6 +53,7 @@ import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator; import java.util.Comparator;
import java.util.List; import java.util.List;
@ -424,7 +425,7 @@ public class TaskPersister implements PersisterQueue.Listener {
private static void removeObsoleteFiles(ArraySet<Integer> persistentTaskIds, File[] files) { private static void removeObsoleteFiles(ArraySet<Integer> persistentTaskIds, File[] files) {
if (DEBUG) Slog.d(TAG, "removeObsoleteFiles: persistentTaskIds=" + persistentTaskIds + if (DEBUG) Slog.d(TAG, "removeObsoleteFiles: persistentTaskIds=" + persistentTaskIds +
" files=" + files); " files=" + Arrays.toString(files));
if (files == null) { if (files == null) {
Slog.e(TAG, "File error accessing recents directory (directory doesn't exist?)."); Slog.e(TAG, "File error accessing recents directory (directory doesn't exist?).");
return; return;

View File

@ -837,7 +837,7 @@ public class MotionEventInjectorTest {
@Override @Override
public void describeTo(Description description) { public void describeTo(Description description) {
description.appendText("Contains points " + points); description.appendText("Contains points " + Arrays.toString(points));
} }
}; };
} }

View File

@ -772,7 +772,7 @@ public class AppTimeLimitController {
observerApp.appUsageGroups.append(observerId, group); observerApp.appUsageGroups.append(observerId, group);
if (DEBUG) { if (DEBUG) {
Slog.d(TAG, "addObserver " + observed + " for " + timeLimit); Slog.d(TAG, "addObserver " + Arrays.toString(observed) + " for " + timeLimit);
} }
user.addUsageGroup(group); user.addUsageGroup(group);
@ -881,7 +881,7 @@ public class AppTimeLimitController {
observerApp.appUsageLimitGroups.append(observerId, group); observerApp.appUsageLimitGroups.append(observerId, group);
if (DEBUG) { if (DEBUG) {
Slog.d(TAG, "addObserver " + observed + " for " + timeLimit); Slog.d(TAG, "addObserver " + Arrays.toString(observed) + " for " + timeLimit);
} }
user.addUsageGroup(group); user.addUsageGroup(group);

View File

@ -793,7 +793,7 @@ public class PduParser {
try { try {
if (LOCAL_LOGV) { if (LOCAL_LOGV) {
Log.v(LOG_TAG, "parseHeaders: CONTENT_TYPE: " + headerField + Log.v(LOG_TAG, "parseHeaders: CONTENT_TYPE: " + headerField +
contentType.toString()); Arrays.toString(contentType));
} }
headers.setTextString(contentType, PduHeaders.CONTENT_TYPE); headers.setTextString(contentType, PduHeaders.CONTENT_TYPE);
} catch(NullPointerException e) { } catch(NullPointerException e) {

View File

@ -433,7 +433,8 @@ public final class PhysicalChannelConfig implements Parcelable {
return Objects.hash( return Objects.hash(
mCellConnectionStatus, mCellBandwidthDownlinkKhz, mCellBandwidthUplinkKhz, mCellConnectionStatus, mCellBandwidthDownlinkKhz, mCellBandwidthUplinkKhz,
mNetworkType, mFrequencyRange, mDownlinkChannelNumber, mUplinkChannelNumber, mNetworkType, mFrequencyRange, mDownlinkChannelNumber, mUplinkChannelNumber,
mContextIds, mPhysicalCellId, mBand, mDownlinkFrequency, mUplinkFrequency); Arrays.hashCode(mContextIds), mPhysicalCellId, mBand, mDownlinkFrequency,
mUplinkFrequency);
} }
public static final public static final

View File

@ -574,8 +574,8 @@ public final class SignalThresholdInfo implements Parcelable {
@Override @Override
public int hashCode() { public int hashCode() {
return Objects.hash(mRan, mSignalMeasurementType, mHysteresisMs, mHysteresisDb, mThresholds, return Objects.hash(mRan, mSignalMeasurementType, mHysteresisMs, mHysteresisDb,
mIsEnabled); Arrays.hashCode(mThresholds), mIsEnabled);
} }
public static final @NonNull Parcelable.Creator<SignalThresholdInfo> CREATOR = public static final @NonNull Parcelable.Creator<SignalThresholdInfo> CREATOR =

View File

@ -1935,7 +1935,7 @@ public final class SmsManager {
+ " at calling enableCellBroadcastRangeForSubscriber. subId = " + subId); + " at calling enableCellBroadcastRangeForSubscriber. subId = " + subId);
} }
} catch (RemoteException ex) { } catch (RemoteException ex) {
Rlog.d(TAG, "enableCellBroadcastRange: " + ex.getStackTrace()); Rlog.d(TAG, "enableCellBroadcastRange: ", ex);
// ignore it // ignore it
} }
@ -1996,7 +1996,7 @@ public final class SmsManager {
+ " at calling disableCellBroadcastRangeForSubscriber. subId = " + subId); + " at calling disableCellBroadcastRangeForSubscriber. subId = " + subId);
} }
} catch (RemoteException ex) { } catch (RemoteException ex) {
Rlog.d(TAG, "disableCellBroadcastRange: " + ex.getStackTrace()); Rlog.d(TAG, "disableCellBroadcastRange: ", ex);
// ignore it // ignore it
} }

View File

@ -967,9 +967,9 @@ public class SubscriptionInfo implements Parcelable {
public int hashCode() { public int hashCode() {
return Objects.hash(mId, mSimSlotIndex, mNameSource, mIconTint, mDataRoaming, mIsEmbedded, return Objects.hash(mId, mSimSlotIndex, mNameSource, mIconTint, mDataRoaming, mIsEmbedded,
mIsOpportunistic, mGroupUUID, mIccId, mNumber, mMcc, mMnc, mCountryIso, mCardString, mIsOpportunistic, mGroupUUID, mIccId, mNumber, mMcc, mMnc, mCountryIso, mCardString,
mCardId, mDisplayName, mCarrierName, mNativeAccessRules, mIsGroupDisabled, mCardId, mDisplayName, mCarrierName, Arrays.hashCode(mNativeAccessRules),
mCarrierId, mProfileClass, mGroupOwner, mAreUiccApplicationsEnabled, mPortIndex, mIsGroupDisabled, mCarrierId, mProfileClass, mGroupOwner,
mUsageSetting); mAreUiccApplicationsEnabled, mPortIndex, mUsageSetting);
} }
@Override @Override

View File

@ -171,7 +171,7 @@ public final class TelephonyScanManager {
ci[i] = (CellInfo) parcelables[i]; ci[i] = (CellInfo) parcelables[i];
} }
executor.execute(() -> { executor.execute(() -> {
Rlog.d(TAG, "onResults: " + ci.toString()); Rlog.d(TAG, "onResults: " + Arrays.toString(ci));
callback.onResults(Arrays.asList(ci)); callback.onResults(Arrays.asList(ci));
}); });
} catch (Exception e) { } catch (Exception e) {

View File

@ -33,6 +33,8 @@ import android.widget.CheckBox;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import java.util.Arrays;
public class MainInteractionSession extends VoiceInteractionSession public class MainInteractionSession extends VoiceInteractionSession
implements View.OnClickListener { implements View.OnClickListener {
static final String TAG = "MainInteractionSession"; static final String TAG = "MainInteractionSession";
@ -403,7 +405,7 @@ public class MainInteractionSession extends VoiceInteractionSession
@Override @Override
public void onRequestPickOption(PickOptionRequest request) { public void onRequestPickOption(PickOptionRequest request) {
Log.i(TAG, "onPickOption: prompt=" + request.getVoicePrompt() + " options=" Log.i(TAG, "onPickOption: prompt=" + request.getVoicePrompt() + " options="
+ request.getOptions() + " extras=" + request.getExtras()); + Arrays.toString(request.getOptions()) + " extras=" + request.getExtras());
mConfirmButton.setText("Pick Option"); mConfirmButton.setText("Pick Option");
mPendingRequest = request; mPendingRequest = request;
setPrompt(request.getVoicePrompt()); setPrompt(request.getVoicePrompt());

View File

@ -24,6 +24,8 @@ import android.view.View;
import android.widget.Button; import android.widget.Button;
import android.widget.TextView; import android.widget.TextView;
import java.util.Arrays;
public class StartVoiceInteractionActivity extends Activity implements View.OnClickListener { public class StartVoiceInteractionActivity extends Activity implements View.OnClickListener {
static final String TAG = "LocalVoiceInteractionActivity"; static final String TAG = "LocalVoiceInteractionActivity";
@ -187,7 +189,8 @@ public class StartVoiceInteractionActivity extends Activity implements View.OnCl
} }
@Override @Override
public void onPickOptionResult(boolean finished, Option[] selections, Bundle result) { public void onPickOptionResult(boolean finished, Option[] selections, Bundle result) {
Log.i(TAG, "Pick result: finished=" + finished + " selections=" + selections Log.i(TAG, "Pick result: finished=" + finished
+ " selections=" + Arrays.toString(selections)
+ " result=" + result); + " result=" + result);
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
if (finished) { if (finished) {

View File

@ -28,6 +28,8 @@ import android.view.View;
import android.widget.Button; import android.widget.Button;
import android.widget.TextView; import android.widget.TextView;
import java.util.Arrays;
public class TestInteractionActivity extends Activity implements View.OnClickListener { public class TestInteractionActivity extends Activity implements View.OnClickListener {
static final String TAG = "TestInteractionActivity"; static final String TAG = "TestInteractionActivity";
@ -240,7 +242,8 @@ public class TestInteractionActivity extends Activity implements View.OnClickLis
} }
@Override @Override
public void onPickOptionResult(boolean finished, Option[] selections, Bundle result) { public void onPickOptionResult(boolean finished, Option[] selections, Bundle result) {
Log.i(TAG, "Pick result: finished=" + finished + " selections=" + selections Log.i(TAG, "Pick result: finished=" + finished
+ " selections=" + Arrays.toString(selections)
+ " result=" + result); + " result=" + result);
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
if (finished) { if (finished) {