diff options
author | Jason parks <jparks@google.com> | 2011-01-13 07:40:46 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-01-13 07:40:46 -0800 |
commit | ca6777b23bbe9283380efb2ba7e6d0a79d8669db (patch) | |
tree | b37a5b5f5445dea70d1528de4dd19d1e27958157 /services | |
parent | f679ba7d944a403fbdc77926c44978ffd5161f2d (diff) | |
parent | 1125d780a8b61703b8eb28c5c77dac5f3f0022dd (diff) | |
download | frameworks_base-ca6777b23bbe9283380efb2ba7e6d0a79d8669db.zip frameworks_base-ca6777b23bbe9283380efb2ba7e6d0a79d8669db.tar.gz frameworks_base-ca6777b23bbe9283380efb2ba7e6d0a79d8669db.tar.bz2 |
Merge "Remove the APIs for the old encryption scheme." into honeycomb
Diffstat (limited to 'services')
3 files changed, 95 insertions, 118 deletions
diff --git a/services/java/com/android/server/BackupManagerService.java b/services/java/com/android/server/BackupManagerService.java index cb1d775..3b0a6d5 100644 --- a/services/java/com/android/server/BackupManagerService.java +++ b/services/java/com/android/server/BackupManagerService.java @@ -16,6 +16,11 @@ package com.android.server; +import com.android.internal.backup.BackupConstants; +import com.android.internal.backup.IBackupTransport; +import com.android.internal.backup.LocalTransport; +import com.android.server.PackageManagerBackupAgent.Metadata; + import android.app.ActivityManagerNative; import android.app.AlarmManager; import android.app.AppGlobals; @@ -23,10 +28,10 @@ import android.app.IActivityManager; import android.app.IApplicationThread; import android.app.IBackupAgent; import android.app.PendingIntent; -import android.app.backup.RestoreSet; import android.app.backup.IBackupManager; import android.app.backup.IRestoreObserver; import android.app.backup.IRestoreSession; +import android.app.backup.RestoreSet; import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.Context; @@ -38,8 +43,8 @@ import android.content.pm.IPackageDataObserver; import android.content.pm.IPackageManager; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; -import android.content.pm.Signature; import android.content.pm.PackageManager.NameNotFoundException; +import android.content.pm.Signature; import android.net.Uri; import android.os.Binder; import android.os.Bundle; @@ -61,11 +66,6 @@ import android.util.Slog; import android.util.SparseArray; import android.util.SparseIntArray; -import com.android.internal.backup.BackupConstants; -import com.android.internal.backup.IBackupTransport; -import com.android.internal.backup.LocalTransport; -import com.android.server.PackageManagerBackupAgent.Metadata; - import java.io.EOFException; import java.io.File; import java.io.FileDescriptor; @@ -145,6 +145,7 @@ class BackupManagerService extends IBackupManager.Stub { fullBackup = isFull; } + @Override public String toString() { return "BackupRequest{app=" + appInfo + " full=" + fullBackup + "}"; } @@ -271,6 +272,7 @@ class BackupManagerService extends IBackupManager.Stub { super(looper); } + @Override public void handleMessage(Message msg) { switch (msg.what) { @@ -443,7 +445,7 @@ class BackupManagerService extends IBackupManager.Stub { Settings.Secure.BACKUP_AUTO_RESTORE, 1) != 0; // If Encrypted file systems is enabled or disabled, this call will return the // correct directory. - mBaseStateDir = new File(Environment.getSecureDataDirectory(), "backup"); + mBaseStateDir = new File(Environment.getDataDirectory(), "backup"); mBaseStateDir.mkdirs(); mDataDir = Environment.getDownloadCacheDirectory(); @@ -533,6 +535,7 @@ class BackupManagerService extends IBackupManager.Stub { } private class RunBackupReceiver extends BroadcastReceiver { + @Override public void onReceive(Context context, Intent intent) { if (RUN_BACKUP_ACTION.equals(intent.getAction())) { synchronized (mQueueLock) { @@ -569,6 +572,7 @@ class BackupManagerService extends IBackupManager.Stub { } private class RunInitializeReceiver extends BroadcastReceiver { + @Override public void onReceive(Context context, Intent intent) { if (RUN_INITIALIZE_ACTION.equals(intent.getAction())) { synchronized (mQueueLock) { @@ -812,6 +816,7 @@ class BackupManagerService extends IBackupManager.Stub { // ----- Track installation/removal of packages ----- BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() { + @Override public void onReceive(Context context, Intent intent) { if (DEBUG) Slog.d(TAG, "Received broadcast " + intent); diff --git a/services/java/com/android/server/Installer.java b/services/java/com/android/server/Installer.java index 85eca60..1028b89 100644 --- a/services/java/com/android/server/Installer.java +++ b/services/java/com/android/server/Installer.java @@ -17,16 +17,13 @@ package com.android.server; import android.content.pm.PackageStats; -import android.net.LocalSocketAddress; import android.net.LocalSocket; -import android.util.Config; +import android.net.LocalSocketAddress; import android.util.Slog; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.net.Socket; - class Installer { private static final String TAG = "Installer"; @@ -101,7 +98,7 @@ class Installer { int len; buflen = 0; if (!readBytes(buf, 2)) return false; - len = (((int) buf[0]) & 0xff) | ((((int) buf[1]) & 0xff) << 8); + len = ((buf[0]) & 0xff) | (((buf[1]) & 0xff) << 8); if ((len < 1) || (len > 1024)) { Slog.e(TAG,"invalid reply length ("+len+")"); disconnect(); @@ -166,17 +163,11 @@ class Installer { } } - public int install(String name, boolean useEncryptedFilesystem, int uid, int gid) { + public int install(String name, int uid, int gid) { StringBuilder builder = new StringBuilder("install"); builder.append(' '); builder.append(name); builder.append(' '); - if (useEncryptedFilesystem) { - builder.append('1'); - } else { - builder.append('0'); - } - builder.append(' '); builder.append(uid); builder.append(' '); builder.append(gid); @@ -209,57 +200,34 @@ class Installer { return execute(builder.toString()); } - public int remove(String name, boolean useEncryptedFilesystem) { + public int remove(String name) { StringBuilder builder = new StringBuilder("remove"); builder.append(' '); builder.append(name); - builder.append(' '); - if (useEncryptedFilesystem) { - builder.append('1'); - } else { - builder.append('0'); - } return execute(builder.toString()); } - public int rename(String oldname, String newname, boolean useEncryptedFilesystem) { + public int rename(String oldname, String newname) { StringBuilder builder = new StringBuilder("rename"); builder.append(' '); builder.append(oldname); builder.append(' '); builder.append(newname); - builder.append(' '); - if (useEncryptedFilesystem) { - builder.append('1'); - } else { - builder.append('0'); - } return execute(builder.toString()); } - public int deleteCacheFiles(String name, boolean useEncryptedFilesystem) { + public int deleteCacheFiles(String name) { StringBuilder builder = new StringBuilder("rmcache"); builder.append(' '); builder.append(name); builder.append(' '); - if (useEncryptedFilesystem) { - builder.append('1'); - } else { - builder.append('0'); - } return execute(builder.toString()); } - public int clearUserData(String name, boolean useEncryptedFilesystem) { + public int clearUserData(String name) { StringBuilder builder = new StringBuilder("rmuserdata"); builder.append(' '); builder.append(name); - builder.append(' '); - if (useEncryptedFilesystem) { - builder.append('1'); - } else { - builder.append('0'); - } return execute(builder.toString()); } @@ -292,8 +260,8 @@ class Installer { return execute(builder.toString()); } - public int getSizeInfo(String pkgName, String apkPath, - String fwdLockApkPath, PackageStats pStats, boolean useEncryptedFilesystem) { + public int getSizeInfo(String pkgName, String apkPath, String fwdLockApkPath, + PackageStats pStats) { StringBuilder builder = new StringBuilder("getsize"); builder.append(' '); builder.append(pkgName); @@ -301,12 +269,6 @@ class Installer { builder.append(apkPath); builder.append(' '); builder.append(fwdLockApkPath != null ? fwdLockApkPath : "!"); - builder.append(' '); - if (useEncryptedFilesystem) { - builder.append('1'); - } else { - builder.append('0'); - } String s = transaction(builder.toString()); String res[] = s.split(" "); diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index b196f74..286463d 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -16,6 +16,10 @@ package com.android.server; +import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DEFAULT; +import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DISABLED; +import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_ENABLED; + import com.android.internal.app.IMediaContainerService; import com.android.internal.app.ResolverActivity; import com.android.internal.content.NativeLibraryHelper; @@ -24,22 +28,18 @@ import com.android.internal.util.FastXmlSerializer; import com.android.internal.util.JournaledFile; import com.android.internal.util.XmlUtils; -import org.xmlpull.v1.XmlPullParser; -import org.xmlpull.v1.XmlPullParserException; -import org.xmlpull.v1.XmlSerializer; - import android.app.ActivityManagerNative; import android.app.IActivityManager; import android.app.admin.IDevicePolicyManager; import android.app.backup.IBackupManager; -import android.content.Context; import android.content.ComponentName; +import android.content.Context; import android.content.IIntentReceiver; import android.content.Intent; import android.content.IntentFilter; import android.content.IntentSender; -import android.content.ServiceConnection; import android.content.IntentSender.SendIntentException; +import android.content.ServiceConnection; import android.content.pm.ActivityInfo; import android.content.pm.ApplicationInfo; import android.content.pm.ComponentInfo; @@ -54,13 +54,10 @@ import android.content.pm.InstrumentationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageInfoLite; import android.content.pm.PackageManager; -import android.content.pm.PackageStats; -import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DEFAULT; -import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_DISABLED; -import static android.content.pm.PackageManager.COMPONENT_ENABLED_STATE_ENABLED; import android.content.pm.PackageParser; -import android.content.pm.PermissionInfo; +import android.content.pm.PackageStats; import android.content.pm.PermissionGroupInfo; +import android.content.pm.PermissionInfo; import android.content.pm.ProviderInfo; import android.content.pm.ResolveInfo; import android.content.pm.ServiceInfo; @@ -70,24 +67,30 @@ import android.os.Binder; import android.os.Build; import android.os.Bundle; import android.os.Debug; +import android.os.Environment; +import android.os.FileObserver; +import android.os.FileUtils; +import android.os.Handler; import android.os.HandlerThread; import android.os.IBinder; import android.os.Looper; import android.os.Message; import android.os.Parcel; -import android.os.RemoteException; -import android.os.Environment; -import android.os.FileObserver; -import android.os.FileUtils; -import android.os.Handler; import android.os.ParcelFileDescriptor; import android.os.Process; +import android.os.RemoteException; import android.os.ServiceManager; import android.os.SystemClock; import android.os.SystemProperties; -import android.provider.Settings; import android.security.SystemKeyStore; -import android.util.*; +import android.util.Config; +import android.util.DisplayMetrics; +import android.util.EventLog; +import android.util.Log; +import android.util.LogPrinter; +import android.util.Slog; +import android.util.SparseArray; +import android.util.Xml; import android.view.Display; import android.view.WindowManager; @@ -114,15 +117,17 @@ import java.util.Enumeration; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; -import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Set; import java.util.zip.ZipEntry; -import java.util.zip.ZipException; import java.util.zip.ZipFile; import java.util.zip.ZipOutputStream; +import org.xmlpull.v1.XmlPullParser; +import org.xmlpull.v1.XmlPullParserException; +import org.xmlpull.v1.XmlSerializer; + /** * Keep track of all those .apks everywhere. * @@ -430,6 +435,7 @@ class PackageManagerService extends IPackageManager.Stub { super(looper); } + @Override public void handleMessage(Message msg) { try { doHandleMessage(msg); @@ -571,7 +577,7 @@ class PackageManagerService extends IPackageManager.Stub { // Send broadcasts for (int i = 0; i < size; i++) { sendPackageChangedBroadcast(packages[i], true, - (ArrayList<String>)components[i], uids[i]); + components[i], uids[i]); } Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); break; @@ -964,9 +970,7 @@ class PackageManagerService extends IPackageManager.Stub { + " no longer exists; wiping its data"; reportSettingsProblem(Log.WARN, msg); if (mInstaller != null) { - // XXX how to set useEncryptedFSDir for packages that - // are not encrypted? - mInstaller.remove(ps.name, true); + mInstaller.remove(ps.name); } } } @@ -1050,8 +1054,7 @@ class PackageManagerService extends IPackageManager.Stub { void cleanupInstallFailedPackage(PackageSetting ps) { Slog.i(TAG, "Cleaning up incompletely installed app: " + ps.name); if (mInstaller != null) { - boolean useSecureFS = useEncryptedFilesystemForPackage(ps.pkg); - int retCode = mInstaller.remove(ps.name, useSecureFS); + int retCode = mInstaller.remove(ps.name); if (retCode < 0) { Slog.w(TAG, "Couldn't remove app data directory for package: " + ps.name + ", retcode=" + retCode); @@ -2079,12 +2082,12 @@ class PackageManagerService extends IPackageManager.Stub { synchronized (mPackages) { String pkgName = intent.getPackage(); if (pkgName == null) { - return (List<ResolveInfo>)mActivities.queryIntent(intent, + return mActivities.queryIntent(intent, resolvedType, flags); } PackageParser.Package pkg = mPackages.get(pkgName); if (pkg != null) { - return (List<ResolveInfo>) mActivities.queryIntentForPackage(intent, + return mActivities.queryIntentForPackage(intent, resolvedType, flags, pkg.activities); } return null; @@ -2269,12 +2272,12 @@ class PackageManagerService extends IPackageManager.Stub { synchronized (mPackages) { String pkgName = intent.getPackage(); if (pkgName == null) { - return (List<ResolveInfo>)mReceivers.queryIntent(intent, + return mReceivers.queryIntent(intent, resolvedType, flags); } PackageParser.Package pkg = mPackages.get(pkgName); if (pkg != null) { - return (List<ResolveInfo>) mReceivers.queryIntentForPackage(intent, + return mReceivers.queryIntentForPackage(intent, resolvedType, flags, pkg.receivers); } return null; @@ -2312,12 +2315,12 @@ class PackageManagerService extends IPackageManager.Stub { synchronized (mPackages) { String pkgName = intent.getPackage(); if (pkgName == null) { - return (List<ResolveInfo>)mServices.queryIntent(intent, + return mServices.queryIntent(intent, resolvedType, flags); } PackageParser.Package pkg = mPackages.get(pkgName); if (pkg != null) { - return (List<ResolveInfo>)mServices.queryIntentForPackage(intent, + return mServices.queryIntentForPackage(intent, resolvedType, flags, pkg.services); } return null; @@ -2416,6 +2419,7 @@ class PackageManagerService extends IPackageManager.Stub { /** * @deprecated */ + @Deprecated public void querySyncProviders(List outNames, List outInfo) { synchronized (mPackages) { Iterator<Map.Entry<String, PackageParser.Provider>> i @@ -2780,11 +2784,6 @@ class PackageManagerService extends IPackageManager.Stub { return performed ? DEX_OPT_PERFORMED : DEX_OPT_SKIPPED; } - private static boolean useEncryptedFilesystemForPackage(PackageParser.Package pkg) { - return Environment.isEncryptedFilesystemEnabled() && - ((pkg.applicationInfo.flags & ApplicationInfo.FLAG_NEVER_ENCRYPT) == 0); - } - private boolean verifyPackageUpdate(PackageSetting oldPkg, PackageParser.Package newPkg) { if ((oldPkg.pkgFlags&ApplicationInfo.FLAG_SYSTEM) == 0) { Slog.w(TAG, "Unable to update from " + oldPkg.name @@ -2801,14 +2800,7 @@ class PackageManagerService extends IPackageManager.Stub { } private File getDataPathForPackage(PackageParser.Package pkg) { - boolean useEncryptedFSDir = useEncryptedFilesystemForPackage(pkg); - File dataPath; - if (useEncryptedFSDir) { - dataPath = new File(mSecureAppDataDir, pkg.packageName); - } else { - dataPath = new File(mAppDataDir, pkg.packageName); - } - return dataPath; + return new File(mAppDataDir, pkg.packageName); } private PackageParser.Package scanPackageLI(PackageParser.Package pkg, @@ -3157,7 +3149,6 @@ class PackageManagerService extends IPackageManager.Stub { pkg.applicationInfo.dataDir = dataPath.getPath(); } else { // This is a normal package, need to make its data directory. - boolean useEncryptedFSDir = useEncryptedFilesystemForPackage(pkg); dataPath = getDataPathForPackage(pkg); boolean uidError = false; @@ -3174,7 +3165,7 @@ class PackageManagerService extends IPackageManager.Stub { // If this is a system app, we can at least delete its // current data so the application will still work. if (mInstaller != null) { - int ret = mInstaller.remove(pkgName, useEncryptedFSDir); + int ret = mInstaller.remove(pkgName); if (ret >= 0) { // Old data gone! String msg = "System package " + pkg.packageName @@ -3185,7 +3176,7 @@ class PackageManagerService extends IPackageManager.Stub { recovered = true; // And now re-install the app. - ret = mInstaller.install(pkgName, useEncryptedFSDir, pkg.applicationInfo.uid, + ret = mInstaller.install(pkgName, pkg.applicationInfo.uid, pkg.applicationInfo.uid); if (ret == -1) { // Ack should not happen! @@ -3226,7 +3217,7 @@ class PackageManagerService extends IPackageManager.Stub { Log.v(TAG, "Want this data dir: " + dataPath); //invoke installer to do the actual installation if (mInstaller != null) { - int ret = mInstaller.install(pkgName, useEncryptedFSDir, pkg.applicationInfo.uid, + int ret = mInstaller.install(pkgName, pkg.applicationInfo.uid, pkg.applicationInfo.uid); if(ret < 0) { // Error from installer @@ -4047,6 +4038,7 @@ class PackageManagerService extends IPackageManager.Stub { private final class ActivityIntentResolver extends IntentResolver<PackageParser.ActivityIntentInfo, ResolveInfo> { + @Override public List queryIntent(Intent intent, String resolvedType, boolean defaultOnly) { mFlags = defaultOnly ? PackageManager.MATCH_DEFAULT_ONLY : 0; return super.queryIntent(intent, resolvedType, defaultOnly); @@ -4206,6 +4198,7 @@ class PackageManagerService extends IPackageManager.Stub { private final class ServiceIntentResolver extends IntentResolver<PackageParser.ServiceIntentInfo, ResolveInfo> { + @Override public List queryIntent(Intent intent, String resolvedType, boolean defaultOnly) { mFlags = defaultOnly ? PackageManager.MATCH_DEFAULT_ONLY : 0; return super.queryIntent(intent, resolvedType, defaultOnly); @@ -4301,7 +4294,7 @@ class PackageManagerService extends IPackageManager.Stub { @Override protected ResolveInfo newResult(PackageParser.ServiceIntentInfo filter, int match) { - final PackageParser.ServiceIntentInfo info = (PackageParser.ServiceIntentInfo)filter; + final PackageParser.ServiceIntentInfo info = filter; if (!mSettings.isEnabledLP(info.service.info, mFlags)) { return null; } @@ -4462,6 +4455,7 @@ class PackageManagerService extends IPackageManager.Stub { mIsRom = isrom; } + @Override public void onEvent(int event, String path) { String removedPackage = null; int removedUid = -1; @@ -4846,6 +4840,7 @@ class PackageManagerService extends IPackageManager.Stub { * policy if needed and then create install arguments based * on the install location. */ + @Override public void handleStartCopy() throws RemoteException { int ret = PackageManager.INSTALL_SUCCEEDED; boolean fwdLocked = (flags & PackageManager.INSTALL_FORWARD_LOCK) != 0; @@ -4955,6 +4950,7 @@ class PackageManagerService extends IPackageManager.Stub { } } + @Override public void handleStartCopy() throws RemoteException { mRet = PackageManager.INSTALL_FAILED_INSUFFICIENT_STORAGE; // Check for storage space on target medium @@ -5084,6 +5080,7 @@ class PackageManagerService extends IPackageManager.Stub { libraryPath = new File(dataDir, LIB_DIR_NAME).getPath(); } + @Override boolean checkFreeStorage(IMediaContainerService imcs) throws RemoteException { try { mContext.grantUriPermission(DEFAULT_CONTAINER_PACKAGE, packageURI, @@ -5094,10 +5091,12 @@ class PackageManagerService extends IPackageManager.Stub { } } + @Override String getCodePath() { return codeFileName; } + @Override void createCopyFile() { installDir = isFwdLocked() ? mDrmAppPrivateInstallDir : mAppInstallDir; codeFileName = createTempPackageFile(installDir).getPath(); @@ -5105,6 +5104,7 @@ class PackageManagerService extends IPackageManager.Stub { created = true; } + @Override int copyApk(IMediaContainerService imcs, boolean temp) throws RemoteException { if (temp) { // Generate temp file name @@ -5148,6 +5148,7 @@ class PackageManagerService extends IPackageManager.Stub { return ret; } + @Override int doPreInstall(int status) { if (status != PackageManager.INSTALL_SUCCEEDED) { cleanUp(); @@ -5155,6 +5156,7 @@ class PackageManagerService extends IPackageManager.Stub { return status; } + @Override boolean doRename(int status, final String pkgName, String oldCodePath) { if (status != PackageManager.INSTALL_SUCCEEDED) { cleanUp(); @@ -5179,6 +5181,7 @@ class PackageManagerService extends IPackageManager.Stub { } } + @Override int doPostInstall(int status) { if (status != PackageManager.INSTALL_SUCCEEDED) { cleanUp(); @@ -5186,6 +5189,7 @@ class PackageManagerService extends IPackageManager.Stub { return status; } + @Override String getResourcePath() { return resourceFileName; } @@ -5230,6 +5234,7 @@ class PackageManagerService extends IPackageManager.Stub { return ret; } + @Override void cleanUpResourcesLI() { String sourceDir = getCodePath(); if (cleanUp() && mInstaller != null) { @@ -5262,6 +5267,7 @@ class PackageManagerService extends IPackageManager.Stub { return true; } + @Override boolean doPostDeleteLI(boolean delete) { // XXX err, shouldn't we respect the delete flag? cleanUpResourcesLI(); @@ -5306,10 +5312,12 @@ class PackageManagerService extends IPackageManager.Stub { this.cid = cid; } + @Override void createCopyFile() { cid = getTempContainerId(); } + @Override boolean checkFreeStorage(IMediaContainerService imcs) throws RemoteException { try { mContext.grantUriPermission(DEFAULT_CONTAINER_PACKAGE, packageURI, @@ -5320,6 +5328,7 @@ class PackageManagerService extends IPackageManager.Stub { } } + @Override int copyApk(IMediaContainerService imcs, boolean temp) throws RemoteException { if (temp) { createCopyFile(); @@ -5358,6 +5367,7 @@ class PackageManagerService extends IPackageManager.Stub { return libraryPath; } + @Override int doPreInstall(int status) { if (status != PackageManager.INSTALL_SUCCEEDED) { // Destroy container @@ -5377,6 +5387,7 @@ class PackageManagerService extends IPackageManager.Stub { return status; } + @Override boolean doRename(int status, final String pkgName, String oldCodePath) { String newCacheId = getNextCodePath(oldCodePath, pkgName, "/" + RES_FILE_NAME); @@ -5428,6 +5439,7 @@ class PackageManagerService extends IPackageManager.Stub { packagePath = new File(cachePath, RES_FILE_NAME).getPath(); } + @Override int doPostInstall(int status) { if (status != PackageManager.INSTALL_SUCCEEDED) { cleanUp(); @@ -5446,6 +5458,7 @@ class PackageManagerService extends IPackageManager.Stub { PackageHelper.destroySdDir(cid); } + @Override void cleanUpResourcesLI() { String sourceFile = getCodePath(); // Remove dex file @@ -5476,6 +5489,7 @@ class PackageManagerService extends IPackageManager.Stub { return cid.substring(0, idx); } + @Override boolean doPostDeleteLI(boolean delete) { boolean ret = false; boolean mounted = PackageHelper.isContainerMounted(cid); @@ -6261,9 +6275,8 @@ class PackageManagerService extends IPackageManager.Stub { deletedPs = mSettings.mPackages.get(packageName); } if ((flags&PackageManager.DONT_DELETE_DATA) == 0) { - boolean useEncryptedFSDir = useEncryptedFilesystemForPackage(p); if (mInstaller != null) { - int retCode = mInstaller.remove(packageName, useEncryptedFSDir); + int retCode = mInstaller.remove(packageName); if (retCode < 0) { Slog.w(TAG, "Couldn't remove app data or cache directory for package: " + packageName + ", retcode=" + retCode); @@ -6516,10 +6529,9 @@ class PackageManagerService extends IPackageManager.Stub { Slog.w(TAG, "Package " + packageName + " has no applicationInfo."); return false; } - useEncryptedFSDir = useEncryptedFilesystemForPackage(p); } if (mInstaller != null) { - int retCode = mInstaller.clearUserData(packageName, useEncryptedFSDir); + int retCode = mInstaller.clearUserData(packageName); if (retCode < 0) { Slog.w(TAG, "Couldn't remove cache files for package: " + packageName); @@ -6570,9 +6582,8 @@ class PackageManagerService extends IPackageManager.Stub { Slog.w(TAG, "Package " + packageName + " has no applicationInfo."); return false; } - boolean useEncryptedFSDir = useEncryptedFilesystemForPackage(p); if (mInstaller != null) { - int retCode = mInstaller.deleteCacheFiles(packageName, useEncryptedFSDir); + int retCode = mInstaller.deleteCacheFiles(packageName); if (retCode < 0) { Slog.w(TAG, "Couldn't remove cache files for package: " + packageName); @@ -6634,10 +6645,8 @@ class PackageManagerService extends IPackageManager.Stub { } publicSrcDir = isForwardLocked(p) ? applicationInfo.publicSourceDir : null; } - boolean useEncryptedFSDir = useEncryptedFilesystemForPackage(p); if (mInstaller != null) { - int res = mInstaller.getSizeInfo(packageName, p.mPath, - publicSrcDir, pStats, useEncryptedFSDir); + int res = mInstaller.getSizeInfo(packageName, p.mPath, publicSrcDir, pStats); if (res < 0) { return false; } else { @@ -7443,6 +7452,7 @@ class PackageManagerService extends IPackageManager.Stub { protectionLevel = PermissionInfo.PROTECTION_SIGNATURE; } + @Override public String toString() { return "BasePermission{" + Integer.toHexString(System.identityHashCode(this)) @@ -7739,6 +7749,7 @@ class PackageManagerService extends IPackageManager.Stub { mSetComponents = myComponents; } + @Override public void writeToXml(XmlSerializer serializer) throws IOException { final int NS = mSetClasses != null ? mSetClasses.length : 0; serializer.attribute(null, "name", mShortActivity); @@ -7792,8 +7803,7 @@ class PackageManagerService extends IPackageManager.Stub { this.pkgFlags = pkgFlags & ( ApplicationInfo.FLAG_SYSTEM | ApplicationInfo.FLAG_FORWARD_LOCK | - ApplicationInfo.FLAG_EXTERNAL_STORAGE | - ApplicationInfo.FLAG_NEVER_ENCRYPT); + ApplicationInfo.FLAG_EXTERNAL_STORAGE); } } @@ -7937,7 +7947,7 @@ class PackageManagerService extends IPackageManager.Stub { } public void copyFrom(PackageSetting base) { - super.copyFrom((PackageSettingBase) base); + super.copyFrom(base); userId = base.userId; sharedUser = base.sharedUser; @@ -8750,7 +8760,7 @@ class PackageManagerService extends IPackageManager.Stub { sb.setLength(0); sb.append(ai.packageName); sb.append(" "); - sb.append((int)ai.uid); + sb.append(ai.uid); sb.append(isDebug ? " 1 " : " 0 "); sb.append(dataPath); sb.append("\n"); |