summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/pm/ApexManager.java6
-rw-r--r--services/core/java/com/android/server/pm/AppsFilterBase.java2
-rw-r--r--services/core/java/com/android/server/pm/BackgroundDexOptService.java4
-rw-r--r--services/core/java/com/android/server/pm/CrossProfileAppsService.java2
-rw-r--r--services/core/java/com/android/server/pm/CrossProfileAppsServiceImpl.java6
-rw-r--r--services/core/java/com/android/server/pm/CrossProfileDomainInfo.java5
-rw-r--r--services/core/java/com/android/server/pm/CrossProfileIntentFilterHelper.java10
-rw-r--r--services/core/java/com/android/server/pm/CrossProfileResolver.java4
-rw-r--r--services/core/java/com/android/server/pm/DataLoaderManagerService.java3
-rw-r--r--services/core/java/com/android/server/pm/DefaultCrossProfileIntentFilter.java8
-rw-r--r--services/core/java/com/android/server/pm/InstallArgs.java3
-rw-r--r--services/core/java/com/android/server/pm/InstallRequest.java2
-rw-r--r--services/core/java/com/android/server/pm/InstallingSession.java2
-rw-r--r--services/core/java/com/android/server/pm/LauncherAppsService.java7
-rw-r--r--services/core/java/com/android/server/pm/PackageInstallerService.java3
-rw-r--r--services/core/java/com/android/server/pm/PackageInstallerSession.java6
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerServiceTestParams.java4
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerShellCommand.java4
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerShellCommandDataLoader.java3
-rw-r--r--services/core/java/com/android/server/pm/PreferredComponent.java2
-rw-r--r--services/core/java/com/android/server/pm/SELinuxMMAC.java4
-rw-r--r--services/core/java/com/android/server/pm/Settings.java8
-rw-r--r--services/core/java/com/android/server/pm/ShortcutPackageItem.java2
-rw-r--r--services/core/java/com/android/server/pm/ShortcutService.java30
-rw-r--r--services/core/java/com/android/server/pm/SnapshotStatistics.java14
-rw-r--r--services/core/java/com/android/server/pm/UserJourneyLogger.java2
-rw-r--r--services/core/java/com/android/server/pm/dex/DexManager.java12
-rw-r--r--services/core/java/com/android/server/pm/parsing/PackageCacher.java2
-rw-r--r--services/core/java/com/android/server/pm/parsing/PackageInfoUtils.java2
-rw-r--r--services/core/java/com/android/server/pm/parsing/PackageParser2.java6
-rw-r--r--services/core/java/com/android/server/pm/parsing/pkg/PackageImpl.java22
-rw-r--r--services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java8
-rw-r--r--services/core/java/com/android/server/pm/pkg/component/ParsedPermissionImpl.java3
-rw-r--r--services/core/java/com/android/server/pm/pkg/parsing/ParsingPackageUtils.java8
-rw-r--r--services/core/java/com/android/server/pm/resolution/ComponentResolver.java2
-rw-r--r--services/core/java/com/android/server/pm/resolution/ComponentResolverBase.java2
-rw-r--r--services/core/java/com/android/server/pm/verify/domain/DomainVerificationService.java4
-rw-r--r--services/core/java/com/android/server/pm/verify/domain/models/DomainVerificationPkgState.java2
38 files changed, 114 insertions, 105 deletions
diff --git a/services/core/java/com/android/server/pm/ApexManager.java b/services/core/java/com/android/server/pm/ApexManager.java
index 26e70c0279e3..21284a05ddad 100644
--- a/services/core/java/com/android/server/pm/ApexManager.java
+++ b/services/core/java/com/android/server/pm/ApexManager.java
@@ -410,7 +410,7 @@ public abstract class ApexManager {
* Map of all apex system services to the jar files they are contained in.
*/
@GuardedBy("mLock")
- private List<ApexSystemServiceInfo> mApexSystemServices = new ArrayList<>();
+ private final List<ApexSystemServiceInfo> mApexSystemServices = new ArrayList<>();
/**
* Contains the list of {@code packageName}s of apks-in-apex for given
@@ -418,14 +418,14 @@ public abstract class ApexManager {
* difference between {@code packageName} and {@code apexModuleName}.
*/
@GuardedBy("mLock")
- private ArrayMap<String, List<String>> mApksInApex = new ArrayMap<>();
+ private final ArrayMap<String, List<String>> mApksInApex = new ArrayMap<>();
/**
* Contains the list of {@code Exception}s that were raised when installing apk-in-apex
* inside {@code apexModuleName}.
*/
@GuardedBy("mLock")
- private Map<String, String> mErrorWithApkInApex = new ArrayMap<>();
+ private final Map<String, String> mErrorWithApkInApex = new ArrayMap<>();
/**
* An APEX is a file format that delivers the apex-payload wrapped in an apk container. The
diff --git a/services/core/java/com/android/server/pm/AppsFilterBase.java b/services/core/java/com/android/server/pm/AppsFilterBase.java
index 5b32a94c4eac..a5bc2c36a5a8 100644
--- a/services/core/java/com/android/server/pm/AppsFilterBase.java
+++ b/services/core/java/com/android/server/pm/AppsFilterBase.java
@@ -201,7 +201,7 @@ public abstract class AppsFilterBase implements AppsFilterSnapshot {
protected static final boolean CACHE_VALID = true;
protected static final boolean CACHE_INVALID = false;
- protected AtomicBoolean mCacheValid = new AtomicBoolean(CACHE_INVALID);
+ protected final AtomicBoolean mCacheValid = new AtomicBoolean(CACHE_INVALID);
protected boolean isForceQueryable(int callingAppId) {
return mForceQueryable.contains(callingAppId);
diff --git a/services/core/java/com/android/server/pm/BackgroundDexOptService.java b/services/core/java/com/android/server/pm/BackgroundDexOptService.java
index 9bca9f0192b2..36677df07ca3 100644
--- a/services/core/java/com/android/server/pm/BackgroundDexOptService.java
+++ b/services/core/java/com/android/server/pm/BackgroundDexOptService.java
@@ -89,7 +89,7 @@ public final class BackgroundDexOptService {
private static final long CANCELLATION_WAIT_CHECK_INTERVAL_MS = 200;
- private static ComponentName sDexoptServiceName =
+ private static final ComponentName sDexoptServiceName =
new ComponentName("android", BackgroundDexOptJobService.class.getName());
// Possible return codes of individual optimization steps.
@@ -179,7 +179,7 @@ public final class BackgroundDexOptService {
private final long mDowngradeUnusedAppsThresholdInMillis;
- private List<PackagesUpdatedListener> mPackagesUpdatedListeners = new ArrayList<>();
+ private final List<PackagesUpdatedListener> mPackagesUpdatedListeners = new ArrayList<>();
private int mThermalStatusCutoff = THERMAL_CUTOFF_DEFAULT;
diff --git a/services/core/java/com/android/server/pm/CrossProfileAppsService.java b/services/core/java/com/android/server/pm/CrossProfileAppsService.java
index 486282aa2c04..0bd165ec91fa 100644
--- a/services/core/java/com/android/server/pm/CrossProfileAppsService.java
+++ b/services/core/java/com/android/server/pm/CrossProfileAppsService.java
@@ -21,7 +21,7 @@ import android.content.pm.CrossProfileAppsInternal;
import com.android.server.SystemService;
public class CrossProfileAppsService extends SystemService {
- private CrossProfileAppsServiceImpl mServiceImpl;
+ private final CrossProfileAppsServiceImpl mServiceImpl;
public CrossProfileAppsService(Context context) {
super(context);
diff --git a/services/core/java/com/android/server/pm/CrossProfileAppsServiceImpl.java b/services/core/java/com/android/server/pm/CrossProfileAppsServiceImpl.java
index 5f28e56e996c..f1dc2849a391 100644
--- a/services/core/java/com/android/server/pm/CrossProfileAppsServiceImpl.java
+++ b/services/core/java/com/android/server/pm/CrossProfileAppsServiceImpl.java
@@ -78,8 +78,8 @@ public class CrossProfileAppsServiceImpl extends ICrossProfileApps.Stub {
private final LocalService mLocalService = new LocalService();
- private Context mContext;
- private Injector mInjector;
+ private final Context mContext;
+ private final Injector mInjector;
public CrossProfileAppsServiceImpl(Context context) {
this(context, new InjectorImpl(context));
@@ -783,7 +783,7 @@ public class CrossProfileAppsServiceImpl extends ICrossProfileApps.Stub {
}
private static class InjectorImpl implements Injector {
- private Context mContext;
+ private final Context mContext;
public InjectorImpl(Context context) {
mContext = context;
diff --git a/services/core/java/com/android/server/pm/CrossProfileDomainInfo.java b/services/core/java/com/android/server/pm/CrossProfileDomainInfo.java
index 72f3afc35e99..3313e7234a19 100644
--- a/services/core/java/com/android/server/pm/CrossProfileDomainInfo.java
+++ b/services/core/java/com/android/server/pm/CrossProfileDomainInfo.java
@@ -22,10 +22,10 @@ import android.os.UserHandle;
public final class CrossProfileDomainInfo {
/* ResolveInfo for IntentForwarderActivity to send the intent to the other profile */
- ResolveInfo mResolveInfo;
+ final ResolveInfo mResolveInfo;
int mHighestApprovalLevel;
@UserIdInt
- int mTargetUserId = UserHandle.USER_CURRENT; // default as current user
+ final int mTargetUserId;
CrossProfileDomainInfo(ResolveInfo resolveInfo, int highestApprovalLevel, @UserIdInt
int targetUserId) {
@@ -37,6 +37,7 @@ public final class CrossProfileDomainInfo {
CrossProfileDomainInfo(ResolveInfo resolveInfo, int highestApprovalLevel) {
this.mResolveInfo = resolveInfo;
this.mHighestApprovalLevel = highestApprovalLevel;
+ this.mTargetUserId = UserHandle.USER_CURRENT; // default as current user
}
@Override
diff --git a/services/core/java/com/android/server/pm/CrossProfileIntentFilterHelper.java b/services/core/java/com/android/server/pm/CrossProfileIntentFilterHelper.java
index 51214faca730..56e9c0a3544b 100644
--- a/services/core/java/com/android/server/pm/CrossProfileIntentFilterHelper.java
+++ b/services/core/java/com/android/server/pm/CrossProfileIntentFilterHelper.java
@@ -25,11 +25,11 @@ import android.util.ArraySet;
* Helper class to manage {@link com.android.server.pm.CrossProfileIntentFilter}s.
*/
public class CrossProfileIntentFilterHelper {
- private Context mContext;
- private UserManagerInternal mUserManagerInternal;
- private Settings mSettings;
- private UserManagerService mUserManagerService;
- private PackageManagerTracedLock mLock;
+ private final Context mContext;
+ private final UserManagerInternal mUserManagerInternal;
+ private final Settings mSettings;
+ private final UserManagerService mUserManagerService;
+ private final PackageManagerTracedLock mLock;
public CrossProfileIntentFilterHelper(Settings settings, UserManagerService userManagerService,
PackageManagerTracedLock lock, UserManagerInternal userManagerInternal,
diff --git a/services/core/java/com/android/server/pm/CrossProfileResolver.java b/services/core/java/com/android/server/pm/CrossProfileResolver.java
index a8da818932fa..1d38bbb2a1bd 100644
--- a/services/core/java/com/android/server/pm/CrossProfileResolver.java
+++ b/services/core/java/com/android/server/pm/CrossProfileResolver.java
@@ -36,8 +36,8 @@ import java.util.function.Function;
*/
public abstract class CrossProfileResolver {
- protected ComponentResolverApi mComponentResolver;
- protected UserManagerService mUserManager;
+ protected final ComponentResolverApi mComponentResolver;
+ protected final UserManagerService mUserManager;
public CrossProfileResolver(ComponentResolverApi componentResolver,
UserManagerService userManager) {
diff --git a/services/core/java/com/android/server/pm/DataLoaderManagerService.java b/services/core/java/com/android/server/pm/DataLoaderManagerService.java
index 29322e2553e9..888e1c26206c 100644
--- a/services/core/java/com/android/server/pm/DataLoaderManagerService.java
+++ b/services/core/java/com/android/server/pm/DataLoaderManagerService.java
@@ -50,7 +50,8 @@ public class DataLoaderManagerService extends SystemService {
private final HandlerThread mThread;
private final Handler mHandler;
private final DataLoaderManagerBinderService mBinderService;
- private SparseArray<DataLoaderServiceConnection> mServiceConnections = new SparseArray<>();
+ private final SparseArray<DataLoaderServiceConnection> mServiceConnections =
+ new SparseArray<>();
public DataLoaderManagerService(Context context) {
super(context);
diff --git a/services/core/java/com/android/server/pm/DefaultCrossProfileIntentFilter.java b/services/core/java/com/android/server/pm/DefaultCrossProfileIntentFilter.java
index dc5915de5551..db05dd394915 100644
--- a/services/core/java/com/android/server/pm/DefaultCrossProfileIntentFilter.java
+++ b/services/core/java/com/android/server/pm/DefaultCrossProfileIntentFilter.java
@@ -75,10 +75,10 @@ public final class DefaultCrossProfileIntentFilter {
}
static final class Builder {
- private WatchedIntentFilter mFilter = new WatchedIntentFilter();
- private int mFlags;
- private @Direction int mDirection;
- private boolean mLetsPersonalDataIntoProfile;
+ private final WatchedIntentFilter mFilter = new WatchedIntentFilter();
+ private final int mFlags;
+ private final @Direction int mDirection;
+ private final boolean mLetsPersonalDataIntoProfile;
Builder(@Direction int direction, int flags, boolean letsPersonalDataIntoProfile) {
mDirection = direction;
diff --git a/services/core/java/com/android/server/pm/InstallArgs.java b/services/core/java/com/android/server/pm/InstallArgs.java
index dd96a2b84a97..cc6bb007411e 100644
--- a/services/core/java/com/android/server/pm/InstallArgs.java
+++ b/services/core/java/com/android/server/pm/InstallArgs.java
@@ -67,7 +67,8 @@ final class InstallArgs {
// The list of instruction sets supported by this app. This is currently
// only used during the rmdex() phase to clean up resources. We can get rid of this
// if we move dex files under the common app path.
- @Nullable String[] mInstructionSets;
+ @Nullable
+ final String[] mInstructionSets;
InstallArgs(OriginInfo originInfo, MoveInfo moveInfo, IPackageInstallObserver2 observer,
int installFlags, int developmentInstallFlags, InstallSource installSource,
diff --git a/services/core/java/com/android/server/pm/InstallRequest.java b/services/core/java/com/android/server/pm/InstallRequest.java
index be4fb5c539a9..fc831205f60e 100644
--- a/services/core/java/com/android/server/pm/InstallRequest.java
+++ b/services/core/java/com/android/server/pm/InstallRequest.java
@@ -153,7 +153,7 @@ final class InstallRequest {
private int[] mUpdateBroadcastInstantUserIds = EMPTY_INT_ARRAY;
@NonNull
- private ArrayList<String> mWarnings = new ArrayList<>();
+ private final ArrayList<String> mWarnings = new ArrayList<>();
// New install
InstallRequest(InstallingSession params) {
diff --git a/services/core/java/com/android/server/pm/InstallingSession.java b/services/core/java/com/android/server/pm/InstallingSession.java
index ca8dc2973404..187cadaf4d46 100644
--- a/services/core/java/com/android/server/pm/InstallingSession.java
+++ b/services/core/java/com/android/server/pm/InstallingSession.java
@@ -68,7 +68,7 @@ class InstallingSession {
final MoveInfo mMoveInfo;
final IPackageInstallObserver2 mObserver;
int mInstallFlags;
- int mDevelopmentInstallFlags;
+ final int mDevelopmentInstallFlags;
@NonNull
final InstallSource mInstallSource;
final String mVolumeUuid;
diff --git a/services/core/java/com/android/server/pm/LauncherAppsService.java b/services/core/java/com/android/server/pm/LauncherAppsService.java
index 8b82a1c6e7c9..3f4cc4a84ffd 100644
--- a/services/core/java/com/android/server/pm/LauncherAppsService.java
+++ b/services/core/java/com/android/server/pm/LauncherAppsService.java
@@ -233,7 +233,8 @@ public class LauncherAppsService extends SystemService {
final LauncherAppsServiceInternal mInternal;
@NonNull
- private final RemoteCallbackList<IDumpCallback> mDumpCallbacks = new RemoteCallbackList<>();
+ private final RemoteCallbackList<IDumpCallback> mDumpCallbacks =
+ new RemoteCallbackList<>();
public LauncherAppsImpl(Context context) {
mContext = context;
@@ -2374,8 +2375,8 @@ public class LauncherAppsService extends SystemService {
class PackageLoadingProgressCallback extends
PackageManagerInternal.InstalledLoadingProgressCallback {
- private String mPackageName;
- private UserHandle mUser;
+ private final String mPackageName;
+ private final UserHandle mUser;
PackageLoadingProgressCallback(String packageName, UserHandle user) {
super(mCallbackHandler);
diff --git a/services/core/java/com/android/server/pm/PackageInstallerService.java b/services/core/java/com/android/server/pm/PackageInstallerService.java
index a4d8632ac077..98eee4dc3b1d 100644
--- a/services/core/java/com/android/server/pm/PackageInstallerService.java
+++ b/services/core/java/com/android/server/pm/PackageInstallerService.java
@@ -1867,7 +1867,8 @@ public class PackageInstallerService extends IPackageInstaller.Stub implements
}
static class ParentChildSessionMap {
- private TreeMap<PackageInstallerSession, TreeSet<PackageInstallerSession>> mSessionMap;
+ private final TreeMap<PackageInstallerSession, TreeSet<PackageInstallerSession>>
+ mSessionMap;
private final Comparator<PackageInstallerSession> mSessionCreationComparator =
Comparator.comparingLong(
diff --git a/services/core/java/com/android/server/pm/PackageInstallerSession.java b/services/core/java/com/android/server/pm/PackageInstallerSession.java
index 1be28ca9e915..4b466be8476b 100644
--- a/services/core/java/com/android/server/pm/PackageInstallerSession.java
+++ b/services/core/java/com/android/server/pm/PackageInstallerSession.java
@@ -491,7 +491,7 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
@GuardedBy("mLock")
private SigningDetails mSigningDetails;
@GuardedBy("mLock")
- private SparseArray<PackageInstallerSession> mChildSessions = new SparseArray<>();
+ private final SparseArray<PackageInstallerSession> mChildSessions = new SparseArray<>();
@GuardedBy("mLock")
private int mParentSessionId;
@@ -535,7 +535,7 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
}
@GuardedBy("mLock")
- private ArraySet<FileEntry> mFiles = new ArraySet<>();
+ private final ArraySet<FileEntry> mFiles = new ArraySet<>();
static class PerFileChecksum {
private final Checksum[] mChecksums;
@@ -556,7 +556,7 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
}
@GuardedBy("mLock")
- private ArrayMap<String, PerFileChecksum> mChecksums = new ArrayMap<>();
+ private final ArrayMap<String, PerFileChecksum> mChecksums = new ArrayMap<>();
@GuardedBy("mLock")
private boolean mSessionApplied;
diff --git a/services/core/java/com/android/server/pm/PackageManagerServiceTestParams.java b/services/core/java/com/android/server/pm/PackageManagerServiceTestParams.java
index 9428ef6c8ba9..655b9c93d9dd 100644
--- a/services/core/java/com/android/server/pm/PackageManagerServiceTestParams.java
+++ b/services/core/java/com/android/server/pm/PackageManagerServiceTestParams.java
@@ -60,7 +60,7 @@ public final class PackageManagerServiceTestParams {
public IncrementalManager incrementalManager;
public PackageInstallerService installerService;
public InstantAppRegistry instantAppRegistry;
- public ChangedPackagesTracker changedPackagesTracker = new ChangedPackagesTracker();
+ public final ChangedPackagesTracker changedPackagesTracker = new ChangedPackagesTracker();
public InstantAppResolverConnection instantAppResolverConnection;
public ComponentName instantAppResolverSettingsComponent;
public boolean isPreNmr1Upgrade;
@@ -118,7 +118,7 @@ public final class PackageManagerServiceTestParams {
public SuspendPackageHelper suspendPackageHelper;
public DistractingPackageHelper distractingPackageHelper;
public StorageEventHelper storageEventHelper;
- public Set<String> initialNonStoppedSystemPackages = new ArraySet<>();
+ public final Set<String> initialNonStoppedSystemPackages = new ArraySet<>();
public boolean shouldStopSystemPackagesByDefault;
public FreeStorageHelper freeStorageHelper;
public PackageMonitorCallbackHelper packageMonitorCallbackHelper;
diff --git a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
index d4abad8499f2..6f45d2befc6b 100644
--- a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
+++ b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java
@@ -2364,7 +2364,7 @@ class PackageManagerShellCommand extends ShellCommand {
private boolean mSuccess = false;
private int mErrCode = -1;
private ParcelFileDescriptor mProfileReadFd = null;
- private CountDownLatch mDoneSignal = new CountDownLatch(1);
+ private final CountDownLatch mDoneSignal = new CountDownLatch(1);
@Override
public void onSuccess(ParcelFileDescriptor profileReadFd) {
@@ -5186,7 +5186,7 @@ class PackageManagerShellCommand extends ShellCommand {
private static class LocalIntentReceiver {
private final LinkedBlockingQueue<Intent> mResult = new LinkedBlockingQueue<>();
- private IIntentSender.Stub mLocalSender = new IIntentSender.Stub() {
+ private final IIntentSender.Stub mLocalSender = new IIntentSender.Stub() {
@Override
public void send(int code, Intent intent, String resolvedType, IBinder whitelistToken,
IIntentReceiver finishedReceiver, String requiredPermission, Bundle options) {
diff --git a/services/core/java/com/android/server/pm/PackageManagerShellCommandDataLoader.java b/services/core/java/com/android/server/pm/PackageManagerShellCommandDataLoader.java
index a09e71311125..c829e1c79ba8 100644
--- a/services/core/java/com/android/server/pm/PackageManagerShellCommandDataLoader.java
+++ b/services/core/java/com/android/server/pm/PackageManagerShellCommandDataLoader.java
@@ -148,7 +148,8 @@ public class PackageManagerShellCommandDataLoader extends DataLoaderService {
private final byte[] mData;
private final String mSalt;
- private static AtomicLong sGlobalSalt = new AtomicLong((new SecureRandom()).nextLong());
+ private static final AtomicLong sGlobalSalt =
+ new AtomicLong((new SecureRandom()).nextLong());
private static Long nextGlobalSalt() {
return sGlobalSalt.incrementAndGet();
}
diff --git a/services/core/java/com/android/server/pm/PreferredComponent.java b/services/core/java/com/android/server/pm/PreferredComponent.java
index 5507e7c7754a..18caafdaa56a 100644
--- a/services/core/java/com/android/server/pm/PreferredComponent.java
+++ b/services/core/java/com/android/server/pm/PreferredComponent.java
@@ -48,7 +48,7 @@ public class PreferredComponent {
public final int mMatch;
public final ComponentName mComponent;
// Whether this is to be the one that's always chosen. If false, it's the most recently chosen.
- public boolean mAlways;
+ public final boolean mAlways;
final String[] mSetPackages;
final String[] mSetClasses;
diff --git a/services/core/java/com/android/server/pm/SELinuxMMAC.java b/services/core/java/com/android/server/pm/SELinuxMMAC.java
index cf5aa7b1eb02..e667bfe36d18 100644
--- a/services/core/java/com/android/server/pm/SELinuxMMAC.java
+++ b/services/core/java/com/android/server/pm/SELinuxMMAC.java
@@ -68,12 +68,12 @@ public final class SELinuxMMAC {
// All policy stanzas read from mac_permissions.xml. This is also the lock
// to synchronize access during policy load and access attempts.
- private static List<Policy> sPolicies = new ArrayList<>();
+ private static final List<Policy> sPolicies = new ArrayList<>();
/** Whether or not the policy files have been read */
private static boolean sPolicyRead;
/** Required MAC permissions files */
- private static List<File> sMacPermissions = new ArrayList<>();
+ private static final List<File> sMacPermissions = new ArrayList<>();
private static final String DEFAULT_SEINFO = "default";
diff --git a/services/core/java/com/android/server/pm/Settings.java b/services/core/java/com/android/server/pm/Settings.java
index 440823c43607..6338965e4a80 100644
--- a/services/core/java/com/android/server/pm/Settings.java
+++ b/services/core/java/com/android/server/pm/Settings.java
@@ -3944,9 +3944,9 @@ public final class Settings implements Watchable, Snappable, ResilientAtomicFile
mDisabledSysPackages.put(name, ps);
}
- private static int PRE_M_APP_INFO_FLAG_HIDDEN = 1<<27;
- private static int PRE_M_APP_INFO_FLAG_CANT_SAVE_STATE = 1<<28;
- private static int PRE_M_APP_INFO_FLAG_PRIVILEGED = 1<<30;
+ private static final int PRE_M_APP_INFO_FLAG_HIDDEN = 1 << 27;
+ private static final int PRE_M_APP_INFO_FLAG_CANT_SAVE_STATE = 1 << 28;
+ private static final int PRE_M_APP_INFO_FLAG_PRIVILEGED = 1 << 30;
private void readPackageLPw(TypedXmlPullParser parser, List<UserInfo> users,
ArrayMap<String, Long> originalFirstInstallTimes)
@@ -5846,7 +5846,7 @@ public final class Settings implements Watchable, Snappable, ResilientAtomicFile
@GuardedBy("mLock")
// Tracking the mutations that haven't yet been written to legacy state.
// This avoids unnecessary work when writing settings for multiple users.
- private AtomicBoolean mIsLegacyPermissionStateStale = new AtomicBoolean(false);
+ private final AtomicBoolean mIsLegacyPermissionStateStale = new AtomicBoolean(false);
@GuardedBy("mLock")
// The mapping keys are user ids.
diff --git a/services/core/java/com/android/server/pm/ShortcutPackageItem.java b/services/core/java/com/android/server/pm/ShortcutPackageItem.java
index 8667888fbb51..12115afcbeec 100644
--- a/services/core/java/com/android/server/pm/ShortcutPackageItem.java
+++ b/services/core/java/com/android/server/pm/ShortcutPackageItem.java
@@ -53,7 +53,7 @@ abstract class ShortcutPackageItem {
protected ShortcutUser mShortcutUser;
@GuardedBy("mLock")
- protected ShortcutBitmapSaver mShortcutBitmapSaver;
+ protected final ShortcutBitmapSaver mShortcutBitmapSaver;
protected final Object mLock = new Object();
diff --git a/services/core/java/com/android/server/pm/ShortcutService.java b/services/core/java/com/android/server/pm/ShortcutService.java
index c6aba2ab9cbe..3adeb4b5925f 100644
--- a/services/core/java/com/android/server/pm/ShortcutService.java
+++ b/services/core/java/com/android/server/pm/ShortcutService.java
@@ -296,24 +296,26 @@ public class ShortcutService extends IShortcutService.Stub {
private final Object mNonPersistentUsersLock = new Object();
private final Object mWtfLock = new Object();
- private static List<ResolveInfo> EMPTY_RESOLVE_INFO = new ArrayList<>(0);
+ private static final List<ResolveInfo> EMPTY_RESOLVE_INFO = new ArrayList<>(0);
// Temporarily reverted to anonymous inner class form due to: b/32554459
- private static Predicate<ResolveInfo> ACTIVITY_NOT_EXPORTED = new Predicate<ResolveInfo>() {
- public boolean test(ResolveInfo ri) {
- return !ri.activityInfo.exported;
- }
- };
+ private static final Predicate<ResolveInfo> ACTIVITY_NOT_EXPORTED =
+ new Predicate<ResolveInfo>() {
+ public boolean test(ResolveInfo ri) {
+ return !ri.activityInfo.exported;
+ }
+ };
- private static Predicate<ResolveInfo> ACTIVITY_NOT_INSTALLED = (ri) ->
+ private static final Predicate<ResolveInfo> ACTIVITY_NOT_INSTALLED = (ri) ->
!isInstalled(ri.activityInfo);
// Temporarily reverted to anonymous inner class form due to: b/32554459
- private static Predicate<PackageInfo> PACKAGE_NOT_INSTALLED = new Predicate<PackageInfo>() {
- public boolean test(PackageInfo pi) {
- return !isInstalled(pi);
- }
- };
+ private static final Predicate<PackageInfo> PACKAGE_NOT_INSTALLED =
+ new Predicate<PackageInfo>() {
+ public boolean test(PackageInfo pi) {
+ return !isInstalled(pi);
+ }
+ };
private final Handler mHandler;
@@ -4656,8 +4658,8 @@ public class ShortcutService extends IShortcutService.Stub {
private boolean mDumpFiles = false;
private boolean mDumpDetails = true;
- private List<Pattern> mPackagePatterns = new ArrayList<>();
- private List<Integer> mUsers = new ArrayList<>();
+ private final List<Pattern> mPackagePatterns = new ArrayList<>();
+ private final List<Integer> mUsers = new ArrayList<>();
void addPackageRegex(String regex) {
mPackagePatterns.add(Pattern.compile(regex));
diff --git a/services/core/java/com/android/server/pm/SnapshotStatistics.java b/services/core/java/com/android/server/pm/SnapshotStatistics.java
index e04a1e5b3569..31541d083fbc 100644
--- a/services/core/java/com/android/server/pm/SnapshotStatistics.java
+++ b/services/core/java/com/android/server/pm/SnapshotStatistics.java
@@ -157,12 +157,12 @@ public class SnapshotStatistics {
private static class BinMap {
// The number of bins
- private int mCount;
+ private final int mCount;
// The maximum mapped value. Values at or above this are mapped to the
// top bin.
- private int mMaxBin;
+ private final int mMaxBin;
// A copy of the original key
- private int[] mUserKey;
+ private final int[] mUserKey;
/**
* Create a bin map. The input is an array of integers, which must be
@@ -232,13 +232,13 @@ public class SnapshotStatistics {
* The build-time histogram. The total number of rebuilds is the sum over the
* histogram entries.
*/
- public int[] mTimes;
+ public final int[] mTimes;
/**
* The reuse histogram. The total number of snapshot uses is the sum over the
* histogram entries.
*/
- public int[] mUsed;
+ public final int[] mUsed;
/**
* The total number of rebuilds. This could be computed by summing over the use
@@ -477,12 +477,12 @@ public class SnapshotStatistics {
/**
* Long statistics. These roll over approximately one day.
*/
- private Stats[] mLong;
+ private final Stats[] mLong;
/**
* Short statistics. These roll over approximately every minute;
*/
- private Stats[] mShort;
+ private final Stats[] mShort;
/**
* The time of last logging to the FrameworkStatsLog.
diff --git a/services/core/java/com/android/server/pm/UserJourneyLogger.java b/services/core/java/com/android/server/pm/UserJourneyLogger.java
index 895edce093b5..651578dc5deb 100644
--- a/services/core/java/com/android/server/pm/UserJourneyLogger.java
+++ b/services/core/java/com/android/server/pm/UserJourneyLogger.java
@@ -586,7 +586,7 @@ public class UserJourneyLogger {
public final long mSessionId;
@UserJourney
public final int mJourney;
- public long mStartTimeInMills;
+ public final long mStartTimeInMills;
@VisibleForTesting
public UserJourneySession(long sessionId, @UserJourney int journey) {
diff --git a/services/core/java/com/android/server/pm/dex/DexManager.java b/services/core/java/com/android/server/pm/dex/DexManager.java
index 6e738daf9315..78c13f854fe4 100644
--- a/services/core/java/com/android/server/pm/dex/DexManager.java
+++ b/services/core/java/com/android/server/pm/dex/DexManager.java
@@ -119,10 +119,10 @@ public class DexManager {
private final int mCriticalBatteryLevel;
// Possible outcomes of a dex search.
- private static int DEX_SEARCH_NOT_FOUND = 0; // dex file not found
- private static int DEX_SEARCH_FOUND_PRIMARY = 1; // dex file is the primary/base apk
- private static int DEX_SEARCH_FOUND_SPLIT = 2; // dex file is a split apk
- private static int DEX_SEARCH_FOUND_SECONDARY = 3; // dex file is a secondary dex
+ private static final int DEX_SEARCH_NOT_FOUND = 0; // dex file not found
+ private static final int DEX_SEARCH_FOUND_PRIMARY = 1; // dex file is the primary/base apk
+ private static final int DEX_SEARCH_FOUND_SPLIT = 2; // dex file is a split apk
+ private static final int DEX_SEARCH_FOUND_SECONDARY = 3; // dex file is a secondary dex
public DexManager(Context context, PackageDexOptimizer pdo, Installer installer,
Object installLock, DynamicCodeLogger dynamicCodeLogger) {
@@ -959,8 +959,8 @@ public class DexManager {
* Convenience class to store ownership search results.
*/
private class DexSearchResult {
- private String mOwningPackageName;
- private int mOutcome;
+ private final String mOwningPackageName;
+ private final int mOutcome;
public DexSearchResult(String owningPackageName, int outcome) {
this.mOwningPackageName = owningPackageName;
diff --git a/services/core/java/com/android/server/pm/parsing/PackageCacher.java b/services/core/java/com/android/server/pm/parsing/PackageCacher.java
index d3a64bb0b9ac..2ab7db47f8e5 100644
--- a/services/core/java/com/android/server/pm/parsing/PackageCacher.java
+++ b/services/core/java/com/android/server/pm/parsing/PackageCacher.java
@@ -49,7 +49,7 @@ public class PackageCacher {
public static final AtomicInteger sCachedPackageReadCount = new AtomicInteger();
@NonNull
- private File mCacheDir;
+ private final File mCacheDir;
public PackageCacher(@NonNull File cacheDir) {
this.mCacheDir = cacheDir;
diff --git a/services/core/java/com/android/server/pm/parsing/PackageInfoUtils.java b/services/core/java/com/android/server/pm/parsing/PackageInfoUtils.java
index 9e20805c2874..c26cf1c9a113 100644
--- a/services/core/java/com/android/server/pm/parsing/PackageInfoUtils.java
+++ b/services/core/java/com/android/server/pm/parsing/PackageInfoUtils.java
@@ -1132,7 +1132,7 @@ public class PackageInfoUtils {
*/
public static class CachedApplicationInfoGenerator {
// Map from a package name to the corresponding app info.
- private ArrayMap<String, ApplicationInfo> mCache = new ArrayMap<>();
+ private final ArrayMap<String, ApplicationInfo> mCache = new ArrayMap<>();
/**
* {@link PackageInfoUtils#generateApplicationInfo} with a cache.
diff --git a/services/core/java/com/android/server/pm/parsing/PackageParser2.java b/services/core/java/com/android/server/pm/parsing/PackageParser2.java
index d82a5000844f..3b10c7f2c2a6 100644
--- a/services/core/java/com/android/server/pm/parsing/PackageParser2.java
+++ b/services/core/java/com/android/server/pm/parsing/PackageParser2.java
@@ -96,19 +96,19 @@ public class PackageParser2 implements AutoCloseable {
private static final boolean LOG_PARSE_TIMINGS = Build.IS_DEBUGGABLE;
private static final int LOG_PARSE_TIMINGS_THRESHOLD_MS = 100;
- private ThreadLocal<ApplicationInfo> mSharedAppInfo =
+ private final ThreadLocal<ApplicationInfo> mSharedAppInfo =
ThreadLocal.withInitial(() -> {
ApplicationInfo appInfo = new ApplicationInfo();
appInfo.uid = -1; // Not a valid UID since the app will not be installed yet
return appInfo;
});
- private ThreadLocal<ParseTypeImpl> mSharedResult;
+ private final ThreadLocal<ParseTypeImpl> mSharedResult;
@Nullable
protected PackageCacher mCacher;
- private ParsingPackageUtils parsingUtils;
+ private final ParsingPackageUtils parsingUtils;
public PackageParser2(String[] separateProcesses, DisplayMetrics displayMetrics,
@Nullable File cacheDir, @NonNull Callback callback) {
diff --git a/services/core/java/com/android/server/pm/parsing/pkg/PackageImpl.java b/services/core/java/com/android/server/pm/parsing/pkg/PackageImpl.java
index 056aae49ae82..75dd67d97620 100644
--- a/services/core/java/com/android/server/pm/parsing/pkg/PackageImpl.java
+++ b/services/core/java/com/android/server/pm/parsing/pkg/PackageImpl.java
@@ -113,21 +113,21 @@ public class PackageImpl implements ParsedPackage, AndroidPackageInternal,
private static final SparseArray<int[]> EMPTY_INT_ARRAY_SPARSE_ARRAY = new SparseArray<>();
private static final Comparator<ParsedMainComponent> ORDER_COMPARATOR =
(first, second) -> Integer.compare(second.getOrder(), first.getOrder());
- public static Parcelling.BuiltIn.ForBoolean sForBoolean = Parcelling.Cache.getOrCreate(
+ public static final Parcelling.BuiltIn.ForBoolean sForBoolean = Parcelling.Cache.getOrCreate(
Parcelling.BuiltIn.ForBoolean.class);
- public static ForInternedString sForInternedString = Parcelling.Cache.getOrCreate(
+ public static final ForInternedString sForInternedString = Parcelling.Cache.getOrCreate(
ForInternedString.class);
- public static Parcelling.BuiltIn.ForInternedStringArray sForInternedStringArray = Parcelling.Cache.getOrCreate(
- Parcelling.BuiltIn.ForInternedStringArray.class);
- public static Parcelling.BuiltIn.ForInternedStringList sForInternedStringList = Parcelling.Cache.getOrCreate(
- Parcelling.BuiltIn.ForInternedStringList.class);
- public static Parcelling.BuiltIn.ForInternedStringValueMap sForInternedStringValueMap =
+ public static final Parcelling.BuiltIn.ForInternedStringArray sForInternedStringArray =
+ Parcelling.Cache.getOrCreate(Parcelling.BuiltIn.ForInternedStringArray.class);
+ public static final Parcelling.BuiltIn.ForInternedStringList sForInternedStringList =
+ Parcelling.Cache.getOrCreate(Parcelling.BuiltIn.ForInternedStringList.class);
+ public static final Parcelling.BuiltIn.ForInternedStringValueMap sForInternedStringValueMap =
Parcelling.Cache.getOrCreate(Parcelling.BuiltIn.ForInternedStringValueMap.class);
- public static Parcelling.BuiltIn.ForStringSet sForStringSet = Parcelling.Cache.getOrCreate(
- Parcelling.BuiltIn.ForStringSet.class);
- public static Parcelling.BuiltIn.ForInternedStringSet sForInternedStringSet =
+ public static final Parcelling.BuiltIn.ForStringSet sForStringSet =
+ Parcelling.Cache.getOrCreate(Parcelling.BuiltIn.ForStringSet.class);
+ public static final Parcelling.BuiltIn.ForInternedStringSet sForInternedStringSet =
Parcelling.Cache.getOrCreate(Parcelling.BuiltIn.ForInternedStringSet.class);
- protected static ParsingUtils.StringPairListParceler sForIntentInfoPairs =
+ protected static final ParsingUtils.StringPairListParceler sForIntentInfoPairs =
new ParsingUtils.StringPairListParceler();
protected int versionCode;
protected int versionCodeMajor;
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 d6a7dc6681b9..6f6bb45bad50 100644
--- a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
+++ b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
@@ -1748,14 +1748,14 @@ final class DefaultPermissionGrantPolicy {
*/
private class DelayingPackageManagerCache extends PackageManagerWrapper {
/** uid -> permission -> isGranted, flags */
- private SparseArray<ArrayMap<String, PermissionState>> mDelayedPermissionState =
+ private final SparseArray<ArrayMap<String, PermissionState>> mDelayedPermissionState =
new SparseArray<>();
/** userId -> context */
- private SparseArray<Context> mUserContexts = new SparseArray<>();
+ private final SparseArray<Context> mUserContexts = new SparseArray<>();
/** Permission name -> info */
- private ArrayMap<String, PermissionInfo> mPermissionInfos = new ArrayMap<>();
+ private final ArrayMap<String, PermissionInfo> mPermissionInfos = new ArrayMap<>();
/** Package name -> info */
- private ArrayMap<String, PackageInfo> mPackageInfos = new ArrayMap<>();
+ private final ArrayMap<String, PackageInfo> mPackageInfos = new ArrayMap<>();
/**
* Apply the cached state
diff --git a/services/core/java/com/android/server/pm/pkg/component/ParsedPermissionImpl.java b/services/core/java/com/android/server/pm/pkg/component/ParsedPermissionImpl.java
index 70986c3cfbac..4c831d36c9e3 100644
--- a/services/core/java/com/android/server/pm/pkg/component/ParsedPermissionImpl.java
+++ b/services/core/java/com/android/server/pm/pkg/component/ParsedPermissionImpl.java
@@ -41,7 +41,8 @@ import java.util.Set;
public class ParsedPermissionImpl extends ParsedComponentImpl implements ParsedPermission,
Parcelable {
- private static ForStringSet sForStringSet = Parcelling.Cache.getOrCreate(ForStringSet.class);
+ private static final ForStringSet sForStringSet =
+ Parcelling.Cache.getOrCreate(ForStringSet.class);
@Nullable
private String backgroundPermission;
diff --git a/services/core/java/com/android/server/pm/pkg/parsing/ParsingPackageUtils.java b/services/core/java/com/android/server/pm/pkg/parsing/ParsingPackageUtils.java
index 8240c47a607b..061698a929d6 100644
--- a/services/core/java/com/android/server/pm/pkg/parsing/ParsingPackageUtils.java
+++ b/services/core/java/com/android/server/pm/pkg/parsing/ParsingPackageUtils.java
@@ -328,11 +328,11 @@ public class ParsingPackageUtils {
return input.success(pkg);
}
- private String[] mSeparateProcesses;
- private DisplayMetrics mDisplayMetrics;
+ private final String[] mSeparateProcesses;
+ private final DisplayMetrics mDisplayMetrics;
@NonNull
- private List<PermissionManager.SplitPermissionInfo> mSplitPermissionInfos;
- private Callback mCallback;
+ private final List<PermissionManager.SplitPermissionInfo> mSplitPermissionInfos;
+ private final Callback mCallback;
public ParsingPackageUtils(String[] separateProcesses, DisplayMetrics displayMetrics,
@NonNull List<PermissionManager.SplitPermissionInfo> splitPermissions,
diff --git a/services/core/java/com/android/server/pm/resolution/ComponentResolver.java b/services/core/java/com/android/server/pm/resolution/ComponentResolver.java
index fac681aaf1c4..0ceda421913d 100644
--- a/services/core/java/com/android/server/pm/resolution/ComponentResolver.java
+++ b/services/core/java/com/android/server/pm/resolution/ComponentResolver.java
@@ -951,7 +951,7 @@ public class ComponentResolver extends ComponentResolverLocked implements
extends MimeGroupsAwareIntentResolver<Pair<ParsedActivity, ParsedIntentInfo>, ResolveInfo> {
@NonNull
- private UserNeedsBadgingCache mUserNeedsBadging;
+ private final UserNeedsBadgingCache mUserNeedsBadging;
// Default constructor
ActivityIntentResolver(@NonNull UserManagerService userManager,
diff --git a/services/core/java/com/android/server/pm/resolution/ComponentResolverBase.java b/services/core/java/com/android/server/pm/resolution/ComponentResolverBase.java
index 9115775acd05..80cde73ecf1f 100644
--- a/services/core/java/com/android/server/pm/resolution/ComponentResolverBase.java
+++ b/services/core/java/com/android/server/pm/resolution/ComponentResolverBase.java
@@ -68,7 +68,7 @@ public abstract class ComponentResolverBase extends WatchableImpl implements Com
protected ArrayMap<String, ParsedProvider> mProvidersByAuthority;
@NonNull
- protected UserManagerService mUserManager;
+ protected final UserManagerService mUserManager;
protected ComponentResolverBase(@NonNull UserManagerService userManager) {
mUserManager = userManager;
diff --git a/services/core/java/com/android/server/pm/verify/domain/DomainVerificationService.java b/services/core/java/com/android/server/pm/verify/domain/DomainVerificationService.java
index 11f62e953525..3d4d4eca7f48 100644
--- a/services/core/java/com/android/server/pm/verify/domain/DomainVerificationService.java
+++ b/services/core/java/com/android/server/pm/verify/domain/DomainVerificationService.java
@@ -2005,9 +2005,9 @@ public class DomainVerificationService extends SystemService
private static class GetAttachedResult {
@Nullable
- private DomainVerificationPkgState mPkgState;
+ private final DomainVerificationPkgState mPkgState;
- private int mErrorCode;
+ private final int mErrorCode;
GetAttachedResult(@Nullable DomainVerificationPkgState pkgState, int errorCode) {
mPkgState = pkgState;
diff --git a/services/core/java/com/android/server/pm/verify/domain/models/DomainVerificationPkgState.java b/services/core/java/com/android/server/pm/verify/domain/models/DomainVerificationPkgState.java
index 6c56360177d8..d71dbbb5d53b 100644
--- a/services/core/java/com/android/server/pm/verify/domain/models/DomainVerificationPkgState.java
+++ b/services/core/java/com/android/server/pm/verify/domain/models/DomainVerificationPkgState.java
@@ -40,7 +40,7 @@ public class DomainVerificationPkgState {
private final String mPackageName;
@NonNull
- private UUID mId;
+ private final UUID mId;
/**
* Whether or not the package declares any autoVerify domains. This is separate from an empty