summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/content/pm/IPackageInstallerSession.aidl3
-rw-r--r--core/java/android/content/pm/PackageInstaller.java237
2 files changed, 3 insertions, 237 deletions
diff --git a/core/java/android/content/pm/IPackageInstallerSession.aidl b/core/java/android/content/pm/IPackageInstallerSession.aidl
index 0b16852246f8..2a3fac341e24 100644
--- a/core/java/android/content/pm/IPackageInstallerSession.aidl
+++ b/core/java/android/content/pm/IPackageInstallerSession.aidl
@@ -32,7 +32,6 @@ interface IPackageInstallerSession {
void removeSplit(String splitName);
void close();
- void commit(in IntentSender statusReceiver, boolean forTransferred);
- void transfer(in String packageName);
+ void commit(in IntentSender statusReceiver);
void abandon();
}
diff --git a/core/java/android/content/pm/PackageInstaller.java b/core/java/android/content/pm/PackageInstaller.java
index f4fdcaa44836..c3ebf554ea8c 100644
--- a/core/java/android/content/pm/PackageInstaller.java
+++ b/core/java/android/content/pm/PackageInstaller.java
@@ -38,7 +38,6 @@ import android.os.Message;
import android.os.Parcel;
import android.os.ParcelFileDescriptor;
import android.os.Parcelable;
-import android.os.ParcelableException;
import android.os.RemoteException;
import android.os.SystemProperties;
import android.system.ErrnoException;
@@ -794,7 +793,7 @@ public class PackageInstaller {
* @throws IOException if trouble opening the file for writing, such as
* lack of disk space or unavailable media.
* @throws SecurityException if called after the session has been
- * sealed or abandoned
+ * committed or abandoned.
*/
public @NonNull OutputStream openWrite(@NonNull String name, long offsetBytes,
long lengthBytes) throws IOException {
@@ -919,68 +918,7 @@ public class PackageInstaller {
*/
public void commit(@NonNull IntentSender statusReceiver) {
try {
- mSession.commit(statusReceiver, false);
- } catch (RemoteException e) {
- throw e.rethrowFromSystemServer();
- }
- }
-
- /**
- * Attempt to commit a session that has been {@link #transfer(String) transferred}.
- *
- * <p>If the device reboots before the session has been finalized, you may commit the
- * session again.
- *
- * <p>The caller of this method is responsible to ensure the safety of the session. As the
- * session was created by another - usually less trusted - app, it is paramount that before
- * committing <u>all</u> public and system {@link SessionInfo properties of the session}
- * and <u>all</u> {@link #openRead(String) APKs} are verified by the caller. It might happen
- * that new properties are added to the session with a new API revision. In this case the
- * callers need to be updated.
- *
- * @param statusReceiver Callbacks called when the state of the session changes.
- *
- * @hide
- */
- @SystemApi
- @RequiresPermission(android.Manifest.permission.INSTALL_PACKAGES)
- public void commitTransferred(@NonNull IntentSender statusReceiver) {
- try {
- mSession.commit(statusReceiver, true);
- } catch (RemoteException e) {
- throw e.rethrowFromSystemServer();
- }
- }
-
- /**
- * Transfer the session to a new owner.
- * <p>
- * Only sessions that update the installing app can be transferred.
- * <p>
- * After the transfer to a package with a different uid all method calls on the session
- * will cause {@link SecurityException}s.
- * <p>
- * Once this method is called, the session is sealed and no additional mutations beside
- * committing it may be performed on the session.
- *
- * @param packageName The package of the new owner. Needs to hold the INSTALL_PACKAGES
- * permission.
- *
- * @throws PackageManager.NameNotFoundException if the new owner could not be found.
- * @throws SecurityException if called after the session has been committed or abandoned.
- * @throws SecurityException if the session does not update the original installer
- * @throws SecurityException if streams opened through
- * {@link #openWrite(String, long, long) are still open.
- */
- public void transfer(@NonNull String packageName)
- throws PackageManager.NameNotFoundException {
- Preconditions.checkNotNull(packageName);
-
- try {
- mSession.transfer(packageName);
- } catch (ParcelableException e) {
- e.maybeRethrow(PackageManager.NameNotFoundException.class);
- throw new RuntimeException(e);
+ mSession.commit(statusReceiver);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
@@ -1103,26 +1041,6 @@ public class PackageInstaller {
}
/**
- * Check if there are hidden options set.
- *
- * <p>Hidden options are those options that cannot be verified via public or system-api
- * methods on {@link SessionInfo}.
- *
- * @return {@code true} if any hidden option is set.
- *
- * @hide
- */
- public boolean areHiddenOptionsSet() {
- return (installFlags & (PackageManager.INSTALL_ALLOW_DOWNGRADE
- | PackageManager.INSTALL_DONT_KILL_APP
- | PackageManager.INSTALL_INSTANT_APP
- | PackageManager.INSTALL_FULL_APP
- | PackageManager.INSTALL_VIRTUAL_PRELOAD
- | PackageManager.INSTALL_ALLOCATE_AGGRESSIVE)) != installFlags
- || abiOverride != null || volumeUuid != null;
- }
-
- /**
* Provide value of {@link PackageInfo#installLocation}, which may be used
* to determine where the app will be staged. Defaults to
* {@link PackageInfo#INSTALL_LOCATION_INTERNAL_ONLY}.
@@ -1382,19 +1300,6 @@ public class PackageInstaller {
public CharSequence appLabel;
/** {@hide} */
- public int installLocation;
- /** {@hide} */
- public Uri originatingUri;
- /** {@hide} */
- public int originatingUid;
- /** {@hide} */
- public Uri referrerUri;
- /** {@hide} */
- public String[] grantedRuntimePermissions;
- /** {@hide} */
- public int installFlags;
-
- /** {@hide} */
public SessionInfo() {
}
@@ -1413,13 +1318,6 @@ public class PackageInstaller {
appPackageName = source.readString();
appIcon = source.readParcelable(null);
appLabel = source.readString();
-
- installLocation = source.readInt();
- originatingUri = source.readParcelable(null);
- originatingUid = source.readInt();
- referrerUri = source.readParcelable(null);
- grantedRuntimePermissions = source.readStringArray();
- installFlags = source.readInt();
}
/**
@@ -1543,130 +1441,6 @@ public class PackageInstaller {
return intent;
}
- /**
- * Get the mode of the session as set in the constructor of the {@link SessionParams}.
- *
- * @return One of {@link SessionParams#MODE_FULL_INSTALL}
- * or {@link SessionParams#MODE_INHERIT_EXISTING}
- */
- public int getMode() {
- return mode;
- }
-
- /**
- * Get the value set in {@link SessionParams#setInstallLocation(int)}.
- */
- public int getInstallLocation() {
- return installLocation;
- }
-
- /**
- * Get the value as set in {@link SessionParams#setSize(long)}.
- *
- * <p>The value is a hint and does not have to match the actual size.
- */
- public long getSize() {
- return sizeBytes;
- }
-
- /**
- * Get the value set in {@link SessionParams#setOriginatingUri(Uri)}.
- */
- public @Nullable Uri getOriginatingUri() {
- return originatingUri;
- }
-
- /**
- * Get the value set in {@link SessionParams#setOriginatingUid(int)}.
- */
- public int getOriginatingUid() {
- return originatingUid;
- }
-
- /**
- * Get the value set in {@link SessionParams#setReferrerUri(Uri)}
- */
- public @Nullable Uri getReferrerUri() {
- return referrerUri;
- }
-
- /**
- * Get the value set in {@link SessionParams#setGrantedRuntimePermissions(String[])}.
- *
- * @hide
- */
- @SystemApi
- public @Nullable String[] getGrantedRuntimePermissions() {
- return grantedRuntimePermissions;
- }
-
- /**
- * Get the value set in {@link SessionParams#setAllowDowngrade(boolean)}.
- *
- * @hide
- */
- @SystemApi
- public boolean getAllowDowngrade() {
- return (installFlags & PackageManager.INSTALL_ALLOW_DOWNGRADE) != 0;
- }
-
- /**
- * Get the value set in {@link SessionParams#setDontKillApp(boolean)}.
- *
- * @hide
- */
- @SystemApi
- public boolean getDontKillApp() {
- return (installFlags & PackageManager.INSTALL_DONT_KILL_APP) != 0;
- }
-
- /**
- * If {@link SessionParams#setInstallAsInstantApp(boolean)} was called with {@code true},
- * return true. If it was called with {@code false} or if it was not called return false.
- *
- * @hide
- *
- * @see #getInstallAsFullApp
- */
- @SystemApi
- public boolean getInstallAsInstantApp(boolean isInstantApp) {
- return (installFlags & PackageManager.INSTALL_INSTANT_APP) != 0;
- }
-
- /**
- * If {@link SessionParams#setInstallAsInstantApp(boolean)} was called with {@code false},
- * return true. If it was called with {@code true} or if it was not called return false.
- *
- * @hide
- *
- * @see #getInstallAsInstantApp
- */
- @SystemApi
- public boolean getInstallAsFullApp(boolean isInstantApp) {
- return (installFlags & PackageManager.INSTALL_FULL_APP) != 0;
- }
-
- /**
- * Get if {@link SessionParams#setInstallAsVirtualPreload()} was called.
- *
- * @hide
- */
- @SystemApi
- public boolean getInstallAsVirtualPreload() {
- return (installFlags & PackageManager.INSTALL_VIRTUAL_PRELOAD) != 0;
- }
-
- /**
- * Get the value set in {@link SessionParams#setAllocateAggressive(boolean)}.
- *
- * @hide
- */
- @SystemApi
- public boolean getAllocateAggressive() {
- return (installFlags & PackageManager.INSTALL_ALLOCATE_AGGRESSIVE) != 0;
- }
-
-
/** {@hide} */
@Deprecated
public @Nullable Intent getDetailsIntent() {
@@ -1693,13 +1467,6 @@ public class PackageInstaller {
dest.writeString(appPackageName);
dest.writeParcelable(appIcon, flags);
dest.writeString(appLabel != null ? appLabel.toString() : null);
-
- dest.writeInt(installLocation);
- dest.writeParcelable(originatingUri, flags);
- dest.writeInt(originatingUid);
- dest.writeParcelable(referrerUri, flags);
- dest.writeStringArray(grantedRuntimePermissions);
- dest.writeInt(installFlags);
}
public static final Parcelable.Creator<SessionInfo>